DOCUMENTATION

MCPNest Docs

Everything you need to discover, install, govern, and build with MCP servers.

Quick Start

Get up and running with MCPNest in under 2 minutes.

7,561+ servers

Indexed, scored, and verified

Quality Score A-F

Know if a server is maintained

One-click install

Cursor, VS Code, Claude Desktop

Enterprise Gateway

One URL for your whole team

Option 1 — Browse and install

1

Go to mcpnest.io and search for what you need

2

Click the server to open its page

3

Click "Add to Cursor" or copy the Claude Desktop config

4

Restart your AI client

Option 2 — Install MCPNest inside Claude (recommended)

Add this to your claude_desktop_config.json and restart Claude. You can then search and install servers using natural language.

claude_desktop_config.json
{
  "mcpServers": {
    "mcpnest": {
      "command": "npx",
      "args": ["-y", "mcpnest-mcp"]
    }
  }
}
OK
After restarting Claude, try: "find me a GitHub MCP server" or "install the best postgres server"

npm Package — npx mcpnest-mcp

The MCPNest npm package installs MCPNest as an MCP server inside Claude, Cursor, or Windsurf. Once installed, you can search and install any of the 7,561+ servers using natural language — no browsing required.

What it does

The package exposes three tools to your AI client:

search_mcp_servers
tool
Search the MCPNest registry by description, category, or use case
install_mcp_server
tool
Write the install config to the correct location for your OS and client
validate_config
tool
Check your existing MCP config file for errors

Claude Desktop config

claude_desktop_config.json
{
  "mcpServers": {
    "mcpnest": {
      "command": "npx",
      "args": ["-y", "mcpnest-mcp"]
    }
  }
}

Cursor config

.cursor/mcp.json
{
  "mcpServers": {
    "mcpnest": {
      "command": "npx",
      "args": ["-y", "mcpnest-mcp"]
    }
  }
}

Example natural language usage

> "find me a GitHub MCP server"
> "install the top postgres server"
> "what MCP servers are available for Slack?"
> "search for browser automation servers"
> "validate my current MCP config"
I
The npx command always fetches the latest version. No global install required.

Browse and Search

Visit mcpnest.io to browse 7,561+ MCP servers. Use the search bar or quick tags to find what you need.

Quick tags

Click any tag on the homepage to search instantly: github, postgres, slack, filesystem, browser, stripe, notion, docker.

Search filters

Category
filter
Development, DevOps, AI/ML, Database, Productivity, and more
Client
filter
Claude Desktop, Cursor, Windsurf, VS Code, ChatGPT, Gemini
Pricing
filter
Free / Paid / All
Sort
filter
Relevance, GitHub Stars, Most Installed, Highest Rated, Newest

Quality Scores and Tool Counts

Every server is scored automatically so you can evaluate quality at a glance.

Quality Score A-F

Computed from four signals:

Maintenance velocity
signal
When was the last commit? Active maintenance scores higher.
Config completeness
signal
Does it have a working install config for at least one client?
Verification status
signal
Is it listed in the official Anthropic registry?
Documentation depth
signal
Does the README explain what the server does and how to use it?
I
A well-maintained server with 300 stars scores higher than an abandoned one with 3,000. Stars measure historical interest, not current health.

Tool Count Badge

Shows how many tools the server exposes to your AI client — and the context window cost:

Green — Lean
1-10 tools
Minimal context window impact. Safe to add alongside other servers.
Blue — Moderate
11-20 tools
Acceptable for most use cases.
Yellow — Heavy
21-40 tools
Consider context window usage when combining with other servers.
Red — Context Heavy
40+ tools
Significant context window cost. Use standalone or with care.

1-Click Install — Cursor

On any server page, click "Add to Cursor". Cursor opens automatically and adds the server to your config.

Manual install

If the 1-click button does not work, copy the install config and add it to your Cursor MCP config file:

~/.cursor/mcp.json (Mac/Linux) %APPDATA%\.cursor\mcp.json (Windows)
{
  "mcpServers": {
    "server-name": {
      "command": "npx",
      "args": ["-y", "package-name"]
    }
  }
}

1-Click Install — VS Code

Click "VS Code Install MCP" on any server page. VS Code opens and prompts you to install. Requires the GitHub Copilot extension with MCP support enabled.

