
Trino
STDIOMCP server for Trino and Iceberg data exploration, querying, and table maintenance
MCP server for Trino and Iceberg data exploration, querying, and table maintenance
The MCP Trino Server is a Model Context Protocol (MCP) server that provides seamless integration with Trino and Iceberg, enabling advanced data exploration, querying, and table maintenance capabilities through a standard interface.
To install MCP Trino Server for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @alaturqua/mcp-trino-python --client claude
The easiest way to get started is to use the included Docker Compose configuration to run Trino locally:
docker-compose up -d
This will start a Trino server on localhost:8080
. You can now proceed with configuring the MCP server.
For quick installation, you can add the following configuration to your VS Code settings. You can do this by pressing Ctrl + Shift + P
and typing Preferences: Open User Settings (JSON)
.
Optionally, you can add it to a file called .vscode/mcp.json
in your workspace. This will allow you to share the configuration with others.
Note that the
mcp
key is not needed in the.vscode/mcp.json
file.
{ "mcp": { "servers": { "trino": { "command": "docker", "args": ["run", "--rm", "ghcr.io/alaturqua/mcp-trino-python:latest"], "env": { "TRINO_HOST": "${input:trino_host}", "TRINO_PORT": "${input:trino_port}", "TRINO_USER": "${input:trino_user}", "TRINO_PASSWORD": "${input:trino_password}", "TRINO_HTTP_SCHEME": "${input:trino_http_scheme}", "TRINO_CATALOG": "${input:trino_catalog}", "TRINO_SCHEMA": "${input:trino_schema}" } } } } }
Add the following configuration to your Claude Desktop settings:
{ "mcpServers": { "trino": { "command": "python", "args": ["./src/server.py"], "env": { "TRINO_HOST": "your-trino-host", "TRINO_PORT": "8080", "TRINO_USER": "trino" } } } }
Variable | Description | Default |
---|---|---|
TRINO_HOST | Trino server hostname | localhost |
TRINO_PORT | Trino server port | 8080 |
TRINO_USER | Trino username | trino |
TRINO_CATALOG | Default catalog | None |
TRINO_SCHEMA | Default schema | None |
TRINO_HTTP_SCHEME | HTTP scheme (http/https) | http |
TRINO_PASSWORD | Trino password | None |
show_catalogs
show_schemas
catalog
: Catalog name (string, required)show_tables
catalog
: Catalog name (string, required)schema
: Schema name (string, required)describe_table
table
: Table name (string, required)catalog
: Catalog name (string, optional)schema
: Schema name (string, optional)execute_query
query
: SQL query to execute (string, required)show_catalog_tree
show_create_table
table
: Table name (string, required)catalog
: Catalog name (string, optional)schema
: Schema name (string, optional)show_create_view
view
: View name (string, required)catalog
: Catalog name (string, optional)schema
: Schema name (string, optional)show_stats
table
: Table name (string, required)catalog
: Catalog name (string, optional)schema
: Schema name (string, optional)optimize
table
: Table name (string, required)catalog
: Catalog name (string, optional)schema
: Schema name (string, optional)optimize_manifests
table
: Table name (string, required)catalog
: Catalog name (string, optional)schema
: Schema name (string, optional)expire_snapshots
table
: Table name (string, required)retention_threshold
: Age threshold (e.g., "7d") (string, optional)catalog
: Catalog name (string, optional)schema
: Schema name (string, optional)show_table_properties
table
: Table name (string, required)catalog
: Catalog name (string, optional)schema
: Schema name (string, optional)show_table_history
table
: Table name (string, required)catalog
: Catalog name (string, optional)schema
: Schema name (string, optional)show_metadata_log_entries
table
: Table name (string, required)catalog
: Catalog name (string, optional)schema
: Schema name (string, optional)show_snapshots
table
: Table name (string, required)catalog
: Catalog name (string, optional)schema
: Schema name (string, optional)show_manifests
table
: Table name (string, required)catalog
: Catalog name (string, optional)schema
: Schema name (string, optional)all_snapshots
: Include all snapshots (boolean, optional)show_partitions
table
: Table name (string, required)catalog
: Catalog name (string, optional)schema
: Schema name (string, optional)show_files
table
: Table name (string, required)catalog
: Catalog name (string, optional)schema
: Schema name (string, optional)show_entries
table
: Table name (string, required)catalog
: Catalog name (string, optional)schema
: Schema name (string, optional)all_snapshots
: Include all snapshots (boolean, optional)show_refs
table
: Table name (string, required)catalog
: Catalog name (string, optional)schema
: Schema name (string, optional)limit
: Maximum number of queries to return (number, optional)This project is licensed under the Apache 2.0 License. Please refer to the LICENSE file for the full terms.