Skip to content

feat(ensapi): introduce Model Context Protocol (MCP) server for Omnigraph API#2301

Open
djstrong wants to merge 16 commits into
mainfrom
omnigraph-mcp
Open

feat(ensapi): introduce Model Context Protocol (MCP) server for Omnigraph API#2301
djstrong wants to merge 16 commits into
mainfrom
omnigraph-mcp

Conversation

@djstrong

@djstrong djstrong commented Jun 15, 2026

Copy link
Copy Markdown
Member

Lite PR

Tip: Review docs on the ENSNode PR process

Summary

  • Adds a first-party Omnigraph MCP server at /api/mcp on every ENSApi instance (streamable-HTTP), with tools (omnigraph_query, omnigraph_schema), schema/example resources, prompts, and validation hints for common GraphQL mistakes.
  • Adds offline schema lookup helpers in @ensnode/ensnode-sdk/internal (lookupOmnigraphSchema, buildCondensedSchemaReference) with bundled SDL so schema loading works in Vite/Rollup builds (no Node createRequire).
  • Adds docs (omnigraph-mcp.mdx, AI/LLM integration page link) and refactors enscli / ensskills to share the same schema helpers.

Why

  • AI agents (Cursor, Claude Desktop, etc.) need a standard way to query ENS state without bespoke per-use-case tools or hand-maintained GraphQL.
  • MCP gives agents execution against the full Omnigraph; bundled schema lookup + vetted example queries reduce bad first attempts (wrong field names, camelCase filters, subgraph-style patterns).
  • Consolidates schema reference logic in ensnode-sdk so ENSApi MCP, enscli, and ensskills stay in sync.

Testing

  • Manually tested against Cursor/Claude Desktop; docs cover client setup.

Notes for Reviewer (Optional)


Pre-Review Checklist (Blocking)

  • This PR does not introduce significant changes and is low-risk to review quickly.
  • Relevant changesets are included (or are not required)

Loading
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants