使用说明
PyMcp
使用Python FastMCP库的MCP服务器示例。
存储库结构
McpDocs/
├── src/ # Source code
│ └── sample_mcp_server/ # Sample MCP server
│ ├── server.py # Main server implementation
│ ├── Dockerfile # Docker configuration
│ ├── tests/ # Unit tests
│ └── README.md # Server documentation
├── .github/ # GitHub workflows
│ └── workflows/
│ └── ci.yml # CI/CD pipeline
├── pyproject.toml # Project configuration
└── README.md # This file
使用UV
这 uv 包管理器是一个强大的替代方案 pip。我强烈建议更好地管理依赖关系和虚拟环境。
安装
https://docs.astral.sh/uv/getting-started/installation/
curl -LsSf https://astral.sh/uv/install.sh | sh
这可能需要注销并重新登录。
正在更新:
uv self update
程序包管理
安装软件包:
uv pip install ruff
或者,您可以编辑 pyproject.toml 文件,在相应的部分添加依赖项,然后使用以下命令安装它们:
uv sync
这 sync 在将项目克隆到其他地方时(在新机器上创建虚拟环境后),命令也很有用。
虚拟环境
创建默认虚拟环境(.venv 子目录):
uv venv
使用其他名称创建虚拟环境:
uv venv some_name
在Linux上激活虚拟环境:
source .venv/bin/activate
在Windows上激活虚拟环境:
.venv\Scripts\activate
要停用环境,请执行以下操作:
deactivate
从以下方面激活环境 Visual Studio Code:
- 确保虚拟环境存在
- 打开包含Python项目的文件夹
- 按F1
- 类型
Python: Select Interpreter - 选择提及项目名称的条目。路径应该是这样的
.venv/bin/python
预装Docker镜像 uv: https://github.com/astral-sh/uv/pkgs/container/uv
Ruff语法检查器
除了标准的Python Visual studio Code扩展之外,我强烈建议安装Ruff,因为它处理源代码的速度非常快。
不管怎样,两者之间可能会有一些冲突。我调整了 .vscode/settings.json 以尽量减少这些问题。
手动检查规则 ruff:
ruff check src/
自动修复ruff的问题:
ruff check src/ --fix
手动检查规则 mypy:
mypy src/
运行项目
运行示例服务器
# from the project root folder
python -m src.sample_mcp_server.server
运行测试
# from the project root folder
pytest src/sample_mcp_server/tests/ -v
使用Docker构建
# from the project root folder
docker build -f src/sample_mcp_server/Dockerfile -t sample-mcp-server .
docker run -i sample-mcp-server
