NestDaddy

Lagaam

io.github.lagaam-ai/lagaam ยท v1.0.0

Stops an agent's Trino or Pinot query before it runs if it costs too much or reads outside its grant

Connect Runs on your machine

Terminal
claude mcp add lagaam -e LAGAAM_ALLOWED_TABLES=<LAGAAM_ALLOWED_TABLES> -e LAGAAM_ALLOW_ALL_TABLES=<LAGAAM_ALLOW_ALL_TABLES> -e LAGAAM_ENGINE=<LAGAAM_ENGINE> -e TRINO_HOST=<TRINO_HOST> -e TRINO_PORT=<TRINO_PORT> -e TRINO_USER=<TRINO_USER> -e TRINO_PASSWORD=<TRINO_PASSWORD> -e TRINO_JWT=<TRINO_JWT> -e TRINO_HTTP_SCHEME=<TRINO_HTTP_SCHEME> -e TRINO_VERIFY=<TRINO_VERIFY> -e PINOT_CONTROLLER_URL=<PINOT_CONTROLLER_URL> -e PINOT_BROKER_URL=<PINOT_BROKER_URL> -e PINOT_USER=<PINOT_USER> -e PINOT_PASSWORD=<PINOT_PASSWORD> -e LAGAAM_AGENT_NAME=<LAGAAM_AGENT_NAME> -e LAGAAM_MAX_SCAN_BYTES=<LAGAAM_MAX_SCAN_BYTES> -e LAGAAM_MAX_ROWS=<LAGAAM_MAX_ROWS> -e LAGAAM_MAX_INTERMEDIATE_ROWS=<LAGAAM_MAX_INTERMEDIATE_ROWS> -e LAGAAM_MAX_RETURNED_ROWS=<LAGAAM_MAX_RETURNED_ROWS> -e LAGAAM_QUERY_TIMEOUT=<LAGAAM_QUERY_TIMEOUT> -e LAGAAM_METADATA_TTL=<LAGAAM_METADATA_TTL> -e LAGAAM_AUDIT_LOG=<LAGAAM_AUDIT_LOG> -- uvx lagaam==1.0.0
claude_desktop_config.json
{
  "mcpServers": {
    "lagaam": {
      "command": "uvx",
      "args": [
        "lagaam==1.0.0"
      ],
      "env": {
        "LAGAAM_ALLOWED_TABLES": "<LAGAAM_ALLOWED_TABLES>",
        "LAGAAM_ALLOW_ALL_TABLES": "<LAGAAM_ALLOW_ALL_TABLES>",
        "LAGAAM_ENGINE": "<LAGAAM_ENGINE>",
        "TRINO_HOST": "<TRINO_HOST>",
        "TRINO_PORT": "<TRINO_PORT>",
        "TRINO_USER": "<TRINO_USER>",
        "TRINO_PASSWORD": "<TRINO_PASSWORD>",
        "TRINO_JWT": "<TRINO_JWT>",
        "TRINO_HTTP_SCHEME": "<TRINO_HTTP_SCHEME>",
        "TRINO_VERIFY": "<TRINO_VERIFY>",
        "PINOT_CONTROLLER_URL": "<PINOT_CONTROLLER_URL>",
        "PINOT_BROKER_URL": "<PINOT_BROKER_URL>",
        "PINOT_USER": "<PINOT_USER>",
        "PINOT_PASSWORD": "<PINOT_PASSWORD>",
        "LAGAAM_AGENT_NAME": "<LAGAAM_AGENT_NAME>",
        "LAGAAM_MAX_SCAN_BYTES": "<LAGAAM_MAX_SCAN_BYTES>",
        "LAGAAM_MAX_ROWS": "<LAGAAM_MAX_ROWS>",
        "LAGAAM_MAX_INTERMEDIATE_ROWS": "<LAGAAM_MAX_INTERMEDIATE_ROWS>",
        "LAGAAM_MAX_RETURNED_ROWS": "<LAGAAM_MAX_RETURNED_ROWS>",
        "LAGAAM_QUERY_TIMEOUT": "<LAGAAM_QUERY_TIMEOUT>",
        "LAGAAM_METADATA_TTL": "<LAGAAM_METADATA_TTL>",
        "LAGAAM_AUDIT_LOG": "<LAGAAM_AUDIT_LOG>"
      }
    }
  }
}
~/.cursor/mcp.json
{
  "mcpServers": {
    "lagaam": {
      "command": "uvx",
      "args": [
        "lagaam==1.0.0"
      ],
      "env": {
        "LAGAAM_ALLOWED_TABLES": "<LAGAAM_ALLOWED_TABLES>",
        "LAGAAM_ALLOW_ALL_TABLES": "<LAGAAM_ALLOW_ALL_TABLES>",
        "LAGAAM_ENGINE": "<LAGAAM_ENGINE>",
        "TRINO_HOST": "<TRINO_HOST>",
        "TRINO_PORT": "<TRINO_PORT>",
        "TRINO_USER": "<TRINO_USER>",
        "TRINO_PASSWORD": "<TRINO_PASSWORD>",
        "TRINO_JWT": "<TRINO_JWT>",
        "TRINO_HTTP_SCHEME": "<TRINO_HTTP_SCHEME>",
        "TRINO_VERIFY": "<TRINO_VERIFY>",
        "PINOT_CONTROLLER_URL": "<PINOT_CONTROLLER_URL>",
        "PINOT_BROKER_URL": "<PINOT_BROKER_URL>",
        "PINOT_USER": "<PINOT_USER>",
        "PINOT_PASSWORD": "<PINOT_PASSWORD>",
        "LAGAAM_AGENT_NAME": "<LAGAAM_AGENT_NAME>",
        "LAGAAM_MAX_SCAN_BYTES": "<LAGAAM_MAX_SCAN_BYTES>",
        "LAGAAM_MAX_ROWS": "<LAGAAM_MAX_ROWS>",
        "LAGAAM_MAX_INTERMEDIATE_ROWS": "<LAGAAM_MAX_INTERMEDIATE_ROWS>",
        "LAGAAM_MAX_RETURNED_ROWS": "<LAGAAM_MAX_RETURNED_ROWS>",
        "LAGAAM_QUERY_TIMEOUT": "<LAGAAM_QUERY_TIMEOUT>",
        "LAGAAM_METADATA_TTL": "<LAGAAM_METADATA_TTL>",
        "LAGAAM_AUDIT_LOG": "<LAGAAM_AUDIT_LOG>"
      }
    }
  }
}
.vscode/mcp.json
{
  "servers": {
    "lagaam": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "lagaam==1.0.0"
      ],
      "env": {
        "LAGAAM_ALLOWED_TABLES": "<LAGAAM_ALLOWED_TABLES>",
        "LAGAAM_ALLOW_ALL_TABLES": "<LAGAAM_ALLOW_ALL_TABLES>",
        "LAGAAM_ENGINE": "<LAGAAM_ENGINE>",
        "TRINO_HOST": "<TRINO_HOST>",
        "TRINO_PORT": "<TRINO_PORT>",
        "TRINO_USER": "<TRINO_USER>",
        "TRINO_PASSWORD": "<TRINO_PASSWORD>",
        "TRINO_JWT": "<TRINO_JWT>",
        "TRINO_HTTP_SCHEME": "<TRINO_HTTP_SCHEME>",
        "TRINO_VERIFY": "<TRINO_VERIFY>",
        "PINOT_CONTROLLER_URL": "<PINOT_CONTROLLER_URL>",
        "PINOT_BROKER_URL": "<PINOT_BROKER_URL>",
        "PINOT_USER": "<PINOT_USER>",
        "PINOT_PASSWORD": "<PINOT_PASSWORD>",
        "LAGAAM_AGENT_NAME": "<LAGAAM_AGENT_NAME>",
        "LAGAAM_MAX_SCAN_BYTES": "<LAGAAM_MAX_SCAN_BYTES>",
        "LAGAAM_MAX_ROWS": "<LAGAAM_MAX_ROWS>",
        "LAGAAM_MAX_INTERMEDIATE_ROWS": "<LAGAAM_MAX_INTERMEDIATE_ROWS>",
        "LAGAAM_MAX_RETURNED_ROWS": "<LAGAAM_MAX_RETURNED_ROWS>",
        "LAGAAM_QUERY_TIMEOUT": "<LAGAAM_QUERY_TIMEOUT>",
        "LAGAAM_METADATA_TTL": "<LAGAAM_METADATA_TTL>",
        "LAGAAM_AUDIT_LOG": "<LAGAAM_AUDIT_LOG>"
      }
    }
  }
}

