Token导航 LogoToken导航TokenDH.com
from db logo
数据服务stdio官方级别未说明来源级核验

from db

MCP Server

一个基于FastAPI的MySQL数据库交互服务器和命令行聊天机器人,提供用户友好的数据库查询界面,无需直接SQL知识。

工具数

0

提示词数

0

GitHub Stars

0

资源数

0
数据分析命令行工具PythonAPI集成FastAPI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

ARehman-Nets

提供方

ARehman-Nets

最后核验

2026/5/17 20:20

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

python -m venv venv

详细介绍

MCP数据库服务器和聊天机器人

该项目提供了一个基于FastAPI的服务器,用于与MySQL数据库交互,以及一个简化的命令行聊天机器人来查询数据库。

项目理念

核心思想是提供一个用户友好的界面来访问和检索MySQL数据库中的数据,而不需要直接的SQL知识。FastAPI服务器提供了一个强大的API,聊天机器人充当客户端,将用户命令转换为API调用。

功能

FastAPI服务器(main.py, database.py)

FastAPI服务器为数据库操作提供RESTful API:

  • database.py:使用SQLAlchemy处理MySQL数据库连接,管理会话,检索表模式,列出表名,并执行原始SQL查询。
  • main.py:使用以下端点定义FastAPI应用程序:

- GET /tables:列出连接数据库中所有可用的表名。 - GET /tables/{table_name}/schema:返回指定表的架构(列名和类型)。 - POST /sql:允许执行原始SQL查询(主要用于高级/内部使用)。 - GET /query/{table_name}:主要数据检索端点。它支持: - 按列值过滤记录(例如。, status=active). - 限制结果数量(limit=X). - 抵消分页结果(offset=Y). - 订购结果(order_by=column DESC/ASC). - 选择特定列 (columns=col1,col2). - 筛选器的列名匹配不区分大小写。

聊天机器人(chatbot.py)

命令行聊天机器人充当FastAPI服务器的客户端,支持交互式数据库查询:

  • 简化交互聊天机器人完全基于显式命令运行,没有自然语言处理(NLP)或LLM集成。
  • 命令:

- help:显示所有可用命令及其用法的列表。 - list tables:显示数据库中的所有表名。 - list schemas:显示所有表名及其完整架构(列和类型)。 - get schema [table_name]:提供特定表的架构。 - query:数据检索的主要命令,提供两种模式: - 交互模式:打字 query 没有参数会启动一个引导过程来选择表、应用过滤器和选择特定列。它还允许切换表或退出查询会话。 - 直接命令模式:允许用户在一行中指定所有查询参数。支持灵活的列选择(例如。, query email,name user_table limit=3query user_table columns=email,name limit=3).

设置和运行

  1. 克隆存储库:
   git clone https://github.com/ARehman-Nets/mcp_server_from_db.git
   cd mcp_server_from_db
  1. 设置Python虚拟环境:
   python -m venv venv
   ./venv/Scripts/activate # On Windows
   # source venv/bin/activate # On Linux/macOS
  1. 再进行:
   pip install -r requirements.txt
  1. 配置环境变量:

- 创建一个 .env 使用MySQL数据库凭据在项目根目录中创建文件:

     DB_HOST=your_db_host
     DB_PORT=your_db_port
     DB_USER=your_db_user
     DB_PASSWORD=your_db_password
     DB_NAME=your_db_name

- 创建一个 .env.chatbot 项目根目录中具有FastAPI服务器URL的文件:

     MCP_SERVER_URL=http://localhost:8000
  1. 运行FastAPI服务器:
   uvicorn main:app --reload

服务器通常运行在 http://127.0.0.1:8000.

  1. 运行聊天机器人:
   python chatbot.py

然后,您可以使用以下命令 help, list tables, list schemas, get schema [table_name],以及 query 与您的数据库进行交互。

未来的增强功能

  • 重新集成LLM以进行自然语言查询,可能会使用更强大的工具调用框架。
  • 在FastAPI服务器中添加对更复杂的分析查询和报告功能的支持。
  • 通过适当的访问控制实现数据修改(INSERT、UPDATE、DELETE)功能。

目录标签

目录标签

数据分析命令行工具PythonAPI集成FastAPI数据库查询本地部署MySQLRESTfulAPI

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP