Serverdex API and MCP server

Everything the directory lists is readable by machines: a JSON API for scripts and apps, and a remote MCP server so your AI client can search for MCP servers from inside a conversation. Both are free, read-only and need no key.

MCP server

Endpoint https://serverdex.io/mcp (Streamable HTTP, stateless, no auth). Three tools: search_servers, get_server and list_categories.

Claude Code

claude mcp add --transport http serverdex https://serverdex.io/mcp

Claude Desktop — claude_desktop_config.json

{
  "mcpServers": {
    "serverdex": {
      "url": "https://serverdex.io/mcp"
    }
  }
}

Cursor — .cursor/mcp.json

{
  "mcpServers": {
    "serverdex": {
      "url": "https://serverdex.io/mcp"
    }
  }
}

Then ask, for example, “find an MCP server for Postgres” or “how do I connect the Grafana MCP server?”. The server answers from the same data as this site and links every result to its Serverdex page.

JSON API

Base URL https://serverdex.io/api/v1. GET only, CORS open, responses cached for a few minutes. Limit: 120 requests per minute per IP (429 with retry-after beyond that).

GET /api/v1/servers

Listed servers, newest first by default.

  • q — full-text search over name, title and description
  • category — a category slug (see /api/v1/categories)
  • sort — new (default), name, stars
  • page, limit — pagination, limit 1–50 (default 20)
curl "https://serverdex.io/api/v1/servers?q=grafana&limit=1"
{
  "data": [
    {
      "id": "…",
      "slug": "io-github-grafana-mcp-grafana",
      "url": "https://serverdex.io/server/io-github-grafana-mcp-grafana",
      "name": "Grafana",
      "registry_name": "io.github.grafana/mcp-grafana",
      "author": "grafana",
      "description": "An MCP server giving access to Grafana dashboards, data and more.",
      "category": { "slug": "data-analytics", "name": "Data & Analytics" },
      "repository_url": "https://github.com/grafana/mcp-grafana",
      "homepage_url": "https://grafana.com",
      "version": "v2.3.0",
      "source": "registry",
      "registry_status": "active",
      "featured": false,
      "verified": false,
      "published_at": "2026-11-10T…",
      "updated_at": "2026-11-13T…",
      "github": { "stars": 3668, "forks": 497, "open_issues": 41, "pushed_at": "2026-11-13T…", "license": "Apache-2.0", "language": "Go", "archived": false, "topics": [], "checked_at": "2026-11-13T…" }
    }
  ],
  "page": 1,
  "limit": 20,
  "total": 15619,
  "has_more": true
}

github is null until the hourly enrichment has read the repository.

GET /api/v1/servers/{slug}

One server: the fields above plus packages, remotes, readme_excerpt and connect (ready-to-paste client configs). 404 when the slug is unknown or the server is not listed.

curl "https://serverdex.io/api/v1/servers/io-github-grafana-mcp-grafana"

GET /api/v1/categories

The 28 categories with live server counts and page URLs.

curl "https://serverdex.io/api/v1/categories"

Terms and attribution

  • Server metadata originates from the MCP registry and the server authors; Serverdex adds categorisation, enrichment and listing status.
  • When you show a server to users, link to its Serverdex page (url).
  • Field names are stable within v1; new fields may be added. Breaking changes get a new version prefix.
  • Questions, higher limits, bulk access: contact us.