LabscoMCP early access ↗
Dataring-engineeringMCP SERVER

Trino MCP Server in Python

List Trino tables and run SQL against them from an assistant.

by Dataring-engineering ↗Relational SQL DatabasesCommunity

LABSCO SUMMARY

Query the lakehouse without leaving the conversation.

Trino's point is that one query can span catalogs; putting it behind an assistant that can first see which tables exist means a question about data in two systems is answered in one place.

What it is

A small Python server over Trino's own DBAPI client. It publishes the catalog's tables as resources so the assistant can see what exists and read their contents, and adds one tool for executing SQL against the cluster.

What you get

  • The list of Trino tables, exposed as MCP resources
  • Table contents readable through those resources
  • A tool for executing arbitrary SQL queries against Trino

Requirements

Python 3.9+, the trino driver and the MCP library. Connection details come from the environment: TRINO_USER, TRINO_CATALOG and TRINO_SCHEMA are required, TRINO_HOST defaults to localhost and TRINO_PORT to 8080, and TRINO_PASSWORD is optional depending on how your cluster authenticates. The client runs it with uv --directory pointed at your clone of the repository, then run mcp_server_trino. Since the SQL tool is arbitrary, the Trino user you configure decides what an assistant can actually reach.

Setup effort

Build from source — git clone https://github.com/Dataring-engineering/mcp-server-trino.git