# Practera教育分析服务器
## 基本信息
- Slug: `intersective-practera-mcp-server`
- Source: modelscope
- Publisher: @intersective/practera-mcp-server
- Categories: education-and-learning-tools / databases
- Hosted: No
- License: MIT License
- Source URL: https://www.modelscope.cn/mcp/servers/@intersective/practera-mcp-server
## 简介
允许AI模型查询Practera的GraphQL API以获取学习数据的集成服务器，使大型语言模型（LLMs）能够分析和操作教育项目和评估。
## 安装提示

```bash
npm install
```

## MCP Server 详情

# Practera MCP 服务器

一个提供访问 Practera 的 GraphQL API 的 MCP（Model Context Protocol）服务器，允许 AI 模型查询 Practera 学习数据。

## 为什么选择 Practera MCP？

通过这个 MCP 服务器，您可以使用 LLMs 来分析 Practera 项目和评估。目前，这仅对学习设计师（作者用户）开放。

以下是一些如何使用此 MCP 服务器的示例：
- 分析项目的结构，并寻找可以扩展或压缩的方法。
- 针对不同年级或不同受众重新组织项目。
- 评估项目中的评估内容，并寻找改进方法。
- 生成项目蓝图和模板。
- 生成评估和问题
- 创建项目的通用卡版本，或从其他 LMS 数据文件导入项目。

## 路线图

[ ] 支持用于生成 LLM 报告的指标 API
[ ] 支持 OAuth 2.1 安全访问
[ ] 支持动态创建评估、里程碑、活动、任务
[ ] 支持生成媒体资源
[ ] 根据项目上下文动态选择资源/工具/提示


## 功能

- 使用 Server-Sent Events (SSE) 进行 MCP 传输
- AWS Lambda 部署支持
- 与 Practera API 的 GraphQL 集成
- 区域特定端点
- API 密钥认证
- 支持 OAuth 2.1 安全访问

## 前提条件

- Node.js 18+
- npm
- AWS 账户（用于部署）
- Practera API 密钥
- OAuth 客户端凭据（用于 OAuth 认证）

## 安装

1. 克隆此仓库
2. 安装依赖项：
   ```
   npm install
   ```

## 本地开发

1. 在开发模式下启动服务器：
   ```
   npm run dev
   ```
2. 服务器将在 `http://localhost:3000/sse` 可用
3. OAuth 端点将在 `http://localhost:3000/oauth/*` 可用

## 构建

要构建项目以进行部署：

```
npm run build
```


## 部署到 AWS Lambda

1. 确保已安装并配置了 [AWS CLI](https://aws.amazon.com/cli/)。
2. 设置您的 OAuth 配置参数：
   ```
   export PRACTERA_CLIENT_ID=your_client_id
   export REDIRECT_URI=your_redirect_uri
   export ISSUER_URL=your_issuer_url
   export BASE_URL=your_base_url
   ```
3. 使用 Serverless Framework 部署：
   ```
   npm run deploy -- --param="practeraClientId=$PRACTERA_CLIENT_ID" --param="redirectUri=$REDIRECT_URI" --param="issuerUrl=$ISSUER_URL" --param="baseUrl=$BASE_URL"
   ```

## 认证方法

### API 密钥认证

对于简单的集成，您可以通过提供以下参数来使用 API 密钥认证：
- 在每个工具调用中提供 `apikey` 参数
- 提供 `region` 参数以指定 Practera 区域

### OAuth 2.1 认证（即将推出）

该服务器还支持 OAuth 2.1 以实现安全认证流程：

1. 将用户重定向到 `/oauth/authorize` 进行授权
2. 在 `/oauth/token` 交换授权码以获取访问令牌
3. 使用承载令牌访问 MCP 服务器端点
4. 如有必要，在 `/oauth/revoke` 吊销令牌

## 可用的 MCP 工具

此服务器公开了以下 MCP 工具：

- `mcp_practera_get_project` - 获取关于 Practera 项目的详细信息
- `mcp_practera_get_assessment` - 获取关于 Practera 评估的详细信息

## MCP 客户端配置

当从 MCP 客户端连接到此 MCP 服务器时，您需要提供以下内容：

1. 用于 Practera 身份验证的 API 密钥（如果使用 API 密钥认证）
2. Practera API 的区域（usa, aus, euk 或 p2-stage）
3. OAuth 配置（如果使用 OAuth 认证）

### Claude 桌面配置示例

```json
{
  "practera": {
    "url": "https://your-lambda-url.lambda-url.us-east-1.on.aws/mcp"
  }
}
```


## 示例用法（与 Claude 一起使用）

您可以要求 Claude 使用 MCP 工具与 Practera 数据进行交互：

```
Please use the MCP tools to get information about project 123 from Practera.
```


Claude 将会使用 `mcp_practera_get_project` 工具，并从配置中提供 API 密钥和区域。

## 许可证

MIT 许可证

