项目简介

本项目提供一个 Web 图形界面(GUI),帮助用户批量生成基于 Python 的 MCP 服务器脚本。这些生成的脚本专门用于连接 MySQL 数据库,并通过 MCP 协议向 LLM 客户端提供数据库查询能力。每个生成的脚本同时支持 'stdio'(本地管道)和 'SSE/HTTP'(远程访问)两种传输方式。

主要功能点

  • 生成 MCP 服务器脚本: 通过简单的 Web 表单配置,自动生成可直接运行的 Python MCP 服务器文件。
  • MySQL 集成: 生成的服务器能够连接指定的 MySQL 数据库,执行查询并将结果返回给 LLM。
  • 工具定义: 支持将特定的 SQL 查询定义为 MCP 工具,LLM 可以通过调用这些工具来获取数据。
  • 灵活的传输支持: 生成的服务器脚本同时支持 stdio(适合本地或容器内调用)和 SSE/HTTP(适合远程访问或 MCP Inspector)两种 MCP 标准传输协议。
  • 自定义格式化: 可以编写简单的 Python 代码片段来定制 SQL 查询结果的输出格式,以适应 LLM 的需求。

安装步骤

  1. 确保你的系统已安装 Python 3.8 或更高版本。
  2. 克隆或下载本项目代码。
  3. 打开终端或命令行,进入项目根目录。
  4. 创建并激活 Python 虚拟环境(推荐):
    • 'python -m venv .venv'
    • Windows: '.venv\Scripts\activate'
    • macOS / Linux / WSL: 'source .venv/bin/activate'
  5. 安装项目依赖:
    • 'pip install -r requirements.txt'

服务器配置(供 MCP 客户端使用)

你生成的 MCP 服务器脚本需要被 MCP 客户端(如 MCP Inspector 或其他 LLM 应用)调用和连接。客户端通常需要配置服务器的名称、传输方式以及如何启动服务器。以下是根据本项目生成的脚本特点,为 MCP 客户端提供的典型配置信息:

  • Server Name: 服务器名称,通常是您生成的文件名(不带 '.py' 后缀),例如:'my_server'。
  • Transport: 传输协议,可选值为 'stdio' 或 'sse'。
  • Command: 启动服务器的可执行命令,固定为 'python'。
  • Arguments: 传递给 Command 的参数列表,一个包含字符串的数组。
    • 如果选择 'stdio' 传输:Arguments 为 '["你的服务器文件名.py"]',例如 '["my_server.py"]'。
    • 如果选择 'sse' 传输:Arguments 为 '["你的服务器文件名.py", "--http"]',例如 '["my_server.py", "--http"]'。
  • URL (仅 SSE 传输需要): 服务器监听的地址。
    • 默认情况下,使用 '--http' 启动的服务器会监听 'http://0.0.0.0:9000',提供 SSE 服务的路径是 '/sse'。
    • 默认 URL 为 'http://127.0.0.1:9000/sse'。请注意,如果在服务器启动时设置了 'MCP_PORT' 环境变量,端口会相应改变。

基本使用方法

  1. 启动生成器:
    • 在项目根目录激活虚拟环境后,运行 'python app.py'。
  2. 访问 Web 界面:
    • 在浏览器中打开 'http://127.0.0.1:5000'。
  3. 生成基础服务器脚本:
    • 在 Web 界面上输入你的 MySQL 连接信息和想要生成的 Python 文件名(例如 'my_server.py')。
    • 点击“生成”。这将在项目根目录生成一个包含基本结构和 'check_database' 工具的服务器脚本。
  4. 添加自定义工具:
    • 在 Web 界面上导航到“新增工具函数”页面。
    • 选择你刚刚生成的服务器文件。
    • 填写工具名、说明、SQL 语句(使用 '%s' 作为参数占位符)和可选的输出格式代码。
    • 点击“保存”,工具将被添加到你的服务器脚本中。可以重复此步骤添加更多工具。
  5. 运行生成的服务器:
    • 打开一个新的终端或命令行窗口,激活虚拟环境。
    • 进入生成脚本所在的目录。
    • 运行脚本:
      • Stdio 模式(默认):'python 你的服务器文件名.py'
      • SSE/HTTP 模式:'python 你的服务器文件名.py --http' (默认监听 '0.0.0.0:9000')
  6. 连接 MCP 客户端:
    • 使用 MCP Inspector 或其他支持 MCP 协议的客户端。
    • 根据第 4 步的说明,配置客户端以连接你正在运行的服务器(选择对应的传输方式和提供正确的启动命令/URL)。
    • 连接成功后,你定义的工具将显示在客户端中,你可以调用它们来测试功能。

信息

分类

开发者工具