A lightweight Java-based MCP (Model Context Protocol) server for JDBC built with Quakrus. This server is compatible with Virtuoso DBMS and any other DBMS backend that has a JDBC driver.
mcp-jdbc-server is an MCP project maintained in the openlinksoftware/mcp-jdbc-server repository. The maintainer describes its purpose as “A lightweight Java-based MCP (Model Context Protocol) server for JDBC built with Quakrus. This server is compatible with Virtuoso DBMS and any other DBMS backend…”. Read the project documentation for the complete scope.
The project provides a local client configuration using java. Follow the repository’s build and installation steps before copying it, and replace example paths with the paths on your own computer.
The example declares jdbc.url, jdbc.user, jdbc.password, jdbc.api_key. Secret-looking values have been replaced with placeholders. Required and optional labels are shown only when the documentation states them.
Project documentation · Repository · Discovery listing. This profile records the public documentation checked on 2026-10-08.
Check the linked publisher documentation and your connected client's tool list. Names and availability can vary with the server version and account permissions.
| Tool | What it does |
|---|---|
| user | string, optional): Database username. Defaults to "demo". |
| password | string, optional): Database password. Defaults to "demo". |
| url | string, optional): JDBC URL connection string. |
| schema | string, required): The database schema name containing the table. |
| table | string, required): The name of the table to describe. |
| query | string, required): The SPARQL query string. |
| max_rows | number, optional): Maximum number of rows to return. Defaults to 20. |
| timeout | number, optional): Query timeout in milliseconds. Defaults to 30000 (i.e., 30 seconds). |
| format | string, optional): Desired result format. Defaults to 'json'. |
| prompt | string, required): The prompt text for the AI function. |
| api_key | string, optional): API key for the AI service. Defaults to "none". |
| jdbc_get_schemas | List database schemas accessible to connected database management system (DBMS). |
| jdbc_get_tables | List tables associated with a selected database schema. |
| jdbc_describe_table | Provide the description of a table associated with a designated database schema. This includes information about column names, data types, nulls handling… |
| jdbc_filter_table_names | List tables, based on a substring pattern from the q input field, associated with a selected database schema. |
| jdbc_query_database | Execute a SQL query and return results in JSONL format. |
| jdbc_execute_query | Execute a SQL query and return results in JSONL format. |
| jdbc_execute_query_md | Execute a SQL query and return results in Markdown table format. |
| jdbc_spasql_query | _A Virtuoso-specific feature!_ Execute a SPASQL query and return results. |
| jdbc_sparql_query | _A Virtuoso-specific feature!_ Execute a SPARQL query and return results. |
| jdbc_virtuoso_support_ai | _A Virtuoso-specific feature!_ Interact with LLMs through the Virtuoso Support Assistant/Agent. |
{
"mcpServers": {
"my_database": {
"command": "java",
"args": [
"-jar",
"/path/to/mcp-jdbc-server/MCPServer-1.0.0-runner.jar"
],
"env": {
"jdbc.url": "jdbc:virtuoso://localhost:1111",
"jdbc.user": "username",
"jdbc.password": "YOUR_jdbc.password",
"jdbc.api_key": "YOUR_jdbc.api_key"
}
}
}
}From the project documentation. Replace placeholders and example paths before connecting.
| Variable | Description | Required |
|---|---|---|
| jdbc.url | Declared in the maintainer’s client configuration. | Check documentation |
| jdbc.user | Declared in the maintainer’s client configuration. | Check documentation |
| jdbc.password | Declared in the maintainer’s client configuration. | Check documentation |
| jdbc.api_key | Declared in the maintainer’s client configuration. | Check documentation |
Inspect PostgreSQL schemas and run read-only queries with the archived MCP reference server. Review its maintenance status before choosing it.
Connect the Notion MCP server to search workspace content and work with pages and databases through Notion’s hosted OAuth service.
Use the Supabase MCP server to inspect database schemas, query project data and retrieve docs through a project-scoped connection.
Query, modify and analyse local SQLite databases in conversation — the fastest way to chat with a data file.
Metabase ships its own MCP endpoint — search your BI content, build and run queries, and save questions and dashboards without leaving the chat.
Official MongoDB server covering data, schemas and Atlas management — from find queries to spinning up clusters.