Java based Model Context Procotol (MCP) Server for JDBC

Java based Model Context Procotol (MCP) Server for JDBC

site icon
2025.05.09 0
Java数据库管理数据查询Virtuoso DBMS数据库
OpenLinkSoftware_mcp-jdbc-server 是一个基于 Java 的轻量级 MCP(Model Context Protocol)服务器,专为 JDBC 设计。该服务器兼容 Virtuoso DBMS 以及其他具有 JDBC 驱动的 DBMS 后端。其主要功能包括获取数据库模式、表信息、描述表结构、执行查询和存储过程等。
View on GitHub

Overview

基本能力

产品定位

OpenLinkSoftware_mcp-jdbc-server 是一个轻量级的 MCP 服务器,用于通过 JDBC 连接和管理数据库,特别优化了对 Virtuoso DBMS 的支持。

核心功能

  • 获取模式:从连接的数据库中获取并列出所有模式名称。
  • 获取表信息:检索特定模式或所有模式中的表信息。
  • 描述表结构:生成表的详细描述,包括列名、数据类型、是否可为空、主键和外键等。
  • 搜索表:基于名称子字符串过滤和检索表。
  • 执行存储过程:执行存储过程并检索结果(Virtuoso 特有功能)。
  • 执行查询:支持 JSONL 和 Markdown 表格格式的结果返回。

适用场景

  • 数据库管理和查询
  • 数据库模式探索和结构分析
  • 数据可视化和报告生成
  • Virtuoso DBMS 的特定功能使用

工具列表

  • jdbc_get_schemas:列出数据库中的所有模式。
  • jdbc_get_tables:列出特定模式中的表。
  • jdbc_describe_table:描述表的结构。
  • jdbc_filter_table_names:基于子字符串过滤表名。
  • jdbc_query_database:执行 SQL 查询并返回 JSON 格式结果。
  • jdbc_execute_query_md:执行 SQL 查询并返回 Markdown 表格格式结果。
  • jdbc_spasql_query:执行 SPASQL 查询(Virtuoso 特有)。
  • jdbc_sparql_query:执行 SPARQL 查询(Virtuoso 特有)。
  • jdbc_virtuoso_support_ai:与 Virtuoso 的 AI 支持助手交互(Virtuoso 特有)。

常见问题解答

  • 如何连接不同的 JDBC 驱动?需通过 $CLASSPATH 注册驱动 JAR 文件。
  • 如何调试 MCP 服务器?使用 MCP Inspector 进行交互式调试。

使用教程

使用依赖

  • Java 21 或以上版本。

安装教程

  1. 克隆仓库:
git clone https://github.com/OpenLinkSoftware/mcp-jdbc-server.git
cd mcp-jdbc-server
  1. 更新 .env 文件以匹配你的数据库配置。

调试方式

  1. 安装 MCP Inspector:
npm install -g @modelcontextprotocol/inspector
  1. 启动 Inspector:
npx @modelcontextprotocol/inspector java -jar /path/to/mcp-jdbc-server/MCPServer-1.0.0-runner.jar
  1. 访问返回的 URL 进行调试。

许可证

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