Replace the values in angle brackets with your own. Keys stay on your machine; we never see them.

Tools

This server runs locally, so its tools are listed by your MCP client once it starts.

Environment variables

NameDescription
LAGAAM_ALLOWED_TABLES
Required
Comma list of catalog.schema.table grants; the server will not start without it
LAGAAM_ALLOW_ALL_TABLES
Optional
true to run with no grant at all: an explicit opt-out, off by default
LAGAAM_ENGINE
Optional
Which adapter to run
TRINO_HOST
Optional
Trino coordinator host
TRINO_PORT
Optional
Trino coordinator port
TRINO_USER
Optional
Trino user
TRINO_PASSWORD
Optional, secret
Password for TRINO_USER; unset means no login. Not with TRINO_JWT
TRINO_JWT
Optional, secret
JWT to log in with instead of a password; unset means no login
TRINO_HTTP_SCHEME
Optional
http or https; unset means https once a password or JWT is set, else http
TRINO_VERIFY
Optional
TLS cert check: true, false, or the path of a CA bundle (PEM)
PINOT_CONTROLLER_URL
Optional
Pinot controller URL
PINOT_BROKER_URL
Optional
Pinot broker URL
PINOT_USER
Optional
Pinot user; unset means no auth
PINOT_PASSWORD
Optional, secret
Pinot password; unset means no auth
LAGAAM_AGENT_NAME
Optional
Identity stamped on the audit trail
LAGAAM_MAX_SCAN_BYTES
Optional
Scan-bytes budget per query, checked before it runs (default 50 GiB)
LAGAAM_MAX_ROWS
Optional
Scanned-row estimate budget per query; unset means ungated
LAGAAM_MAX_INTERMEDIATE_ROWS
Optional
Rows the engine would build at its widest step, not rows returned, so a LIMIT doesn't lower it
LAGAAM_MAX_RETURNED_ROWS
Optional
Rows returned to the agent per query, capped at 100000; a bigger LIMIT in the query is lowered to it
LAGAAM_QUERY_TIMEOUT
Optional
Wall-clock seconds per query
LAGAAM_METADATA_TTL
Optional
Metadata cache TTL, seconds
LAGAAM_AUDIT_LOG
Optional
Audit JSONL file path; unset means stderr

Details

Package[email protected] (PYPI, stdio)
First published6 Nov 2026
Last updated6 Nov 2026
Registry nameio.github.lagaam-ai/lagaam

More ai and media servers See all

Listing data from the official MCP registry. Status and tools from NestDaddy's daily check. Browse all MCP servers.