MCP协议学习平台

一个用于学习和探索模型上下文协议(MCP)的开发环境,包含基于FastMCP的Python服务器实现和基于Node.js的JavaScript客户端实现。

  • by tederer
  • JavaScript
  • 本地部署
  • 更新于
在 GitHub 查看 tederer/mcpPlayground

使用说明

mcp游乐场

这个游乐场是为了学习和发现模型上下文协议(MCP)而创建的。它包含:

先决条件

使用游乐场需要以下软件。

安装

要安装游乐场,请执行以下步骤。

  1. 打开终端并导航到要安装游乐场的文件夹。
  2. 执行 git clone https://github.com/tederer/mcpPlayground.git 将项目克隆到名为的子文件夹中 mcpPlayground.
  3. 执行 cd mcpPlayground.
  4. 执行 python3 -m venv ./virtualPythonEnv 创建虚拟python环境。
  5. 执行 . ./virtualPythonEnv/bin/activate 激活虚拟python环境。
  6. 执行 pip install fastmcp 安装FastMCP。
  7. 执行 deactivate 停用虚拟python环境。
  8. 执行 npm install 安装所有JavaScript依赖项。

启动MCP服务器

执行 startServer.sh 启动本地MCP服务器侦听http://127.0.0.1:9000.其源代码位于“server”目录中。

启动MCP客户端

执行 startClient.sh 启动MCP客户端。它连接到本地MCP服务器,并演示如何使用工具、获取资源和下载提示。执行 startClient.sh debug 激活调试日志级别以获取更详细的日志消息。

连接到另一个MCP服务器

MCP客户端支持以下可选环境变量,以更改MCP服务器的URL并添加个人访问令牌。

环境变量 描述 默认值
MCP_SERVER_URL MCP服务器的URL。 http://127.0.0.1:9000/mcp
MCP_PERSONAL_ACCESS_TOKEN 要使用的个人访问令牌。 空

注意:不要使用类似的东西 MCP_PERSONAL_ACCESS_TOKEN=123456abcd startClient.sh 因为每个命令都存储在命令历史中,其他人可以访问您的个人访问令牌。

Microsoft Learn MCP服务器(https://learn.microsoft.com/api/mcp)是一个很好的学习候选者,因为它不需要API密钥。

使用sendInitToMcpServer.sh执行快速连接测试

脚本 sendInitToMcpServer.sh 可用于检查MCP服务器在收到请求时是否响应。它向MCP服务器发送“初始化”请求,并将响应打印到STDOUT。它使用http://localhost:9000/mcp默认情况下为服务器URL,但可以通过设置MCP_server_URL环境变量来覆盖。

参考文献