关于 ODBC MCP Server
ODBC MCP Server 通过 ODBC 连接数据库,让 Claude Desktop 等 MCP 客户端查询和分析数据。它支持多个连接,并提供只读保护及连接、表结构和 SQL 查询工具。
主要功能
- 01连接兼容 ODBC 的数据库
- 02配置多个数据库连接
- 03只读保护,避免修改数据
- 04查看连接、DSN、表和表结构
- 05执行 SQL 查询并返回结果
- 06通过配置文件或环境变量配置
适用场景
- 01列出数据库表并查看表结构
- 02查询客户、订单等业务数据
- 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 .
配置
可通过以下方式配置服务:
- 专用配置文件
- 环境变量
- 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 中配置服务:
-
打开或创建
claude_desktop_config.json:- Windows:
%APPDATA%\Claude\claude_desktop_config.json - macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
- Windows:
-
添加 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 配合使用
- 按照上述说明,在 Claude Desktop 的配置文件中配置服务
- 重启 Claude Desktop
- ODBC 工具将自动显示在 MCP 工具列表中
可用的 MCP 工具
ODBC MCP 服务提供以下工具:
- list-connections:列出所有已配置的数据库连接
- list-available-dsns:列出系统上所有可用的 DSN
- test-connection:测试数据库连接并返回相关信息
- list-tables:列出数据库中的所有表
- get-table-schema:获取表的架构信息
- execute-query:执行 SQL 查询并返回结果
示例查询
连接服务后,可在 Claude Desktop 中尝试以下提示词:
- “显示数据库中的所有表”
- “Customer 表的架构是什么?”
- “查询前 10 位客户”
- “找出过去 30 天内下的所有订单”
- “按地区分析销售数据并提供见解”
故障排除
连接问题
如果遇到连接问题:
- 确认 ODBC 驱动程序已正确安装
- 使用 ODBC 数据源管理器测试 DSN
- 检查配置文件中的连接参数
- 查看 Claude Desktop 日志中的详细错误信息
ProvideX 特有问题
针对 Sage 100/ProvideX:
- 使用最简连接配置(DSN、用户名、密码、公司)
- 确认 Company 参数正确
- 使用专用的 ProvideX 配置模板
- 如果遇到
Driver not capable错误,请检查是否在连接时设置了自动提交
缺少表
如果未显示表:
- 确认数据库账户拥有相应权限
- 检查公司代码是否正确(适用于 Sage 100)
- 尝试使用完全限定的表名(schema.table)
许可证
MIT License - Copyright (c) 2024
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。