Manual Install — Claude Desktop

1

Open the server page on MCPNest and copy the Claude Desktop config

2

Find your config file (see paths below)

3

Add the server entry inside the mcpServers object

4

Save the file and restart Claude Desktop completely

Config file locations

Mac
~/Library/Application Support/Claude/claude_desktop_config.json
Windows
%APPDATA%\Claude\claude_desktop_config.json
Linux
~/.config/claude/claude_desktop_config.json

Example config

claude_desktop_config.json
{
  "mcpServers": {
    "github": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-github"],
      "env": {
        "GITHUB_PERSONAL_ACCESS_TOKEN": "your-token-here"
      }
    }
  }
}
!
You must fully quit and restart Claude Desktop — closing the window is not enough. Look for Claude in your system tray and quit from there.

Config Validator

The Config Validator catches JSON errors, missing fields, and structural issues before they cause silent failures in your AI client.

1

Go to mcpnest.io/config-validator

2

Paste your claude_desktop_config.json or cursor MCP config

3

The validator highlights errors, warnings, and suggestions

4

Fix the issues and paste again to confirm

Common issues caught:

Invalid JSON
error
Trailing commas, missing brackets, unclosed strings
Missing mcpServers
error
Top-level key not present or misspelled
Missing command or args
error
Server entry is incomplete
Wrong env format
warning
Environment variables must be string values

MCP Composer

Build a complete multi-server config visually. Select servers, configure them, and export the full JSON in one click. Saves 30+ minutes of manual config work.

1

Go to mcpnest.io/compose

2

Search and add the servers you want

3

Configure any required environment variables

4

Click "Export Config" to copy the complete JSON

5

Paste into your claude_desktop_config.json and restart

OK
Paste your exported config into the Validator before restarting your AI client.

Bundle Sharing

Bundles are curated sets of MCP servers packaged as a single shareable link. Share your stack with teammates or import a community bundle in one click.

MCPNest DevOps Pack

Nine servers for full infrastructure context: GitHub, Docker, Kubernetes, AWS, Grafana, Sentry, Datadog, RailPush, Linear.

mcpnest.io/collections/devops-pack

Create your own bundle

1

Go to mcpnest.io/compose and build your config

2

Click "Share as Bundle"

3

Copy the bundle URL and share with your team

GATEWAY LIVE

MCP Gateway — Overview

The MCPNest Gateway is a managed proxy that sits between your AI clients and your MCP servers. One authenticated endpoint per workspace. Every tool call logged. No credentials exposed to end users.

Single endpoint

One URL for all workspace servers

SHA-256 auth

Bearer token with constant-time comparison

Audit logging

Every tools/call logged with latency and status

Tool aggregation

tools/list combines all servers into one response

Smart routing

tools/call proxies to the correct upstream server

Rate limiting

200 req/min per IP per workspace

How it works

Your AI client connects to a single Gateway endpoint instead of configuring each MCP server individually. The Gateway aggregates tools/list from all workspace servers and proxies tools/call to the correct upstream. All calls are logged for audit and compliance.

[Claude / Cursor / Windsurf]
        |
        | Bearer token auth
        v
[MCPNest Gateway]
https://mcpnest.io/api/gw/{workspace-slug}
        |
        |-- tools/list aggregated
        |-- tools/call proxied
        |-- every call logged
        |
   +----+----+----+
   |         |    |
[Server A] [B]  [C]
  Grafana  RailPush Context7
I
The Gateway requires Enterprise plan at 99 EUR/workspace/month. Workspace creation is fully self-serve — your Gateway token is generated automatically.

Create a Workspace

1

Upgrade to Enterprise at mcpnest.io/pricing

2

Go to mcpnest.io/workspace/new

3

Enter a workspace name and optional description

4

Click "Create workspace"

5

Copy your Gateway token immediately — it is shown only once

6

Note your Gateway endpoint: https://mcpnest.io/api/gw/{workspace-slug}

!
The Gateway token is shown once at creation. Store it securely in a password manager or secrets vault. If lost, you must rotate the token in workspace settings.

What gets created

When you create a workspace, MCPNest automatically provisions:

Gateway endpoint
URL
https://mcpnest.io/api/gw/{your-workspace-slug}
Bearer token
mng_...
48-character hex token with mng_ prefix
Audit log
table
All workspace events logged from creation
Owner membership
role
You are automatically added as Owner

