MCP Server ODBC via SQLAlchemy

MCP Server ODBC via SQLAlchemy

site icon
2025.04.10 8
Python数据库管理数据库查询ODBC 连接SQLAlchemy数据库
mcp-sqlalchemy-server 是一个轻量级的 MCP(Model Context Protocol)服务器,通过 SQLAlchemy 提供 ODBC 连接功能。它基于 FastAPI、pyodbc 和 SQLAlchemy 构建,兼容 Virtuoso DBMS 以及其他支持 SQLAlchemy 提供程序的数据库管理系统。该服务器主要用于数据库管理和查询,支持多种数据库操作和查询格式。
View on GitHub

Overview

基本能力

产品定位

mcp-sqlalchemy-server 是一个轻量级的 MCP 服务器,专注于通过 SQLAlchemy 提供 ODBC 连接功能,支持多种数据库操作和查询。

核心功能

  • 获取模式(Schemas):从连接的数据库中获取并列出所有模式名称。
  • 获取表(Tables):检索特定模式或所有模式中的表信息。
  • 描述表(Describe Table):生成表的详细描述,包括列名、数据类型、可为空属性、主键和外键。
  • 搜索表(Search Tables):基于名称子字符串过滤和检索表。
  • 执行存储过程(Execute Stored Procedures):在 Virtuoso 中执行存储过程并检索结果。
  • 执行查询(Execute Queries)
  • JSONL 结果格式:优化结构化响应。
  • Markdown 表格格式:适合报告和可视化。

适用场景

  • 数据库管理和查询
  • 数据库模式和数据表的结构分析
  • 数据库查询结果的格式化和可视化
  • Virtuoso DBMS 的特定功能(如 SPARQL 查询)

工具列表

工具名称 描述
podbc_get_schemas 列出数据库管理系统可访问的所有模式名称。
podbc_get_tables 列出指定模式中的表信息。
podbc_describe_table 提供指定表的详细描述,包括列名、数据类型等。
podbc_filter_table_names 基于子字符串模式过滤并列出表信息。
podbc_query_database 执行 SQL 查询并返回 JSON 格式结果。
podbc_execute_query 执行 SQL 查询并返回 JSONL 格式结果。
podbc_execute_query_md 执行 SQL 查询并返回 Markdown 表格格式结果。
podbc_spasql_query 执行 SPASQL 查询并返回结果(Virtuoso 特定功能)。
podbc_sparql_query 执行 SPARQL 查询并返回结果(Virtuoso 特定功能)。
podbc_virtuoso_support_ai 与 Virtuoso 支持助手交互(Virtuoso 特定功能)。

常见问题解答

  1. 如何安装 MCP Inspector 进行故障排除? bash npm install -g @modelcontextprotocol/inspector

  2. 如何启动 MCP Inspector? bash npx @modelcontextprotocol/inspector uv --directory /path/to/mcp-sqlalchemy-server run mcp-sqlalchemy-server

使用教程

使用依赖

  1. 安装 uv bash pip install uv 或使用 Homebrew: bash brew install uv

  2. 检查 unixODBC 运行时环境 bash odbcinst -j odbcinst -q -s

  3. 配置 ODBC DSN~/.odbc.ini 中配置 ODBC 数据源名称(DSN)。例如 Virtuoso DBMS: [VOS] Description = OpenLink Virtuoso Driver = /path/to/virtodbcu_r.so Database = Demo Address = localhost:1111 WideAsUTF16 = Yes

  4. SQLAlchemy URL 绑定 使用以下格式: virtuoso+pyodbc://user:password@VOS

安装教程

  1. 克隆仓库 bash git clone https://github.com/OpenLinkSoftware/mcp-sqlalchemy-server.git cd mcp-sqlalchemy-server

  2. 配置环境变量 更新 .env 文件以匹配您的偏好: ODBC_DSN=VOS ODBC_USER=dba ODBC_PASSWORD=dba API_KEY=xxx

调试方式

  1. 安装 MCP Inspector bash npm install -g @modelcontextprotocol/inspector

  2. 启动 MCP Inspector bash npx @modelcontextprotocol/inspector uv --directory /path/to/mcp-sqlalchemy-server run mcp-sqlalchemy-server

  3. 访问提供的 URL 进行服务器交互故障排除

许可证

该项目遵循 MIT 开源许可条款,请参阅 MIT 了解完整条款。