# Tsurugi Mcp Server

> MCP server to access Tsurugi

- **Type:** MCP server
- **Install:** `agentstack add mcp-project-tsurugi-tsurugi-mcp-server`
- **Verified:** Yes — security-reviewed for prompt injection and unsafe behavior
- **Seller:** [project-tsurugi](https://agentstack.voostack.com/s/project-tsurugi)
- **Installs:** 0
- **Category:** [Integrations](https://agentstack.voostack.com/c/integrations)
- **Latest version:** 0.1.0
- **License:** Apache-2.0
- **Upstream author:** [project-tsurugi](https://github.com/project-tsurugi)
- **Source:** https://github.com/project-tsurugi/tsurugi-mcp-server

## Install

```sh
agentstack add mcp-project-tsurugi-tsurugi-mcp-server
```

Requires the [AgentStack CLI](https://agentstack.voostack.com/docs/cli). Works with Claude Code, Cursor, and any MCP-compatible agent.

## About

# tsurugi-mcp-server

[Model Context Protocol](https://github.com/modelcontextprotocol) server to  access [Tsurugi](https://github.com/project-tsurugi/tsurugidb).

## Limitations

- Tsurugi 1.11.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, `nextCursor` is 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 when `transaction_type` is `LTX`)
- `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](https://github.com/project-tsurugi/tsurugi-mcp-server/releases).

To use this server with the [Claude Desktop](https://claude.ai/download), add the following configuration to the "mcpServers" section of your `claude_desktop_config.json`:

```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 `java` command is not included in the PATH, specify the full path. (e.g., `"C:/Program Files/Java/jdk-21/bin/java"`)
- `args`
  - Specify the jar file by full path.
  - `-c` or `--connection` - the endpoint URL to connect Tsurugi. (required)
  - `--db-timeout` - default timeout (in seconds) for accessing Tsurugi. If set to 0, there is no timeout.
  - 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.
      1. If `TSURUGI_AUTH_TOKEN` is specified in `env`, authenticate using it as the auth token.
      2. If a default credential file (`USER_HOME/.tsurugidb/credentials.json`) exists, use it for authentication.
      3. Authenticate without authentication.
  - 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

```bash
cd tsurugi-mcp-server
./gradlew shadowJar
ls build/libs/
```

## How to test

```bash
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
```

## License

[Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0)

## Source & license

This open-source MCP server is cataloged on AgentStack and links to its original source — we do not rehost the code.

- **Author:** [project-tsurugi](https://github.com/project-tsurugi)
- **Source:** [project-tsurugi/tsurugi-mcp-server](https://github.com/project-tsurugi/tsurugi-mcp-server)
- **License:** Apache-2.0

Install and usage instructions live in the source repository linked above.

## Pricing

- **Free** — Free

## Security capabilities

Automated source analysis of v0.1.0 — what this tool can access:

- **Network access:** no
- **Filesystem access:** no
- **Shell / process execution:** no
- **Environment & secrets:** no
- **Dynamic code execution:** no

*"Yes" means the capability is present in the source — more access means more to trust, not that it is unsafe.*


## Versions

- **0.1.0** — security scan: passed — Imported from the upstream source.

## Links

- Listing page: https://agentstack.voostack.com/l/mcp-project-tsurugi-tsurugi-mcp-server
- Seller: https://agentstack.voostack.com/s/project-tsurugi
- Browse the marketplace: https://agentstack.voostack.com/browse

---
Listed on AgentStack — the marketplace for AI agent skills and MCP servers. Every listing is security-reviewed. Creators keep 70%.
