码头化MCP服务器模板
此存储库为实现以下功能的Python服务器提供了一个可重用的模板 模型上下文协议(MCP),在Docker容器中运行,并利用Streamable HTTP进行实时通信。该模板基于模型上下文协议(MCP)的Python实现,可以轻松与大型语言模型(LLM)集成。
什么是MCP?
这 模型上下文协议(MCP) 允许您构建以安全、标准化的方式向LLM应用程序公开数据和功能的服务器。
此模板演示了在Docker容器中运行的生产就绪MCP服务器,该服务器利用无状态Streamable HTTP进行实时通信。
项目结构
dockerized-mcp-server-template/
├── src/
│ ├── Dockerfile
│ ├── requirements.txt
│ └── server.py
├── docker-compose.yml
└── README.md入门指南
使用Docker Compose构建和运行
docker-compose up --build服务器可在以下位置访问:
http://localhost:8080/mcp直接运行(无需Docker)
或者,您可以直接使用Python运行服务器。首先,安装依赖项:
pip install -r src/requirements.txt然后运行服务器:
python src/server.py服务器可在以下位置访问:
http://localhost:8080/mcp示例用法
该示例包括一个简单的MCP工具功能 add:
@mcp.tool()
def add(a: int, b: int) -> int:
"""Add two numbers"""
return a + b您可以通过MCP客户端请求调用此工具。
技术说明
此模板使用Streamable HTTP传输,该传输在Python SDK v1.8.0开始的模型上下文协议中可用(https://github.com/modelcontextprotocol/python-sdk).
为什么是流式HTTP?
Streamable HTTP通过启用无状态操作显著改进了之前的SSE传输,使MCP与无服务器架构和标准web基础设施兼容。这种方法消除了对持久连接的需求,从而提高了资源效率和成本效益,同时为开发人员提供了更简单的实现。其结果是,MCP服务器更易于部署,更具可扩展性,在不牺牲功能的情况下更节省资源。
