MCP Hub
Back to servers

logflare-mcp

Enables querying and managing Logflare log sources, endpoints, and executing ad-hoc SQL via MCP.

glama
Updated
May 5, 2026

logflare-mcp

MCP server for the Logflare Management API. Exposes sources, endpoints, and ad-hoc SQL query tools to MCP clients (Claude Code, Claude Desktop, Cursor, …) over stdio.

Built on the official @modelcontextprotocol/sdk and talks directly to the public Logflare REST API — no third-party auth proxy.

Tools

ToolDescription
list_sourcesList all sources available to the API key
get_sourceFetch a single source by token
get_source_schemaInferred field types for a source
get_recent_eventsMost recent events from a source
list_endpointsSaved query endpoints
query_endpointRun a saved endpoint by UUID or name, with parameters
execute_queryRun ad-hoc BigQuery / Postgres / ClickHouse SQL

Install

git clone git@github.com:fasterv410/logflare-mcp.git
cd logflare-mcp
pnpm install
pnpm build

Configure

Get your Logflare API key from https://logflare.app/access-tokens.

cp .env.example .env
# edit .env and paste your key
VariableRequiredDefaultNotes
LOGFLARE_API_KEYyesAccess token
LOGFLARE_BASE_URLnohttps://logflare.appFor self-hosted Logflare
LOGFLARE_AUTH_STYLEnobearerUse x-api-key for legacy keys
LOGFLARE_DEFAULT_SOURCE_TOKENnoDefault source when the tool arg is omitted

Register with Claude Code

claude mcp add logflare -- node /absolute/path/to/logflare-mcp/dist/index.js

Or add manually to ~/.claude.json:

{
  "mcpServers": {
    "logflare": {
      "command": "node",
      "args": ["/absolute/path/to/logflare-mcp/dist/index.js"],
      "env": {
        "LOGFLARE_API_KEY": "lf-xxxxxxxx",
        "LOGFLARE_DEFAULT_SOURCE_TOKEN": "optional-uuid"
      }
    }
  }
}

Register with Claude Desktop

Edit ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "logflare": {
      "command": "node",
      "args": ["/absolute/path/to/logflare-mcp/dist/index.js"],
      "env": { "LOGFLARE_API_KEY": "lf-xxxxxxxx" }
    }
  }
}

Dev

pnpm dev         # tsx watch mode
pnpm build       # emit dist/
pnpm typecheck

Smoke test from the shell:

LOGFLARE_API_KEY=xxx printf '%s\n' \
  '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{},"clientInfo":{"name":"t","version":"0"}}}' \
  '{"jsonrpc":"2.0","method":"notifications/initialized"}' \
  '{"jsonrpc":"2.0","id":2,"method":"tools/list"}' \
  | node dist/index.js

Notes

  • Auth defaults to Authorization: Bearer <key> (per Logflare's OpenAPI spec). Set LOGFLARE_AUTH_STYLE=x-api-key to fall back to the legacy X-API-KEY header.
  • execute_query accepts exactly one of bq_sql, pg_sql, ch_sql.
  • Prefer query_endpoint with saved endpoints over execute_query; saved endpoints give you parameter validation and caching on Logflare's side.

License

MIT

Reviews

No reviews yet

Sign in to write a review