Independent by design · no pay-to-rank placements  · How we evaluate tools →
Anclum Submit
L

lagaam-ai/lagaam

MCP server that stops an AI agent's Trino or Pinot query before it stalls your shared cluster: priced from the engine's own plan, refused with a fix the agent can act on

Before you install: a copy-paste command is available · license Apache-2.0 · link reachable

no SECURITY.md
View on GitHub ↗Link checked 2026-11-12 · HTTP 200 · opens the vendor's own site
Install & config
  1. Copy the command above
  2. Paste it as one entry under mcpServers in claude_desktop_config.json — local servers take command + args (example: clients)
  3. Restart your client
Client config (built from the install command this repo gives)
{
  "mcpServers": {
    "lagaam-ai-lagaam": {
      "command": "uvx",
      "args": ["lagaam"]
    }
  }
}

Parsed from the README we fetched on 2026-10-26; we have not executed it.

command/args come from the install command the repository states. When it is ambiguous, the project README wins.
VS Code (.vscode/mcp.json - the key is servers)
{
  "servers": {
    "lagaam-ai-lagaam": {
      "command": "uvx",
      "args": ["lagaam"]
    }
  }
}
Same server, but VS Code keeps it under <code>servers</code>.
Claude Code (command line)
claude mcp add --transport stdio lagaam-ai-lagaam -- uvx lagaam
Claude Code does not read a config file; add the server with this command.
Key names differ by client: Clients & CLI
Star count
1 ★ · lagaam-ai/lagaam · read from the GitHub search API · (checked 2026-11-13 20:00:50)
Source
collected from the punkpeye/awesome-mcp-servers list · type: MCP server
Harvest history
first seen 2026-10-23 · last seen 2026-11-14 · seen 26× · listed by 23 sources
Score
score 2,300 · 1 ★ · 23 sources · mcp
Install
uvx lagaam
FAQ (answers come from our records)
How do I install it?
The repository provides this install command: uvx lagaam. It comes from the repository itself; we cannot guarantee it runs as-is in your client.
Who is it for?
We filed it under these tags: MCP 服务. The tags come from the entry itself, not a taxonomy we imposed.
Who maintains it?
repository lagaam-ai/lagaam;first catalogued 2026-10-23;last seen 2026-11-14。There is no official certification or quality rating here — we record sources and dates only.

One agent query shouldn't stall everyone's Trino. On a shared cluster, a

以下摘录自该仓库的 README(片段) · 在 GitHub 读完整 README →

missing partition filter or an accidental cross join doesn't cost you a bill —
it costs everyone else their queries. Lagaam is an MCP server that sits
between your AI agents and your lakehouse (Trino and Apache Pinot): every
query is schema-grounded, priced from the engine's own plan before it runs,
checked against a budget, and audited — and the bad one is refused before it
runs, with a fix the agent can act on.
Real session, real Trino, nothing mocked — reproduce it with
uv run --project server python examples/demo.py.
Real session, real Pinot 1.5.1 realtime table, nothing mocked — reproduce it
with uv run --project server python examples/demopinot.py.
## The problem
Agents write syntactically-valid, catastrophic SQL, and on a shared cluster
the damage isn't theirs alone. A missing partition filter turns into a full
scan that ties up every worker; an accidental cross join fills worker memory
while everyone else's queries wait behind it; a retry loop runs it again. A
SELECT drags 40 columns into a context window that needed 2. The usual
fix is to not give agents database access at all.
Lagaam gives them access with reins on:
Cost is a quotation, not a bill. Every query is priced from the
engine's own plan before execution — EXPLAIN (TYPE IO) for the bytes it
would scan, EXPLAIN (TYPE LOGICAL) for the widest row count any operator
would build (the number a cross join blows and a LIMIT cannot hide).
Over budget → blocked, with the number and the fix.
Un-estimable means no. No table statistics, a self-join that breaks
the estimate, a passthrough the planner can't see — the gate fails safe
instead of hoping.
Read-only, enforced in the AST. Single SELECT only. No DDL/DML, no
multi-statement injection, no SELECT , no table-function passthrough,
and a LIMIT is injected when missing. Validated SQL is re-rendered, so
what runs is exactly what was checked.
Agents ground themselves. listcatalogs and describetable return
exact names, types, and row estimates — scoped to the agent's table grant,
so the agent never learns names it isn't allowed to touch.
Results are verified before they're trusted. Zero rows, truncated
pages, all-NULL columns — the agent gets a warning with a next action, not
a silently misleading answer.
Every call is audited. One JSONL line per tool call: who, what,
allowed or denied, and why.
## Doesn't Trino already limit this?
It limits a query once it is running. Lagaam refuses it before it starts.
Keep both.
| | Acts | What the agent sees | Catches a cross join that reads little |
| query.max-scan-physical-bytes | during execution: terminated once the bytes are scanned | a query failure | no — it counts bytes read, not rows built |
| query.max-execution-time | during execution: terminated after the time is spent | a query failure | only after it has held the cluster that long |
| Resource groups (hardPhysicalDataScanLimit, softMemoryLimit, …) | on the next query: new queries queue once the group is over its share | its later queries wait | no — the running query continues |
| Lagaam | before execution, from EXPLAIN | a refusal with the number and the fix | yes — it prices the rows the widest step would build |
Listed badge (optional)
Copy this line into the README if you want the listing mark. Optional, and it does not affect being listed.
[![Listed on Anclum](https://anclum.com/badge/listed.svg)](https://anclum.com/en/s/lagaam-ai-lagaam/)
Source
awesome · https://github.com/lagaam-ai/lagaam
Browse by field
MCP servers
Traction
1 ★
Listed by
23 independent sources
added
today
Security policy
no SECURITY.md at the repository root (which does not mean it is unsafe)

More like this

All 6,229 →

Filed under

Every tag opens the full list for that filter. Counts are the live catalogue figures.

Browse all fields →

← Back to index