Add Servers to the Gateway

1

Open your workspace and go to the Servers tab

2

Click "+ Add server"

3

Enter the server name and HTTP endpoint URL

4

Optionally add a GitHub repo URL for version sync

5

Click "Add to registry"

!
The Gateway only supports HTTP remote servers with an endpoint URL. Local npx/stdio servers cannot be proxied — this is a protocol constraint of MCP, not a MCPNest limitation. Self-hosted HTTP servers work perfectly.

Adding a server from the marketplace

Any server on MCPNest with a remote endpoint (hosted servers) can be added directly. Go to the server page and look for "Add to Workspace" if you are signed in with Enterprise.

Server syncs to Gateway automatically

When you add a server with an HTTP endpoint, it is automatically synced to the Gateway's routing table. No manual configuration required.

Connect Claude or Cursor to the Gateway

Claude Desktop

claude_desktop_config.json
{
  "mcpServers": {
    "my-workspace": {
      "url": "https://mcpnest.io/api/gw/your-workspace-slug",
      "headers": {
        "Authorization": "Bearer mng_your_token_here"
      }
    }
  }
}

Cursor

.cursor/mcp.json
{
  "mcpServers": {
    "my-workspace": {
      "url": "https://mcpnest.io/api/gw/your-workspace-slug",
      "headers": {
        "Authorization": "Bearer mng_your_token_here"
      }
    }
  }
}

Test with curl

curl -X POST https://mcpnest.io/api/gw/your-workspace-slug \
  -H "Authorization: Bearer mng_your_token_here" \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list","params":{}}'

Expected response with no servers added yet:

{"jsonrpc":"2.0","id":1,"result":{"tools":[]}}

Gateway API Reference

Base URL: https://mcpnest.io/api/gw/{workspace-slug}

Auth: Authorization: Bearer mng_your_token

tools/list

Returns all tools available in the workspace, aggregated from all connected servers. Tools from different servers are merged into a single flat list.

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/list",
  "params": {}
}

Response:

{
  "jsonrpc": "2.0",
  "id": 1,
  "result": {
    "tools": [
      {
        "name": "get_dashboard",
        "description": "Fetch a Grafana dashboard by UID",
        "inputSchema": {
          "type": "object",
          "properties": {
            "uid": { "type": "string" }
          },
          "required": ["uid"]
        }
      }
    ]
  }
}

tools/call

Calls a specific tool. The Gateway routes automatically to the correct upstream server based on the tool name. You do not need to know which server provides which tool.

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "get_dashboard",
    "arguments": {
      "uid": "my-dashboard-uid"
    }
  }
}

Error codes

-32001
error
Workspace not found — check the slug in your URL
-32002
error
Unauthorized — check your Bearer token
-32601
error
Tool not found — tool name does not exist in any workspace server
-32700
error
Parse error — request body is not valid JSON

HTTP status codes

401
status
Invalid or missing Bearer token
404
status
Workspace slug not found or inactive
429
status
Rate limit exceeded — 200 req/min per IP

Audit Logs

Every tool call through the Gateway is logged automatically. View audit logs in your workspace dashboard under the "Audit Log" tab.

What is logged

workspace_id
uuid
Which workspace the call belongs to
server_slug
string
Which upstream server handled the call
tool_name
string
The tool that was called
status
number
200 success, 404 tool not found, 500 upstream error
latency_ms
number
End-to-end proxy latency in milliseconds
created_at
timestamp
When the call was made
I
No input parameters or output content are logged — only metadata. GDPR-safe by design. Logs are retained for 90 days.

Workspace event log

In addition to tool calls, all workspace management actions are logged: workspace created, server added/removed, member invited/removed, health checks, settings changes.

Gateway Security

Token security

Bearer tokens are never stored in plaintext. MCPNest stores only the SHA-256 hash. Token verification uses constant-time comparison to prevent timing attacks.

Token format
string
mng_ prefix + 48 hex characters (192 bits of entropy)
Storage
hash
SHA-256(token) stored in gateway_workspaces.token_hash
Comparison
crypto
timingSafeEqual() prevents timing side-channel attacks

Token rotation

