使用说明
MCP教程
概述
该存储库演示了一个围绕FastMCP构建的小型MCP(模型上下文协议)生态系统。它包含一个示例MCP服务器公开工具(arXiv获取、抽象检索、保存标记)和示例客户端:一个简单的FastMCP客户端和一个Google Gemini集成代理。该代码旨在作为本地运行和测试MCP服务器、将其与LLM(Gemini)集成以及使用MCP检查器进行交互式探索的实用教程和参考。
要点:
- 服务器使用
fastmcp库来定义和公开工具。 - 客户端示例展示了如何以编程方式调用工具,以及如何将LLM(Gemini)附加到MCP工具。
- 包括用于容器化测试的Docker就绪服务器和代理示例。
快速启动
-
克隆和安装依赖关系:
git clone https://github.com/kmkarakaya/mcp_tutorial.git; cd mcp_tutorial pip install -r requirements.txt -
启动MCP服务器(本地):
python 4_mcp_server.py服务器公开工具并监听客户端连接(FastMCP提供的默认行为)。
用法和示例
-
使用官方MCP Inspector检查可用工具(需要安装Node.js和npm或Corepack):
npx @modelcontextprotocol/inspector注:
npx附带npm(或在较新的Node版本上使用Corepack)。从以下位置安装Node.jshttps://nodejs.org/如果你没有node/npm在您的系统上。 -
运行示例客户端以编程方式调用工具:
python 5_mcp_client.py -
启动一个基于Gemini的交互式代理,该代理可以调用MCP工具(需要Google GenAI凭据):
python 6_mcp_gemini_agent.py使用Gemini代理时,请按照以下步骤设置环境变量
google-genai文档(例如。,GOOGLE_API_KEY或等效物)。
码头工人
包括Dockerfiles/examples。构建/运行示例:
docker build -t mcp_server .
docker run -p 8000:8000 mcp_server
服务器中实现的工具
fetch_arxiv_papers(topic: str, number_of_papers: int = 3)--检索arXiv最近发表的某个主题的论文。get_arxiv_abstract(arxiv_id: str)--检索arXiv论文摘要。save_md_to_file(text: str, filename: str)--将给定的markdown保存到./reports.
依赖项
看 requirements.txt.重要包裹:
- fastmcp
- 谷歌genai(用于双子座集成)
- uvicorn(如果您通过ASGI运行服务器)
备注
- 服务器文件(
4_mcp_server.py)调用函数时打印有用消息,并包含mcp.run()入口点。 - 使用MCP检查器验证工具元数据,并尝试交互式调用。
Murat Karakaya Akademi YouTube频道上提供了完整的视频教程和存储库演练(实时录制):https://youtube.com/live/c7yl0GS2mJQ?feature=share
作者
致谢
基于MCP的工作和实例;感谢Anthropic、OpenAI和MCP生态系统的贡献者。
