Practera教育分析服务器

@intersective/practera-mcp-server
0 Stars 405 次浏览 intersective 更新于 2026-08-23

允许AI模型查询Practera的GraphQL API以获取学习数据的集成服务器,使大型语言模型(LLMs)能够分析和操作教育项目和评估。

该服务暂未提供标准配置,请参考 README 手动接入

服务介绍

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
  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 桌面配置示例

{
  "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 许可证

相关 MCP 服务