Introduction
Marmot is the open source context layer for your whole stack. It is a single catalog for every asset your systems and teams depend on: services, APIs, queues, topics, brokers, databases, tables and pipelines. It records what each one is, who owns it, what it means and what it connects to, then hands that context to whoever needs it, whether that is an engineer in a browser or an AI agent over MCP.
Get started in five minutes
Run Marmot locally with Docker Compose and catalog your first assets.
Quick StartWho we are
Marmot Data is the company behind Marmot. We are a small team of engineers with a taste for small things: one binary, one database, one place to look for the answer. We believe the hardest problems in a stack are rarely inside any single system. They live in the gaps between systems, in the questions nobody can answer quickly. What is this topic for? Who owns that table? What breaks if we change this? Marmot is our answer, and we build it in the open.
Everything we make starts as open source and stays that way. Marmot Cloud exists for the teams who would rather someone else ran the servers, and it pays for the work on the project everyone else runs for free. We talk to the people who use Marmot directly, on Discord and on GitHub, we write down what we learn on the blog, and when you report a bug, an engineer reads it.
Our mission
Make anyone, human or agent, autonomous in the systems they work with.
Autonomy is the ability to act without waiting for someone else to explain things. An engineer joining a team should be able to open an unfamiliar topic and know what it is for, who owns it and what depends on it, without booking a meeting. An AI agent asked to change a pipeline should be able to check the real schema, the real owner and the real downstream consumers, instead of inventing a plausible table name and hoping.
Today, most of that knowledge is not written down anywhere a person or a program can query. It is scattered across Slack threads, stale wiki pages and the heads of a few senior people. Every decision made without it is a guess, and a confident guess is worse than no answer at all. We call this context starvation.
Marmot exists to end it. It gathers the metadata your systems already have, adds the ownership and business meaning only your team can supply, and serves the result as one governed, queryable source of truth that people and agents share. When the context is real, current and one query away, anyone can act on their own.
What we stand for
Open source, for real
The core is MIT licensed with no usage limits. Self-host it for free, forever, and read the code to check what it collects.
Simple to run
One Go binary and PostgreSQL. No search cluster, no message broker, no platform team. Search, scheduling and storage all live in Postgres.
Metadata, never your data
Marmot stores schemas, ownership, descriptions, lineage and statistics. The rows, messages and payloads behind your assets never enter it.
Vendor neutral
Postgres, Kafka, S3, dbt, Airflow, BigQuery and your own services in one graph. A catalog that sees only one vendor is a partial picture.
Agents are first class
The MCP server and SDKs ship in the core. Agents read the same governed context your team sees, and write back the lineage they create.
Your way in
Plugins, Terraform, Pulumi, a Kubernetes operator, the CLI, the API or the UI. Marmot has no opinion about how the catalog gets filled.
What Marmot does
Marmot is built entirely in Go, with PostgreSQL as its only external dependency. Plugins and integrations read the structure of your sources into the catalog. People and rules enrich it with ownership, glossary terms, tags and custom fields. The UI, the REST API and the MCP server then answer questions from that one shared model.
Discovery
Find any asset in seconds with free text, or be precise with a query language that filters on type, owner, tags and metadata.
Lineage and impact
Trace how data flows and what depends on what, from plugins, OpenLineage events or the lineage your agents write back.
Ownership and meaning
Owners, business definitions, tags and custom fields turn raw assets into answers instead of guesses.
Data products
Group related assets into curated bundles or dynamic rules that grow with your catalog.
Asset rules
Define an enrichment once and Marmot applies it to every matching asset, including the ones that arrive later.
Notifications
Hear about schema changes, pipeline runs and mentions in the UI or through webhooks.
How you can run it
Everything in these docs applies to every edition. The data model, the query language, the plugins and the MCP server are the same wherever Marmot runs.
Building for a regulated environment?
Run Marmot inside your own VPC, or talk to us about an enterprise plan with data residency, VPC peering and audit export on Marmot Cloud.
Talk to usMarmot for agents
AI agents are only as good as the context they can reach. Marmot gives them a live, governed map of your stack through a built-in MCP server, ready-made tools for agent frameworks, and typed SDKs in Python, Go and TypeScript.
Marmot for Agents
Plug your LLM agents into the catalog: they read it for context and write back the lineage they generate.
MCP Server
Let Claude, Cursor, ChatGPT and any MCP client answer questions backed by your real catalog.
SDK
Typed clients for Python, Go and TypeScript that authenticate from the environment automatically.
REST API
The HTTP API everything else is built on. Use it directly from any language.
Find your way around
Quick Start
From an empty deployment to a populated catalog, step by step.
Populating your catalog
Plugins, Terraform, Pulumi, the Kubernetes operator, the CLI, the API and the UI.
Plugins
Auto-discover assets and lineage from the systems you already run.
Configure
Authentication, anonymous access, TLS, banners, Elasticsearch and telemetry.
CLI Reference
Manage assets, ingest from sources and talk to any instance from the terminal.
Build a plugin
Write a plugin in Go with the plugin SDK and ship it in its own repository.
Join us
Marmot is shaped by the people who run it. Questions, bug reports, plugin ideas and pull requests are all welcome.
Discord
Get help, share feedback and talk to the team and other Marmot users.
GitHub
Star the project, open an issue or send a pull request.
Blog
Engineering writing on catalogs, context for AI, lineage and running on just Postgres.
Security and bug bounty
How to report a vulnerability, and how we reward the people who do.