MCP dev server

Hookie ships a Model Context Protocol server so AI coding agents — Claude Code, Cursor, and other MCP clients — can work with your event pipeline while you build: list projects and datasets, send test events, watch deliveries, and tail the live stream, all from inside the agent.

Tools

ToolWhat it does
list_projectsList the workspace's projects.
get_project_overviewProject details plus its dataset summary.
list_datasetsDatasets in a project with record counts.
query_recordsRecent records from a dataset (newest first).
list_deliveriesRecent outbound deliveries — status, response code, destination.
list_workflowsWorkflow definitions in a project.
send_test_eventPOST a sample JSON event to a public webhook URL (the one write tool).
tail_streamTail the live event stream for a bounded window.

Everything is read-only except send_test_event, which exercises the normal ingest pipeline with a sample payload — no deletes, no destructive writes.

Setup

The server ships with Hookie's dev tooling as a dependency-free Node script (no build step, Node ≥ 18). Point your MCP client at it — for Claude Code, add to .mcp.json:

{
  "mcpServers": {
    "hookie": {
      "command": "node",
      "args": ["tools/hookie-mcp-server/bin/hookie-mcp.mjs"],
      "env": {
        "HOOKIE_URL": "http://localhost:8787",
        "HOOKIE_PROJECT_ID": "your-default-project-id"
      }
    }
  }
}

Configuration

VariablePurpose
HOOKIE_URLHookie origin to target (default http://localhost:8787).
HOOKIE_TOKEN / HOOKIE_COOKIEBearer token or session cookie for the admin API.
HOOKIE_PROJECT_IDDefault project id so tools can omit project_id.
HOOKIE_ALLOW_REMOTESet 1 to allow a non-local HOOKIE_URL (local-only by default).

Safety model

  • Local-first: refuses to target a non-local URL unless you explicitly opt in with HOOKIE_ALLOW_REMOTE=1.
  • Least privilege: supply credentials scoped to the workspace you're developing against.
  • Clean transport: stdout carries only JSON-RPC; diagnostics go to stderr.