MCP服务器实现

一个用于学习和演示的简单MCP服务器实现,提供加法工具和客户端调用示例。

  • by hickmank
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 hickmank/ghosttown_mcp

使用说明

鬼城MCP

该存储库旨在作为一个学习平台,用于设置一个非常简单、非常稀疏的模型上下文协议(MCP)服务器。这里的代码主要是作为创作者的教育资源。

该存储库演示了Python中最小的MCP服务器实现,公开了一个 add 工具,以及一个简单的客户端来调用它。

1.目录结构

ghosttown_mcp/
├── .gitignore
├── README.md
├── Dockerfile
├── pyproject.toml
│
├── src/
│   └── ghosttown_mcp/
│       ├── __init__.py
│       ├── tools/
│           ├── __init__.py
│       │   └── addition.py
│       └── server/
│           └── jsonrpc
|               ├── __init__.py
│               └── server.py
│           └── fastmcp
|               ├── __init__.py
│               └── server.py
│
├── examples/
│   |── sdk_client.py
│   └── raw_client.py
│
└── tests/
    └── test_add.py

2.在python虚拟环境中安装

(mcp_venv)>> pip install flit
(mcp_venv)>> cd <ghosttown_mcp_rootdir>
(mcp_venv)>> flit install --symlink --deps=all

3.构建容器并在本地启动JSON-RPC MCP服务器

>> docker build -f Dockerfile.jsonrpc -t ghosttown_mcp_jsonrpc .
>> docker run --rm -p 4000:4000 ghosttown_mcp_jsonrpc

4.运行JSON-RPC客户端查询示例

>> python examples/raw_client.py

5.构建容器并在本地启动FastMCP MCP MCP服务器

>> docker build -f Dockerfile.fastmcp -t ghosttown_mcp_fastmcp .
>> docker run --rm -p 4001:4001 ghosttown_mcp_fastmcp

6.运行示例MCP SDK客户端查询

>> python examples/sdk_client.py