tsurugi-mcp-server
The tsurugi-mcp-server is a high-performance server software built in Java, supporting microservices architecture. It is designed for scalability and flexibility, enabling developers to quickly build applications. It particularly excels in features that aid in API management and data storage optimization.
GitHub Stars
8
User Rating
Not Rated
Favorites
0
Views
33
Forks
0
Issues
0
README
tsurugi-mcp-server
Model Context Protocol server to access Tsurugi.
Limitations
- Tsurugi 1.5.0 or later.
- Java21 or later.
Components
Tools
listTableNames- list table names.
getTableMetadata- get table metadata (table schema).
- parameter
tableName- table name (string, required)
query- execute SQL (select).
- parameter
sql- SQL (string, required)transaction_type-OCC,LTX,RTX. (string, default:RTX)cursor- To continue the previous query. (string)
- If there is a continuation,
nextCursoris returned.
update- execute SQL (insert, update, delete).
- parameter
sql- SQL (string, required)transaction_type-OCC,LTX. (string, default:OCC)write_preserve- write preserve table names. (string, required whentransaction_typeisLTX)
executeDdl- execute DDL (create, drop)
- parameter
sql- SQL (string, required)transaction_type-OCC,LTX. (string, default:OCC)
Resources
- table metadata
Prompts
tableList-prompt- Prompt to display the list of tables.
tableMetadata-prompt- Prompt to display the table metadata.
query-prompt- Prompt to display the table data.
Configuration
Usage with Claude Desktop
First, download the tsurugi-mcp-server jar file from release page.
To use this server with the Claude Desktop, add the following configuration to the "mcpServers" section of your claude_desktop_config.json:
{
"mcpServers": {
"tsurugidb": {
"command": "java",
"args": [
"-jar",
"/path/to/tsurugi-mcp-server-all.jar",
"-c", "tcp://localhost:12345",
"--credentials", "/path/to/credential-file"
]
}
}
}
command- If the
javacommand is not included in the PATH, specify the full path. (e.g.,"C:/Program Files/Java/jdk-21/bin/java")
- If the
args- Specify the jar file by full path.
-cor--connection- the endpoint URL to connect Tsurugi. (required)- Specify one of the following credentials.
"--user", "user"and"--password", "password""--auth-token", "auth token""--credentials", "/path/to/credential-file""--no-auth"- If none of these are specified, authentication will be performed in the following order of priority.
- If
TSURUGI_AUTH_TOKENis specified inenv, authenticate using it as the auth token. - If a default credential file (
USER_HOME/.tsurugidb/credentials.json) exists, use it for authentication. - Authenticate without authentication.
- If
- If you want to limit the tools used, add
--enable-tools. (e.g., for read-only access:"--enable-tools", "listTableNames, getTableMetadata, query") - If resources is not used, add
"--resource", "false". - If prompts is not used, add
"--prompt", "false".
How to build
cd tsurugi-mcp-server
./gradlew shadowJar
ls build/libs/
How to test
cd tsurugi-mcp-server
./gradlew test -Pdbtest.endpoint=tcp://localhost:12345 \
-Pdbtest.user=user \
-Pdbtest.password=password \
-Pdbtest.auth-token=token \
-Pdbtest.credentials=/path/to/credential-file