A TypeScript implementation of the Model Context Protocol Registry, providing:
- Registry Mirror Application - Next.js web app deployed on Vercel
- Reusable API Server Package - npm package for adding registry functionality to your own apps
- Validation Tools - Schema validation and linting for server.json files
https://registry.teamspark.ai/
- Registry Explorer - Browse and search MCP servers from the official registry
- Server Details - View full metadata, packages, and configuration options
- Configuration Generator - Generate MCP client configs with custom settings
- Server.json Tester - Validate and lint server.json files
- API Access - Full REST API at
/api/v0/*endpoints
This monorepo contains reusable TypeScript packages:
Schema validation and linting for MCP server.json files. Works in both Node.js and browser environments.
Key Features:
- Multi-version schema support with automatic version detection
- Comprehensive linting rules for best practices
- Detailed error messages with JSON path references
- CLI tool and programmatic API
→ Installation, Usage & Rule Reference
Core API server implementing the MCP Registry Protocol. The protocol implementation is completely independent of both the web framework and data storage mechanism.
Three-Layer Architecture:
- Protocol Core: Framework-agnostic service (no HTTP/framework dependencies)
- Data Sources: Pluggable interface - file, database, HTTP, custom
- Framework Adapters: Thin wrappers - Next.js, Express, etc.
This separation enables the same protocol implementation to work across all frameworks and storage options.
→ Installation, Usage & API Reference
Official Registry (GitHub)
↓ (daily sync via GHA)
server-registry.json
↓ (loaded by FileDataSource)
In-Memory Cache
↓ (served by RegistryService)
API Endpoints
↓ (consumed by frontend)
Next.js Application
- Frontend is 100% API-based - No direct file access from client
- Pluggable data sources - Swap FileDataSource for database, gateway, etc.
- Server-side validation - Schemas bundled at build time
- Serverless-ready - Works on Vercel, AWS Lambda, etc.
A GitHub Action runs daily to:
- Download latest
server-registry.jsonfrom official registry - Sync schema versions from
modelcontextprotocol/static - Commit changes and trigger deployment
See .github/workflows/download-registry.yml
- Node.js 18+
- pnpm 10+
# Install dependencies
pnpm install
# Build packages
pnpm --filter mcp-registry-validator build
pnpm --filter mcp-registry-server build
# Run dev server
pnpm run dev/app # Next.js application
/api # API routes
/components # React components
/servers/[serverId]/[versionId] # Dynamic server detail pages
/packages
/mcp-registry-validator # Validation package
/mcp-registry-server # API server package
/registry # Protocol references
/schema # JSON schemas (versioned)
openapi.yaml # API specification
/public
server-registry.json # Registry data (synced daily)
# Run the validator
cd packages/mcp-registry-validator
pnpm dev validate path/to/server.json
# Test API endpoints
curl 'http://localhost:3000/api/v0/servers?limit=5'
curl 'http://localhost:3000/api/v0/servers/{serverId}/versions'
# Validate the entire registry
pnpm run registry:validate- Deployment Guide - Deployment configuration and automated updates
- Registry Reference - OpenAPI spec and schema management
- Official Protocol - MCP Registry protocol specification
Production Deployment: https://registry.teamspark.ai/
- Registry mirror application with API and web UI
mcp-registry-validator- Schema validation and linting packagemcp-registry-server- Core API server with Next.js adapter- Server-side validation endpoints
- Automated daily data and schema syncing
- Production deployment with in-memory caching
See docs/deployment.md for deployment details and todo.md for future enhancement ideas.
This is an alternative TypeScript implementation of the official MCP Registry protocol. For protocol discussions and issues, see the official registry project.
MIT