使用说明
基于Educhain的MCP服务器(通过谷歌Gemini)
本项目设计了一个MCP服务器,可以处理各种功能,如:生成MCQ、抽认卡、课程计划等。,
结构
Claude Desktop(Front end) <-> MCP Server <-> LLM (google Gemini)
安装和初始化
推荐Python版本:3.10
步骤0:克隆此存储库
git clone Anudeep-CodeSpace/educhain_mcp_server.git
cd educhain_mcp_server
第一步:安装uv
pip install uv # universal
brew install uv # mac os only
步骤2:初始化项目
uv init # initialize an already existing project
步骤3:添加所需的包
# They contain all the required sub -packages in them
uv add "educhain" "mcp[cli]"
步骤4:添加您的Google gemini api密钥
# inside .env file
GOOGLE_API_KEY=<Your Google api key without quotes>
步骤5:调试MCP服务器
uv run mcp dev main.py
它产生了一个 令牌化代理服务器 在
http://localhost:6274/?PROXY_API_TOKEN=<proxy token>
粘贴它并在浏览器中导航到链接。 单击“连接”,您可以在该站点中调试您的工具、资源和提示。
步骤6:安装Claude Desktop应用程序
安装 克劳德桌面应用程序 并使用您的帐户登录(可以是新帐户)。
步骤7:将MCP服务器添加到Claude Desktop应用程序
在git repo文件夹中运行
# Adds the MCP Server to Claude Desktop client
uv run mcp install main.py
之后你的 claude_desktop_config json 应该看起来像这样:
{
"mcpServers": {
"Educhain - MCP server": {
"command": "absolute/path/to/uv",
"args": [
"run",
"--with",
"mcp[cli]",
"mcp",
"run",
"absolute/path/to/main/main.py"
]
}
}
}
最后一步:检查日志中是否有任何差异
所有日志位于:
%APPDATA%\\Claude\\logs\\mcp.log # in windows
~/Library/Logs/Claude/mcp.log # in macOS
元数据
获取信息(about://info)资源列出了此服务器提供的所有工具和资源
本项目的主要特征
模块化: 将服务器初始化(server.py)、路由处理(handler.py)和主入口点(main.py)分开,使代码库干净、可扩展且易于维护。
清除架构定义: 在模式目录中使用Pydantic模型。它确保了强大的数据验证、清晰的API合同以及用于请求和响应的自文档代码。
依赖注入: 将mcp服务器实例传递给处理程序函数(handle_resources(mcp))是一种很好的做法。它避免了循环依赖和全局状态问题。
装饰品的使用: @mcp.resource和@mcp.tool装饰器提供了一种干净且声明性的方式来定义服务器的功能。
已知问题
Claude Desktop客户端无法直接访问资源模板(Beta阶段)
例如,Claude Desktop客户端无法访问 发电租赁计划 资源(uri = lessonplan://{topic})不能直接使用,因为它在 测试版 stage不支持动态资源uri!!!
所以 Generate a lesson plan to teach algebra 无法调用 发电租赁计划 工具!
需要外部LLM来生成内容
克劳德是一个强大的llm,不能直接根据我们的工具和资源生成内容!(因此我使用Gemini)
主要贡献者
我自己(Anudeep-CodeSpace),Chatgpt,困惑AI,双子座(免费法学硕士)
备注
Node.js(LTS) 调试需要版本 不建议使用pyenv(那浪费了我很多时间😭)