Skip to content

API Reference

Complete reference for all Seed endpoints.

API Architecture Overview

Endpoint Categories

Authentication Endpoints

Protected MCP endpoints that require valid JWT tokens.

  • POST /mcp - MCP JSON-RPC endpoint

OAuth Endpoints

OAuth 2.1 flow implementation for Claude clients.

  • POST /oauth/register - Dynamic client registration
  • GET /oauth/authorize - Authorization endpoint
  • POST /oauth/token - Token endpoint
  • POST /oauth/revoke - Token revocation

Discovery Endpoints

OAuth 2.0 discovery, health monitoring, and observability.

  • GET /.well-known/oauth-authorization-server - OAuth server metadata
  • GET /.well-known/oauth-protected-resource - Resource server metadata
  • GET /health - Liveness probe (health check)
  • GET /health/ready - Readiness probe (dependency health)
  • GET /metrics - Prometheus metrics

Authentication

Most endpoints require authentication via JWT bearer tokens:

http
Authorization: Bearer <JWT_TOKEN>

Response Formats

JSON-RPC 2.0 (MCP Endpoints)

All MCP endpoints use JSON-RPC 2.0 format:

Success:

json
{
  "jsonrpc": "2.0",
  "result": { /* response data */ },
  "id": 1
}

Error:

json
{
  "jsonrpc": "2.0",
  "error": {
    "code": -32001,
    "message": "Unauthorized",
    "data": {
      "reason": "invalid_token",
      "details": "Additional context"
    }
  },
  "id": null
}

OAuth 2.0 (OAuth Endpoints)

OAuth endpoints use RFC 6749 error format:

json
{
  "error": "invalid_client",
  "error_description": "Client not found or expired"
}

For complete error handling documentation, see Error Handling Architecture.

Rate Limiting

MCP Endpoints (POST /mcp, DELETE /mcp):

  • Per-IP: 100 requests/minute
  • Global: 10,000 requests/minute

OAuth Registration (POST /oauth/register):

  • Per-IP: 10 registrations/hour
  • Global: 1,000 registrations/hour

OAuth Authorization (GET /oauth/authorize):

  • Per-IP: 10 requests/minute
  • Global: 1,000 requests/minute

Rate limited requests return 429 with Retry-After header and X-RateLimit-* headers.

For detailed rate limiting information, see Rate Limiting Architecture.

Explore Further

Status Codes

CodeMeaningWhen Used
200SuccessRequest completed successfully
201CreatedResource created (OAuth client registration)
204No ContentSuccessful deletion (MCP session termination)
302FoundOAuth redirect
400Bad RequestInvalid request format or parameters
401UnauthorizedMissing or invalid JWT token
404Not FoundEndpoint or resource not found
429Too Many RequestsRate limit exceeded
500Internal Server ErrorServer-side error

Released under the MIT License.