hoonzinope
服务介绍
pymcp
pymcp 是一个基于 FastMCP 的 Python 项目,提供了与 MySQL 数据库交互的工具。该项目支持服务器和客户端之间的通信,并通过各种工具来查询和分析数据。
项目结构
pymcp/
├── client.py # 客户端代码
├── main.py # 服务器运行代码
├── src/
│ ├── env.py # 本地环境设置
│ ├── env_dev.py # 开发环境设置
│ ├── mcp_instance.py # MCP 实例初始化
│ ├── mysql_tool.py # MySQL 相关工具定义
├── pyproject.toml # 项目元数据及依赖
├── requirements.txt # 依赖列表
└── README.md # 项目说明
安装与运行
1. 安装依赖
需要 Python 3.13 或更高版本。要安装依赖,请执行以下命令:
bash
pip install -r requirements.txt
2. 运行服务器
要启动服务器,请运行 main.py:
bash
python main.py
服务器默认在 0.0.0.0:8080 上运行。
3. 运行客户端
要启动客户端,请运行 client.py:
bash
python client.py
客户端可以与服务器通信以执行 MySQL 查询或查看工具列表。
环境配置
根据不同的环境,MySQL 配置会有所不同:
- 本地环境:
src/env.py - 开发环境:
src/env_dev.py
可以通过 APP_ENV 环境变量来设置环境,默认值为 local。
bash
export APP_ENV=dev # 设置开发环境
提供的工具
服务器提供的工具有:
-
describe_tools
描述可用工具列表及其用法。 -
query_mysql(sql: str)
执行给定的 SQL 查询并返回结果。
示例:query_mysql("SELECT * FROM users LIMIT 10;")
主要文件说明
main.py
这是启动服务器的入口点。它初始化 MCP 实例,注册工具后启动服务器。
client.py
这是与服务器交互的客户端代码。它可以连接到服务器并调用工具。
src/mysql_tool.py
该文件定义了与 MySQL 相关的工具。通过如 query_mysql 等工具可以执行 SQL 查询。
src/env.py 及 src/env_dev.py
这些是包含 MySQL 连接设置等环境变量的文件。根据环境加载适当的设置。