Rotate your token in workspace settings at any time. The old token stops working immediately. Update your AI client configs with the new token.

Network security

Rate limiting
200 req/min
Per IP per workspace slug
HTTPS only
TLS
All Gateway traffic is encrypted in transit
No content logging
privacy
Tool inputs and outputs are never logged or stored

Three-layer security model

MCPNest Gateway implements Layer 1 of the emerging MCP security stack:

Layer 1 — Auth
done
Who is this agent? Centralized auth, logs, and sandboxing. MCPNest Gateway.
Layer 2 — Authorization
done
Per-member tokens, tool allowlists, enforcement toggle. Live in Enterprise workspaces.
Layer 3 — Trust
roadmap
Behavioral reputation, TSAI protocol integration. Coming Q3 2026.

Layer 2 — Member Tokens and Tool Allowlists

Layer 2 gives workspace owners granular control over which team members can call which tools. Each member gets their own Bearer token and an optional allowlist of permitted tools.

Member tokens

Member tokens are separate from the workspace admin token. They allow individual team members to connect to the Gateway with their own identity, enabling per-user audit logs and access control.

Format
string
mng_ prefix + 48 hex characters (same format as workspace token)
Storage
hash
SHA-256 hashed in gateway_member_tokens table
Scope
auth
Scoped to one workspace. Cannot be used across workspaces.
last_used_at
timestamp
Updated on every call for auditing

Generating a member token

1

Open your workspace and go to the Security tab

2

Under Member Tokens, select a team member

3

Click Generate Token

4

Copy the token immediately — it is shown only once

5

Share it securely with the member

Tool allowlists

When enforcement is enabled, each member can only call tools explicitly listed in their allowlist. Members with no rules get full access (open by default). Rules are per server slug and tool name.

Rule format
string
server_slug : tool_name — e.g. github-mcp : create_issue
No rules
open
Member has access to all tools (default behaviour)
With rules
restricted
Member can only call tools in their allowlist
Enforcement toggle
owner-only
Owner must enable enforcement in the Security tab

Error codes

-32001
error
Unauthorized — token missing or invalid
-32002
error
Workspace not found or inactive
-32003
error
Tool not allowed — member token blocked by allowlist
I
The workspace admin token always has full access regardless of allowlist rules.

Enterprise Workspaces

Workspaces are private MCP registries for your team. Each workspace gets its own Gateway endpoint, server registry, audit log, and team membership.

What a workspace includes

Gateway endpoint
URL
https://mcpnest.io/api/gw/{slug}
Bearer token
auth
SHA-256 hashed, constant-time verification
Private server registry
list
MCP servers approved for your team
Audit log
log
Every action and tool call
Health monitoring
status
Automated endpoint health checks
Team management
roles
Owner, Admin, Member roles

Creating a workspace

Go to mcpnest.io/workspace/new. Requires Enterprise plan.

Managing servers

Add servers in the Servers tab. Servers with HTTP endpoints are automatically synced to the Gateway. You can also set a tool prefix per server to avoid naming conflicts.

Team Management

Roles

Owner
role
Full access. Can delete workspace. Cannot be removed.
Admin
role
Can add/remove servers and members. Cannot delete workspace.
Member
role
Read-only access to workspace servers and configs.

Inviting members

1

Go to your workspace and click the Team tab

2

Click "+ Invite"

3

Enter the email address of the person to invite

4

They receive an email with a link to join

I
The invitee must already have an MCPNest account. Ask them to sign up at mcpnest.io first.

Removing members

Click "Remove" next to any member in the Team tab. Owners cannot be removed. The removal is logged in the workspace audit log.

Health Monitoring

MCPNest checks the health of your workspace servers by sending a tools/list request to each HTTP endpoint. Results are shown in the workspace Overview and Servers tabs.

Status values

Healthy
status
Server responded successfully to tools/list
Degraded
status
Server responded but with a non-OK status code
Down
status
Server did not respond within the 5-second timeout
Unknown
status
Not yet checked

Running a health check

Click "Health check" in the workspace Overview or Servers tab. Results update immediately. Health checks are also triggered automatically by the cron.

Self-Host Docker Deployment

Run MCPNest Gateway on your own infrastructure. Suitable for regulated industries where cloud-hosted tooling is not permitted.

Requirements

