mcpField
F
fastmcp-sqltools

fastmcp-sqltools

本地服务
github.com/atarkowska数据库142 周前更新

关于 fastmcp-sqltools

fastmcp-sqltools 是一个用于访问 PostgreSQL、MySQL 和 SQLite 数据库的 FastMCP 服务。它支持查看表与架构、执行查询,并提供带安全检查的只读查询选项。

主要功能

  1. 01列出数据库表
  2. 02查看表架构
  3. 03执行 SQL 查询
  4. 04运行带安全检查的只读 SELECT 查询
  5. 05支持 PostgreSQL、MySQL 和 SQLite

适用场景

  1. 01检查可用的数据表及其架构
  2. 02通过 MCP 客户端执行数据库查询
  3. 03执行受安全检查保护的只读 SELECT 查询
  4. 04访问 PostgreSQL、MySQL 或 SQLite 数据库

MCP 相关

该服务向 MCP 客户端提供数据库表、架构和查询操作工具。它根据 DATABASE_URL 环境变量检测数据库类型。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"atarkowska-fastmcp-sqltools": {
"command": "uvx",
"args": [
"fastmcp-sqltools"
]
}
}
}
启动命令uvx fastmcp-sqltools

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
pypifastmcp-sqltools0.3.0

工具

4

收录的工具列表 · 更新于 2 周前

参数类型必填说明
schemaany否数据库架构名称(默认:None,使用数据库的默认架构)

详细介绍

FastMCP SQL Tools

mcp-name: io.github.atarkowska/fastmcp-sqltools

一个使用 FastMCP 构建的模型上下文协议(MCP)服务,提供 SQL 数据库访问能力,支持 PostgreSQL、MySQL 和 SQLite。

功能

  • list_tables:列出数据库中的所有表
  • get_table_schema:获取表的详细架构信息,包括列、类型、约束和索引
  • execute_query:执行任意 SQL 查询(INSERT、UPDATE、DELETE、DDL 等)
  • execute_safe_query:执行带有额外安全检查的只读 SELECT 查询

支持的数据库

  • PostgreSQL:通过 asyncpg 提供完整支持
  • MySQL:通过 aiomysql 提供完整支持
  • SQLite:通过 aiosqlite 提供完整支持

服务会根据 DATABASE_URL 环境变量自动检测数据库类型。

配置

将以下内容添加到你的 claude_desktop_config.json 中:

{
    "mcpServers": {
        "sql-mcp-tools": {
            "command": "uvx",
            "args": [
                "fastmcp-sqltools"
            ],
            "env": {
                "DATABASE_URL": "<your-database-url>"
            }
        }
    }
}
数据库 URL 格式

DATABASE_URL 应采用以下格式之一:

  • PostgreSQL:postgresql://user:password@host:port/database 或 postgres://user:password@host:port/database
  • MySQL:mysql://user:password@host:port/database
  • SQLite:sqlite:///path/to/database.db(绝对路径使用三个斜杠)

许可证

本项目采用 GNU Affero 通用公共许可证 v3.0(AGPL-3.0)授权。 详情请参阅 LICENSE 文件。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。