
MCP Server ODBC via PyODBC

2025.04.21
0
Python数据库管理数据库查询数据库
OpenLinkSoftware_mcp-pyodbc-server 是一个轻量级的 MCP(Model Context Protocol)服务器,专为 ODBC 设计,基于 FastAPI 和 pyodbc 构建。该服务器兼容 Virtuoso DBMS 以及其他支持 ODBC 驱动的数据库管理系统后端。
View on GitHub
Overview
基本能力
产品定位
OpenLinkSoftware_mcp-pyodbc-server 是一个轻量级的 MCP(Model Context Protocol)服务器,专为 ODBC 设计,基于 FastAPI 和 pyodbc 构建。该服务器兼容 Virtuoso DBMS 以及其他支持 ODBC 驱动的数据库管理系统后端。
核心功能
- 获取模式:从连接的数据库中获取并列出所有模式名称。
- 获取表:检索特定模式或所有模式的表信息。
- 描述表:生成表结构的详细描述,包括列名、数据类型、可为空属性、主键和外键。
- 搜索表:基于名称子字符串过滤和检索表。
- 执行存储过程:在 Virtuoso 的情况下,执行存储过程并检索结果。
- 执行查询:
- JSONL 结果格式:优化结构化响应。
- Markdown 表格格式:适合报告和可视化。
适用场景
- 数据库管理和查询
- 数据库模式探索和表结构分析
- 数据库查询结果的格式化和可视化
工具列表
工具名称 | 描述 |
---|---|
podbc_get_schemas | 列出数据库管理系统可访问的所有模式名称。 |
podbc_get_tables | 列出与选定数据库模式关联的表。 |
podbc_describe_table | 提供与指定数据库模式关联的表的描述。 |
podbc_filter_table_names | 基于子字符串模式列出与选定数据库模式关联的表。 |
podbc_query_database | 执行 SQL 查询并以 JSONL 格式返回结果。 |
podbc_execute_query | 执行 SQL 查询并以 JSONL 格式返回结果。 |
podbc_execute_query_md | 执行 SQL 查询并以 Markdown 表格格式返回结果。 |
podbc_spasql_query | 执行 SPASQL 查询并返回结果。 |
podbc_sparql_query | 执行 SPARQL 查询并返回结果。 |
podbc_virtuoso_support_ai | 与 Virtuoso 支持助手/代理交互。 |
常见问题解答
- 安装问题:确保已安装 uv 和 unixODBC 运行时环境。
- 配置问题:检查 ODBC DSN 设置是否正确。
- 调试问题:使用 MCP Inspector 进行服务器交互调试。
使用教程
使用依赖
-
安装 uv:
bash pip install uv
或使用 Homebrew:bash brew install uv
-
检查 unixODBC 运行时环境:
bash odbcinst -j
-
列出可用的数据源名称:
bash odbcinst -q -s
-
配置 ODBC DSN: 在
~/.odbc.ini
中配置目标数据库的 ODBC 数据源名称。
安装教程
-
克隆仓库:
bash git clone https://github.com/OpenLinkSoftware/mcp-pyodbc-server.git cd mcp-pyodbc-server
-
更新环境变量: 在
.env
文件中覆盖默认值以匹配您的偏好。
调试方式
-
安装 MCP Inspector:
bash npm install -g @modelcontextprotocol/inspector
-
启动 inspector:
bash npx @modelcontextprotocol/inspector uv --directory /path/to/mcp-pyodbc-server run mcp-pyodbc-server
访问提供的 URL 以调试服务器交互。