Docker + Compose
required
Docker Engine and Docker Compose installed
Domain
required
A domain with DNS pointing to your server
Supabase project
required
Free tier works
Google OAuth
required
For user authentication

Quick start

Terminal
git clone https://github.com/CodeMalasartes/mcpnest
cd mcpnest
cp .env.selfhost .env
# Edit .env with your values
docker compose up -d

Production with SSL

Terminal
# Place SSL certs in ./ssl/cert.pem and ./ssl/key.pem
# Edit nginx.conf: replace your-domain.com
docker compose --profile production up -d

Required environment variables

NEXT_PUBLIC_SUPABASE_URL
required
Your Supabase project URL
NEXT_PUBLIC_SUPABASE_ANON_KEY
required
Supabase anon key
SUPABASE_SERVICE_ROLE_KEY
required
Supabase service role key
NEXTAUTH_URL
required
Your deployment URL, e.g. https://mcp.company.com
NEXTAUTH_SECRET
required
Random secret: openssl rand -base64 32
GOOGLE_CLIENT_ID
required
Google OAuth client ID
GOOGLE_CLIENT_SECRET
required
Google OAuth client secret
STRIPE_SECRET_KEY
required
Stripe secret key for billing
CRON_SECRET
required
Secret for cron endpoints: openssl rand -hex 32

Verify deployment

curl http://localhost:3000/api/health
OK
The Gateway is stateless — all state lives in Supabase. You can run multiple Gateway instances behind a load balancer for high availability.

Hosted MCP Servers

MCPNest can host MCP servers on your behalf inside isolated Docker containers. Instead of running npx commands locally or maintaining your own server, MCPNest manages the container lifecycle, health checks, and exposes the server through your workspace Gateway endpoint.

How it works

Container per server
docker
Each hosted server runs in its own isolated container with resource limits
Bridge layer
http
stdio-based MCP servers are wrapped with an HTTP bridge (port 8080 inside container)
Gateway integration
auto
Hosted servers are automatically routed through your workspace Gateway endpoint
Health monitoring
auto
MCPNest polls each container and updates status in real time

Security isolation

No new privileges
security
Containers run with no-new-privileges:true
Capability drop
security
All Linux capabilities dropped; only CHOWN, SETUID, SETGID added back
Localhost only
network
Containers bind to 127.0.0.1 — never publicly exposed
tmpfs /tmp
security
noexec, nosuid, nodev — no executable code in tmp
Resource limits
enforced
CPU and memory always capped by plan profile
Image allowlist
security
Only MCPNest-verified images may be deployed

Resource profiles

Small
default
0.25 vCPU, 256 MB RAM — suitable for most MCP servers
Medium
standard
0.5 vCPU, 512 MB RAM — for data-intensive servers
Large
enterprise
1.0 vCPU, 1 GB RAM — for compute-heavy workloads

Instance limits by plan

Team
plan
Up to 3 running instances per workspace
Enterprise
plan
Up to 20 running instances per workspace

Deploying a hosted server

1

Open your workspace and go to the Hosted tab

2

Click Deploy Server

3

Select a server from the verified catalogue

4

Set any required environment variables (e.g. API keys)

5

Click Deploy — the container starts within 10 seconds

6

The server appears in your Gateway tools/list automatically

API — Deploy an instance

POST /api/hosted
curl -X POST https://mcpnest.io/api/hosted   -H "Authorization: Bearer <your-session-token>"   -H "Content-Type: application/json"   -d '{
    "workspace_id": "<workspace-uuid>",
    "server_slug": "filesystem-mcp",
    "env_vars": {}
  }'

API — List instances

GET /api/hosted
curl https://mcpnest.io/api/hosted?workspace_id=<uuid>   -H "Authorization: Bearer <your-session-token>"

API — Get logs

GET /api/hosted/:id/logs
curl "https://mcpnest.io/api/hosted/<instance-id>/logs?tail=100"   -H "Authorization: Bearer <your-session-token>"
I
Hosted MCP servers require Team or Enterprise plan. Environment variables are injected securely and never logged.

MCP Orchestrator

The MCP Orchestrator is an intelligent routing layer that sits above your hosted servers. When enabled, it aggregates tools from all running instances in your workspace into a single unified tool list, handles naming conflicts automatically, and routes each tool call to the correct container.

