Skip to content

NinjaCat → Seer MCP Migration Guide

Status as of May 2026: NinjaCat is being fully deprecated as a consumption + data-connector layer for Seer's agent infrastructure. The replacement is Seer MCP, which is being extended to cover the same data NinjaCat previously surfaced. Option A migration confirmed — see docs/plans/2026-05-15-ninjacat-deprecation.md.

This page used to be a how-to for running agents through NinjaCat. That model has been superseded. The guidance below is what you need to know now.


What changed

Layer Was Now
Build agents Outside NinjaCat (Claude Code / OpenCode / Pi) Same — unchanged
Run agents (practitioners) NinjaCat consumption layer Claude.ai · Claude Code · Pi · OpenCode (whatever the practitioner uses) — all consuming via Seer MCP
Data access (Seer Signals) NinjaCat MCP (ninjacat-mcp.seerlab.workers.dev/mcp) Seer MCP (mcp.seerinteractive.com/mcp), with tools being added incrementally to cover the same view set
Schema reference plugins/data-fieldguides/skills/data-signals-data/resources/ninjacat-views/ plugins/data-fieldguides/skills/data-signals-data/resources/signals-views/ (same docs, renamed; underlying Seer Signals data shape is unchanged)

The underlying Seer Signals data (Snowflake + BigQuery) is unchanged. Only the access layer is moving.


What this means for you

If you're a builder (Claude Code / OpenCode / Pi user)

  • Stop installing the NinjaCat MCP. Auto-registration has been removed from plugins/infrastructure/mcp-servers/.mcp.json.
  • Use Seer MCP for all data queries. The default mcp-integrations plugin install registers it for you.
  • View-shape documentation hasn't changed — the same 91 view schemas live in the renamed signals-views/ directory.
  • Some view-specific Seer MCP tools are not yet shipped. Until they are, fall back to seersignals_run_query (a generic SQL tool on Seer MCP that can query the underlying BigQuery directly).

If you're a practitioner (running agents)

  • Practitioners no longer run agents through NinjaCat. Use Claude.ai (uploads of plugin/skill zips from each release) or Claude Code locally.
  • For Seer Signals data needs, agents will query Seer MCP transparently. You don't need to manage credentials yourself — OAuth via your Seer Google account handles it.

If you're authoring a new skill that needs Seer Signals data

  • Reference the schema docs at plugins/data-fieldguides/skills/data-signals-data/resources/signals-views/.
  • Express queries as Seer MCP tool calls (preferred: dedicated tools per view when available; fallback: seersignals_run_query).
  • Do not reference NinjaCat-specific paths, URLs, or tool names. The migration target is Seer MCP only.

What's still in flight

Per the migration plan doc, the remaining work is:

  1. Seer MCP tool parity — engineering is adding tools to Seer MCP that match the NinjaCat MCP surface (organic rankings, paid media, traffic, etc.). Track in #14.
  2. Per-skill workflow rewrites — most affected skills have been updated; any remaining NinjaCat-MCP-specific paths get caught in CI.
  3. NinjaCat MCP shutdown — the underlying connector at ninjacat-mcp.seerlab.workers.dev/mcp remains live for in-flight workflows but new code should not target it.

Where to look for context


Historical note

NinjaCat played a real role in Seer's earliest AI-agent work — it was the only place client data, agent-runtime, and practitioner UX intersected. Lessons we kept:

  • Centralizing client data matters. Seer MCP inherits this directly.
  • Probabilistic vs deterministic work needs separation. Skills + hooks + commands carry this forward.
  • Shared building blocks beat per-team agents. core-dependencies is the operationalization of this lesson.

What we're walking away from: NinjaCat as a build-time platform. Modern agent tooling (versioned skill libraries, programmatic iteration, MCP-based data access) is a better fit for the way Seer ships agents today.