项目简介
本项目 'mcp-server-poc' 是一个 Model Context Protocol (MCP) 服务器的 Proof-of-Concept (POC) 实现。它演示了如何构建一个 MCP 服务器,为支持 MCP 标准的 AI 助手(如 Cursor IDE)提供自定义工具和资源,扩展 AI 助手的能力。
主要功能点
- 文档检索工具 (get_docs): 允许 AI 助手检索 LangChain, LlamaIndex, 和 OpenAI 的官方文档,帮助开发者快速查找技术文档。
- Web 抓取工具 (crawl_web): 提供网页抓取能力,允许 AI 助手获取指定 URL 的网页内容,用于信息整合或作为上下文信息。
- 集成 Google Serper API: 使用 Google Serper API 作为文档检索工具的底层搜索引擎,保证搜索结果的相关性和时效性。
- 标准 MCP 服务器实现: 遵循 MCP 协议,可以通过 JSON-RPC 与 MCP 客户端通信,提供工具注册和执行能力。
- Stdio 传输: 使用标准输入输出 (stdio) 作为默认的传输协议,方便集成到各种支持 MCP 客户端的应用中。
安装步骤
-
克隆仓库:
git clone https://github.com/TarcisioPhilips/mcp-server-poc.git cd mcp-server-poc -
创建并激活虚拟环境:
# 创建 Python 3.11 虚拟环境 python -m venv venv # 激活虚拟环境 (Windows) .\venv\Scripts\Activate.ps1 # 激活虚拟环境 (macOS/Linux) source venv/bin/activate -
安装依赖包:
pip install -r requirements.txt -
配置环境变量: 在项目根目录下创建 '.env' 文件,并添加 Serper API 密钥:
SERPER_API_KEY=YOUR_SERPER_API_KEY请替换 'YOUR_SERPER_API_KEY' 为你自己的 Serper API 密钥。
服务器配置
MCP 客户端(例如 Cursor IDE)需要配置 MCP 服务器的启动命令才能连接。以下是 'mcp.json' 配置文件示例,用于配置 'mcp-server' 服务器:
{ "mcpServers": { "mcp-server": { "command": "python", "args": [ "ABSOLUTE/PATH/TO/main.py" ] } } }
- 'command': 启动 MCP 服务器的命令,这里使用 'python' 解释器。
- 'args': 传递给 'command' 的参数,这里指定了 'main.py' 脚本的绝对路径 'ABSOLUTE/PATH/TO/main.py'。请将 'ABSOLUTE/PATH/TO/main.py' 替换为你的 'main.py' 文件的实际绝对路径。
- Windows 路径示例: 'C:\Users\username\path\to\main.py' (注意使用双反斜杠)
- macOS/Linux 路径示例: '/Users/username/path/to/main.py'
将以上配置添加到 MCP 客户端的配置文件中(例如 Cursor IDE 的 '~/.cursor/mcp.json' 或 'C:\Users<username>.cursor\mcp.json'),并重启客户端即可连接到 MCP 服务器。
基本使用方法
-
启动 MCP 服务器: 在项目根目录下运行命令:
python main.py服务器将会在后台运行,等待 MCP 客户端连接。
-
在 MCP 客户端中使用工具: 以 Cursor IDE 为例,在编辑器中你可以通过 '@' 符号触发工具调用。例如,要使用 'get_docs' 工具搜索 LangChain 文档,可以输入类似以下内容:
@get_docs(query="Chroma DB", library="langchain")MCP 客户端会将这个请求发送到 MCP 服务器,服务器执行 'get_docs' 工具,并将结果返回给客户端,最终显示在编辑器中。你可以根据 'get_docs' 和 'crawl_web' 工具的描述,在 MCP 客户端中灵活调用这些工具,增强 AI 助手的功能。
信息
分类
网页与API