Architecture

Single endpoint
url
Your workspace Gateway URL remains unchanged — the orchestrator is transparent
Tool aggregation
auto
tools/list returns tools from all running hosted instances combined
Smart routing
auto
tools/call is routed to the instance that owns the tool
Tool namespacing
conflict
If two servers expose a tool with the same name, the orchestrator prefixes them: postgres_mcp__query, mysql_mcp__query
Cache
30s
Tool lists are cached for 30 seconds per workspace to reduce latency

Enabling the orchestrator

The orchestrator is enabled per workspace by MCPNest team when you activate Enterprise hosted servers. Once enabled, it activates automatically when you have at least one hosted instance running. No configuration required — your Gateway endpoint stays the same.

Fallback behaviour

If the orchestrator service is unreachable or your workspace has no running hosted instances, the Gateway automatically falls back to the standard direct fan-out routing. There is no downtime or manual intervention required.

Tool namespacing rules

No conflict
string
Tool name is used as-is: read_file
Conflict detected
string
Server slug prefixed with double underscore: filesystem_mcp__read_file
Slug sanitization
string
Hyphens in server slug are replaced with underscores for valid identifiers
I
The orchestrator requires the MCPNest Orchestrator service to be deployed and ORCHESTRATOR_URL to be configured. Available on Enterprise self-hosted deployments.

MCP Generator

Describe what you want in plain English. Claude generates a complete, real TypeScript MCP server — not a mockup, not a template. Working server with proper tool schemas, error handling, and install config.

1

Go to mcpnest.io/generate (sign in required)

2

Describe your MCP server in plain English

3

Press Generate or Cmd+Enter

4

Review the generated TypeScript code and install config

5

Copy both to a local file

6

Run: npx tsx server.ts

Example prompts

"A server that fetches real-time weather for any city"
"A server that searches my Notion workspace"
"A server that queries a PostgreSQL database"
"A server that sends Slack messages to a channel"
"A server that reads and writes to Google Sheets"

Running the generated server

Terminal
npm install @modelcontextprotocol/sdk zod tsx
npx tsx server.ts

Adding to Claude Desktop

claude_desktop_config.json
{
  "mcpServers": {
    "my-server": {
      "command": "npx",
      "args": ["tsx", "server.ts"]
    }
  }
}
!
Always review generated code before running. For prompts in languages other than English, use the English version for best results.

AI Discovery

Describe what you want to do in plain English. MCPNest finds the best matching servers from the registry and explains how to install them.

1

Go to mcpnest.io/discover

2

Describe your use case or what you want Claude to be able to do

3

MCPNest recommends the best matching servers with quality scores

4

Click to install any recommended server directly

"I want Claude to be able to query my database"
"Help me find tools for web scraping and browser automation"
"I need to connect Claude to my GitHub repositories"

Submit a Server

Add your MCP server to the MCPNest registry. Free plan: up to 3 servers. Pro plan: unlimited.

1

Sign in to MCPNest

2

Go to mcpnest.io/publish

3

Enter your GitHub repository URL

4

If your server has an HTTP endpoint, enter the URL and click "Fetch Tools" to auto-discover capabilities

5

Select compatible clients (Claude, Cursor, Windsurf, VS Code, ChatGPT, Gemini)

6

Click "Submit for Review"

I
Submissions are reviewed within 24 hours. You will receive an email when your server is approved.

Getting a higher Quality Score

Keep commits recent
signal
Commit at least once a month to show active maintenance
Add install configs
signal
Include working configs for at least Claude Desktop and Cursor
Write a good README
signal
Explain what the server does, what tools it exposes, and what credentials it needs
Get verified
signal
Submit your server to the official Anthropic registry for the verified badge

Publisher Analytics

After your server is approved, view analytics at mcpnest.io/dashboard.

Weekly install trends
chart
Track install growth over time
Quality Score history
chart
See how your score evolves as you maintain the server
Page views
number
How many developers viewed your server page
Client breakdown
chart
Which AI clients your users install for
Country breakdown
map
Where your users are located

Registry API — Overview

Query the MCPNest registry programmatically. Free, no API key required. CORS enabled for browser requests.

Base URL
https://mcpnest.io/api/v1
Auth required
No
Rate limit
100 requests/minute per IP
Format
JSON

