Odel
mcpindex

mcpindex

@mcpindex-ai1TypeScriptUpdated 5 days ago

The MCP server index that vets servers, not just lists them. Advisory screen before you install.

Server endpointStreamable HTTPNo authProbed

This is the third-party server itself — Odel doesn't run it. Hitting this URL directly talks straight to the upstream server with no auth or proxying. Connect through Odel to front it with managed auth.

mcpindex.ai — the in-path trust gate for agent tool calls

mcpindex.ai

The in-path trust gate for agent tool calls.

npm npm downloads PyPI servers indexed screened last commit Smithery Glama

MCP tool contracts can change remotely with no version bump. mcpindex pins each contract and HOLDs the call when it drifts — before your agent acts. Deterministic contract-diff on your host. Zero credential custody. Not a safety oracle.

Live site · Install gate · npx mcp-server-mcpindex · pip install mcpindex-gate · Remote MCP · Docs · Trust · Methodology

What you get

  1. In-path drift gate — one command wires Claude Desktop / Claude Code / Cursor / Gemini CLI / Cline / Zed so each MCP server launches behind the gate. Local, fail-closed, default build egresses nothing.
    curl -fsSL https://mcpindex.ai/install.sh | sh (inspect first with | less) · PyPI: mcpindex-gate
  2. Advisory directory — search, recommend, preflight (/api/v1/preflight), and trust lookups over HTTP or as a drop-in MCP server (mcp-server-mcpindex). Screen verdicts are REVIEW / UNVERIFIED at v1; ALLOW / DENY are reserved in the contract.
  3. Agent-readable surfaces/llms.txt, /.well-known/mcp-index.json, JSON-LD, and a per-server page for every indexed server (live count at mcpindex.ai/stats).

The gate is the wedge. The directory is the corpus the gate can query — also free.

Develop

Canonical local path: /Volumes/GB990Pro/GBCode/mcpindex-web.
If you also have mcpindex-STALE-DO-NOT-DEPLOY/ (or an old mcpindex/ clone), ignore it — it is a blocked backup, not the live site.

npm install
node scripts/sync-registry.mjs     # pull the registry: snapshot + removals + slug map
npm run dev                         # http://localhost:3000

Snapshot lives at data/snapshot.json (committed). Refresh anytime with the script.

Stack

  • Next.js 16 (App Router) on Vercel
  • Tailwind v4
  • Local snapshot of registry.modelcontextprotocol.io/v0/servers, refreshed daily via Vercel cron
  • Quality Score: lib/quality.ts (open methodology - PRs welcome)
  • Search: lib/search.ts (keyword now; embeddings v2 when OPENAI_API_KEY is wired)

Project layout

mcpindex/
├── app/                    # Next.js routes
│   ├── api/v1/             # Versioned public API
│   ├── api/cron/           # Vercel-cron-driven endpoints
│   ├── server/[slug]/      # per-server pages (top-N SSG + ISR)
│   ├── best/[category]/    # curated category pages
│   └── ...                 # docs, trust, methodology, ledger, …
├── components/             # Header, Footer, DriftGateDemo, LiveTicker, …
├── lib/                    # registry, quality, search, verdicts, installs, …
├── scripts/                # sync-registry.mjs, build-slugmap.ts, honesty guard
├── data/                   # snapshot.json (committed) + snapshots/ (cron-written)
├── mcp-server-mcpindex/    # the npm-distributed MCP directory client
└── …

License

  • Web app code: source-available, all-rights-reserved (prevents direct fork-and-deploy by competitors).
  • mcp-server-mcpindex (the npm package): MIT.
  • MCP Quality Score methodology: open and PR-friendly.

Affiliation

Unofficial. Not affiliated with Anthropic. The Model Context Protocol is open under MIT and trademarks remain with their owners. Server data comes from the official MCP registry.