mcpField
O
ODBC MCP Server

ODBC MCP Server

本地服务
github.com/tylerstoltz数据库684 周前更新

关于 ODBC MCP Server

ODBC MCP Server 通过 ODBC 连接数据库,让 Claude Desktop 等 MCP 客户端查询和分析数据。它支持多个连接,并提供只读保护及连接、表结构和 SQL 查询工具。

主要功能

  1. 01连接兼容 ODBC 的数据库
  2. 02配置多个数据库连接
  3. 03只读保护,避免修改数据
  4. 04查看连接、DSN、表和表结构
  5. 05执行 SQL 查询并返回结果
  6. 06通过配置文件或环境变量配置

适用场景

  1. 01列出数据库表并查看表结构
  2. 02查询客户、订单等业务数据
  3. 03分析数据库数据并生成洞察

MCP 相关

该 MCP 服务向客户端提供列出连接和 DSN、测试连接、列出表、获取表结构及执行 SQL 查询的工具。

配置

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

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

ODBC MCP 服务

一个 MCP(Model Context Protocol)服务,可让 Claude Desktop 等大模型工具通过 ODBC 连接查询数据库。此服务可让 Claude 和其他 MCP 客户端访问、分析数据库数据并从中提取见解,同时提供安全保障并确保只读。

功能

  • 连接任何兼容 ODBC 的数据库
  • 支持多个数据库连接
  • 可通过配置文件或 Claude Desktop 设置灵活配置
  • 只读安全保障,防止修改数据
  • 使用 UV 包管理器轻松安装
  • 提供详细的错误报告和日志记录

前提条件

  • Python 3.10 或更高版本
  • UV 包管理器
  • 系统中已安装数据库对应的 ODBC 驱动程序
  • 对于 Sage 100 Advanced:提供 ProvideX ODBC 驱动程序

安装

git clone https://github.com/tylerstoltz/mcp-odbc.git
cd mcp-odbc
uv venv
.venv\Scripts\activate # On Mac / Linux: source .venv/bin/activate (untested)
uv pip install -e .

配置

可通过以下方式配置服务:

  1. 专用配置文件
  2. 环境变量
  3. Claude Desktop 配置
常规配置设置

创建包含数据库连接详细信息的配置文件(.ini):

[SERVER]
default_connection = my_database
max_rows = 1000
timeout = 30

[my_database]
dsn = MyDatabaseDSN
username = your_username
password = your_password
readonly = true
SQLite 配置

通过 ODBC 连接 SQLite 数据库:

[SERVER]
default_connection = sqlite_db
max_rows = 1000
timeout = 30

[sqlite_db]
dsn = SQLite_DSN_Name
readonly = true
Sage 100 ProvideX 配置

ProvideX 需要特殊配置以确保兼容性。为获得最佳效果,请使用以下最简配置:

[SERVER]
default_connection = sage100
max_rows = 1000
timeout = 60

[sage100]
dsn = YOUR_PROVIDEX_DSN
username = your_username
password = your_password
company = YOUR_COMPANY_CODE
readonly = true

ProvideX 重要说明:

  • 使用最简配置——添加额外参数可能导致连接问题
  • 为确保安全,始终设置 readonly = true
  • Sage 100 连接必须设置 company 参数
  • 建立连接后,请避免更改连接属性
Claude Desktop 集成

在 Claude Desktop 中配置服务:

  1. 打开或创建 claude_desktop_config.json:

    • Windows:%APPDATA%\Claude\claude_desktop_config.json
    • macOS:~/Library/Application Support/Claude/claude_desktop_config.json
  2. 添加 MCP 服务配置:

{
  "mcpServers": {
    "odbc": {
      "command": "uv",
      "args": [
        "--directory",
        "C:\\path\\to\\mcp-odbc",
        "run",
        "odbc-mcp-server",
        "--config", 
        "C:\\path\\to\\mcp-odbc\\config\\your_config.ini"
      ]
    }
  }
}

使用方法

手动启动服务
# Start with default configuration
odbc-mcp-server

# Start with a specific config file
odbc-mcp-server --config path/to/config.ini
与 Claude Desktop 配合使用
  1. 按照上述说明,在 Claude Desktop 的配置文件中配置服务
  2. 重启 Claude Desktop
  3. ODBC 工具将自动显示在 MCP 工具列表中
可用的 MCP 工具

ODBC MCP 服务提供以下工具:

  1. list-connections:列出所有已配置的数据库连接
  2. list-available-dsns:列出系统上所有可用的 DSN
  3. test-connection:测试数据库连接并返回相关信息
  4. list-tables:列出数据库中的所有表
  5. get-table-schema:获取表的架构信息
  6. execute-query:执行 SQL 查询并返回结果

示例查询

连接服务后,可在 Claude Desktop 中尝试以下提示词:

  • “显示数据库中的所有表”
  • “Customer 表的架构是什么?”
  • “查询前 10 位客户”
  • “找出过去 30 天内下的所有订单”
  • “按地区分析销售数据并提供见解”

故障排除

连接问题

如果遇到连接问题:

  1. 确认 ODBC 驱动程序已正确安装
  2. 使用 ODBC 数据源管理器测试 DSN
  3. 检查配置文件中的连接参数
  4. 查看 Claude Desktop 日志中的详细错误信息
ProvideX 特有问题

针对 Sage 100/ProvideX:

  1. 使用最简连接配置(DSN、用户名、密码、公司)
  2. 确认 Company 参数正确
  3. 使用专用的 ProvideX 配置模板
  4. 如果遇到 Driver not capable 错误,请检查是否在连接时设置了自动提交
缺少表

如果未显示表:

  1. 确认数据库账户拥有相应权限
  2. 检查公司代码是否正确(适用于 Sage 100)
  3. 尝试使用完全限定的表名(schema.table)

许可证

MIT License - Copyright (c) 2024

评论

支持 Markdown

第一次接触 MCP?

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

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