GET /servers

GET/api/v1/serversList and search MCP servers

Query parameters

q
string
Full-text search across name, description, and tags
category
string
Filter by category: Development, DevOps, AI/ML, Database, Productivity
verified
boolean
true to return only servers from the official Anthropic registry
sort
string
stars (default), installs, newest, name
limit
number
Results per page. Default 20, max 100
page
number
Page number. Default 1

Example

curl "https://mcpnest.io/api/v1/servers?q=postgres&verified=true&limit=5"

Response

{
  "servers": [
    {
      "slug": "postgres-mcp",
      "name": "PostgreSQL MCP",
      "description": "Connect Claude to your PostgreSQL database",
      "category": "Database",
      "tags": ["postgres", "sql", "database"],
      "github_stars": 1240,
      "install_count": 8430,
      "is_verified": true,
      "quality_score": 88,
      "tool_count": 8,
      "compatibility": { "claude_desktop": true, "cursor": true }
    }
  ],
  "meta": { "total": 142, "page": 1, "limit": 5, "pages": 29 }
}

GET /servers/:slug

GET/api/v1/servers/:slugGet a single server by slug
curl "https://mcpnest.io/api/v1/servers/mcp-grafana"

Response fields

slug
string
Unique URL-safe identifier
name
string
Display name
description
string
Short description
long_description
string
Full description
category
string
Primary category
tags
string[]
Searchable tags
github_url
string
GitHub repository URL
endpoint_url
string | null
Remote HTTP endpoint for hosted servers
install_configs
object
Install configs per client (claude_desktop, cursor, windsurf, vscode)
compatibility
object
Client compatibility flags
github_stars
number
GitHub star count
install_count
number
Number of tracked installs
tool_count
number | null
Number of tools exposed (null if not yet fetched)
is_verified
boolean
Listed in the official Anthropic registry
quality_score
number
Quality score 0-100 (A=90+, B=75+, C=60+, D=45+, F=below)
language
string
Primary programming language
created_at
string
ISO 8601 timestamp

GET /categories

GET/api/v1/categoriesList all categories with server counts
curl "https://mcpnest.io/api/v1/categories"
{
  "categories": [
    { "name": "Development", "count": 2341 },
    { "name": "DevOps", "count": 892 },
    { "name": "Database", "count": 654 }
  ]
}

Errors

400
Bad Request
Missing or invalid parameters
404
Not Found
Server or resource not found
429
Too Many Requests
Rate limit exceeded. Wait 60 seconds.
500
Server Error
Internal error. Try again.

JavaScript example

const res = await fetch(
  'https://mcpnest.io/api/v1/servers?q=github&limit=5'
)
const { servers, meta } = await res.json()
console.log(servers[0].name) // "GitHub MCP"
console.log(meta.total)      // 47

Python example

import requests

res = requests.get(
    'https://mcpnest.io/api/v1/servers',
    params={'q': 'postgres', 'verified': 'true', 'limit': 10}
)
for server in res.json()['servers']:
    print(server['name'], server['github_stars'])

Troubleshooting

Claude Desktop not loading server

Validate config
fix
Run your JSON through mcpnest.io/config-validator
Fully restart
fix
Quit Claude from the system tray, not just close the window
Check file path
fix
Verify the config file location for your OS
Check npx
fix
Run the npx command manually in your terminal to see errors

Gateway returns 401 Unauthorized

Header format
fix
Authorization: Bearer mng_your_token (not just the token)
Workspace slug
fix
Check the slug in the URL matches your workspace exactly
Token rotation
fix
Token may have been rotated — generate a new one in workspace settings

Gateway returns empty tools list

HTTP endpoint required
fix
Only servers with endpoint URLs work in the Gateway
Server health
fix
Check server health in your workspace dashboard
Endpoint reachable
fix
Confirm the server endpoint is publicly accessible

Generator shows error

Use English
fix
Prompts in other languages may cause JSON parse failures
Shorten prompt
fix
Keep descriptions under 500 characters
Sign in
fix
Generator requires sign-in

Server not appearing in search

Review time
fix
Newly submitted servers take up to 24 hours to review
Check status
fix
Ensure status is active in your publisher dashboard

Still stuck?

Email us or open an issue on GitHub. Enterprise customers get priority support.