Integrates with Trino and Iceberg for advanced 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.
A C# MCP server for interacting with databases via ADO.NET, compatible with Virtuoso.
A bridge to the Drug Gene Interaction Database (DGIdb) API, enabling AI clients to query drug-gene interaction data.
A server for secure interaction with Microsoft SQL Server databases using environment variables for configuration.
An MCP server for NocoDB, the open-source Airtable alternative. It allows interaction with your NocoDB instance via API.
Introspect and query your apps deployed to Convex.
A server for Retrieval Augmented Generation (RAG), providing AI clients access to a private knowledge base built from user documents.
Access and manage ActiveCampaign data through the CData JDBC Driver.
Query a hybrid graph (Neo4j) and vector (Qdrant) database for powerful semantic and graph-based document retrieval.
Query and manage data through CData Connect Cloud, providing a unified interface to various data sources.
Connect to a Hologres instance, get table metadata, query and analyze data.