Skip to main content
Glama
tools.md5.46 kB
# MCP Tools Reference The server provides the following MCP tools for interacting with Trino: ## execute_query Execute a SQL query against Trino with full SQL support for complex analytical queries. **Sample Prompt:** > "How many customers do we have per region? Can you show them in descending order?" **Example:** ```json { "query": "SELECT region, COUNT(*) as customer_count FROM tpch.tiny.customer GROUP BY region ORDER BY customer_count DESC" } ``` **Response:** ```json { "columns": ["region", "customer_count"], "data": [ ["AFRICA", 5], ["AMERICA", 5], ["ASIA", 5], ["EUROPE", 5], ["MIDDLE EAST", 5] ] } ``` ## list_catalogs List all catalogs available in the Trino server, providing a comprehensive view of your data ecosystem. **Sample Prompt:** > "What databases do we have access to in our Trino environment?" **Example:** ```json {} ``` **Response:** ```json { "catalogs": ["tpch", "memory", "system", "jmx"] } ``` ## list_schemas List all schemas in a catalog, helping you navigate through the data hierarchy efficiently. **Sample Prompt:** > "What schemas or datasets are available in the tpch catalog?" **Example:** ```json { "catalog": "tpch" } ``` **Response:** ```json { "schemas": ["information_schema", "sf1", "sf100", "sf1000", "tiny"] } ``` ## list_tables List all tables in a schema, giving you visibility into available datasets. **Sample Prompt:** > "What tables are available in the tpch tiny schema? I need to know what data we can query." **Example:** ```json { "catalog": "tpch", "schema": "tiny" } ``` **Response:** ```json { "tables": ["customer", "lineitem", "nation", "orders", "part", "partsupp", "region", "supplier"] } ``` ## get_table_schema Get the schema of a table, understanding the structure of your data for better query planning. **Sample Prompt:** > "What columns are in the customer table? I need to know the data types and structure before writing my query." **Example:** ```json { "catalog": "tpch", "schema": "tiny", "table": "customer" } ``` **Response:** ```json { "columns": [ { "name": "custkey", "type": "bigint", "nullable": false }, { "name": "name", "type": "varchar", "nullable": false }, { "name": "address", "type": "varchar", "nullable": false }, { "name": "nationkey", "type": "bigint", "nullable": false }, { "name": "phone", "type": "varchar", "nullable": false }, { "name": "acctbal", "type": "double", "nullable": false }, { "name": "mktsegment", "type": "varchar", "nullable": false }, { "name": "comment", "type": "varchar", "nullable": false } ] } ``` ## explain_query Analyze Trino query execution plans without running expensive queries, showing distributed execution stages and resource estimates. **Sample Prompt:** > "Can you explain how this query will be executed? I want to understand the performance characteristics before running it on production data." **Example:** ```json { "query": "SELECT region, COUNT(*) as customer_count FROM tpch.tiny.customer GROUP BY region ORDER BY customer_count DESC", "format": "LOGICAL" } ``` **Response:** ```json { "execution_plan": [ { "stage": "Fragment 0 [SINGLE]", "operations": [ "Output[region, customer_count]", "Sort[customer_count DESC NULLS LAST]", "RemoteSource[sourceFragmentIds=[1]]" ] }, { "stage": "Fragment 1 [HASH]", "operations": [ "Aggregate[region, COUNT(*)]", "TableScan[tpch:customer]" ], "estimated_rows": 25, "estimated_cost": "cpu: 0.25, memory: 0.00, network: 0.05" } ] } ``` This information is invaluable for understanding the column names, data types, and nullability constraints before writing queries against the table. ## End-to-End Example Here's a complete interaction example showing how an AI assistant might use these tools to answer a business question: **User Query:** "Can you help me analyze our biggest customers? I want to know the top 5 customers with the highest account balances." **AI Assistant's workflow:** 1. First, discover available catalogs ``` > Using list_catalogs tool > Discovers tpch catalog ``` 2. Then, find available schemas ``` > Using list_schemas tool with catalog "tpch" > Discovers "tiny" schema ``` 3. Explore available tables ``` > Using list_tables tool with catalog "tpch" and schema "tiny" > Finds "customer" table ``` 4. Check the customer table schema ``` > Using get_table_schema tool > Discovers "custkey", "name", "acctbal" and other columns ``` 5. Finally, execute the query ``` > Using execute_query tool with: > "SELECT custkey, name, acctbal FROM tpch.tiny.customer ORDER BY acctbal DESC LIMIT 5" ``` 6. Returns the results to the user: ``` The top 5 customers with highest account balances are: 1. Customer #65 (Customer#000000065): $9,222.78 2. Customer #13 (Customer#000000013): $8,270.47 3. Customer #89 (Customer#000000089): $7,990.56 4. Customer #11 (Customer#000000011): $7,912.91 5. Customer #82 (Customer#000000082): $7,629.41 ``` This seamless workflow demonstrates how the MCP tools enable AI assistants to explore and query data in a conversational manner.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/tuannvm/mcp-trino'

If you have feedback or need assistance with the MCP directory API, please join our Discord server