Skip to main content
Version: Preview

Model Context Protocol (MCP)

Marmot includes a built-in Model Context Protocol (MCP) server that enables AI assistants like Claude, ChatGPT and other LLM-powered tools to interact with your data catalog using natural language.

What is MCP?

The Model Context Protocol is a standardised way for AI assistants to connect with external data sources - like a universal translator between AI models and your data.

Learn More

What Can You Do?​

With MCP, you can ask questions like:

  • "What tables does the analytics team own?"
  • "Show me all BigQuery datasets tagged as 'production'"
  • "Find the upstream dependencies for the user_events table"
  • "Who owns the payment processing API?"

Search Assets

Query your catalog using natural language

View Lineage

Explore upstream and downstream dependencies

Read Metadata

Access descriptions, owners, tags and custom metadata

Discover Context

Understand relationships between assets

Choose Your AI Assistant​

Authentication​

MCP uses the same authentication as Marmot's REST API. You'll need an API key to connect:

  1. Navigate to your user profile in Marmot
  2. Go to Settings → API Keys
  3. Generate a new API key
  4. Use this key in your MCP client configuration

The AI assistant will have the same permissions as your user account, respecting all role-based access controls.

An agent that runs on its own identity uses a service account key instead. Create the service account on the Service Accounts page (/service-accounts), give it a role with assets:view, glossary:view and teams:view, and put one of its keys in the MCP client configuration. The agent then has the service account's permissions, not any person's.

Hosted clients (OAuth)​

MCP clients can also sign in through OAuth instead of an API key. The client registers itself with Marmot using OAuth dynamic client registration and completes a browser sign-in, so no manual client setup is needed. By default Marmot only accepts loopback redirect URIs (http://localhost, http://127.0.0.1 or http://[::1]), which covers clients running on your own machine.

Hosted clients such as claude.ai run in the cloud and use an https callback, so their callback host must be allowlisted in your server configuration:

auth:
dcr:
allowed_redirect_hosts:
- claude.ai

The same setting is available as an environment variable, with multiple hosts separated by commas:

MARMOT_AUTH_DCR_ALLOWED_REDIRECT_HOSTS=claude.ai

Hosts on this list can receive OAuth authorization codes for your Marmot instance, so only add hosts you trust.

Available Tools​

Marmot's MCP server provides these tools to AI assistants:

discover_data​

Unified data discovery for finding any asset in the catalog. Supports natural language queries, specific lookups by ID or MRN (qualified identifiers like postgres://db/schema/table), filtering by type/provider/tags and metadata-based queries.

find_ownership​

Bidirectional ownership queries to answer "Who owns this asset?", "What does this user own?" and "Show me all data owned by the data-eng team". Works for both data assets and glossary terms.

lookup_term​

Business glossary lookups for understanding terminology and definitions. Search for glossary terms by name or retrieve specific term definitions.

Need Help?

Join our Discord community to get help, share feedback, and connect with other Marmot users.

Join Discord