DocumentationAPI Reference

API Reference

Complete REST API documentation for MCPSafe

Quick Start

Base URL

https://api.mcpsafe.com

Authentication

Include your API key in the request header:

X-API-Key: mcp_xxx...

Rate Limits

Check response headers for limit info:

X-RateLimit-Limit: 100

X-RateLimit-Remaining: 95

X-RateLimit-Reset: 1706000000

Servers API

Browse, search, and get details about MCP servers in the registry

GET
/api/v1/servers

List servers with pagination, filtering, and sorting

GET
/api/v1/servers/:idOrSlug

Get detailed information about a specific server

GET
/api/v1/servers/:slug/vulnerabilities

Get paginated list of vulnerabilities for a server

GET
/api/v1/servers/:slug/history

Get historical security scores over time

GET
/api/v1/servers/search

Full-text search across servers with relevance ranking

GET
/api/v1/servers/stats

Get aggregate statistics about the registry

POST
/api/v1/servers/compare

Compare up to 4 servers side-by-side

Code Examples

// Using fetch API
const API_KEY = 'mcp_xxxxxxxx_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx';
const BASE_URL = 'https://api.mcpsafe.com';

// List servers
const listServers = async () => {
  const response = await fetch(`${BASE_URL}/api/v1/servers?page=1&limit=10`);
  return response.json();
};

// Get server details
const getServer = async (slug) => {
  const response = await fetch(`${BASE_URL}/api/v1/servers/${slug}`);
  return response.json();
};

// Submit URL for scanning
const scanUrl = async (url) => {
  const response = await fetch(`${BASE_URL}/api/v1/scans/url`, {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json',
      'X-API-Key': API_KEY,
    },
    body: JSON.stringify({ url }),
  });
  return response.json();
};

// Check scan status
const getScanStatus = async (scanId) => {
  const response = await fetch(`${BASE_URL}/api/v1/scans/${scanId}`, {
    headers: { 'X-API-Key': API_KEY },
  });
  return response.json();
};

Response Format

All API responses follow a consistent JSON structure with success, data, and meta fields.

GET /api/v1/servers/npm-filesystem-mcp

Example successful response

{
  "success": true,
  "data": {
    "id": "550e8400-e29b-41d4-a716-446655440000",
    "name": "filesystem-mcp",
    "slug": "npm-filesystem-mcp",
    "sourceType": "npm",
    "description": "A file system MCP server for local operations",
    "category": "file-system",
    "language": "typescript",
    "stars": 1250,
    "downloads": 45000,
    "status": "verified",
    "security": {
      "score": 92,
      "grade": "A",
      "vulnerabilities": {
        "critical": 0,
        "high": 0,
        "medium": 2,
        "low": 3,
        "total": 5
      }
    },
    "quality": {
      "score": 88,
      "grade": "A",
      "breakdown": {
        "maintenance": 90,
        "popularity": 85,
        "documentation": 92,
        "compatibility": 85
      }
    }
  },
  "meta": {
    "requestId": "req_abc123",
    "timestamp": "2026-01-18T10:30:00.000Z"
  }
}

Rate Limits by Plan

PlanPer 15 MinutesPer Day
Free
1001000
Pro
5005000
Team
150015000
Enterprise
CustomCustom

Ready to integrate?

Get your API key and start building with MCPSafe