registry/data/seed.json
adam jones 53d67be5bd
fix: seed from production API by default to ensure validation passes (#611)
Fixes #584

## Summary

Changes the default seed source from local file to production API with
filtering to keep startup fast. This ensures local development
environments mirror production behavior and all seed data passes
validation by default.

## Changes

- **Default seed source**:
`https://registry.modelcontextprotocol.io/v0/servers?search=domdomegg`
(4 servers)
  - Fast startup (~1-2 seconds)
  - All data passes validation
  - Production-like environment by default
  
- **Updated `data/seed.json`**: Now contains filtered production data (4
servers) for offline development

- **Clear documentation**: Added comments in `docker-compose.yml` and
updated `README.md` and `.env.example` explaining:
  - How to use offline mode: `MCP_REGISTRY_SEED_FROM=data/seed.json`
- How to fetch all servers:
`MCP_REGISTRY_SEED_FROM=https://registry.modelcontextprotocol.io/v0/servers`

- **Validation stays enabled**:
`MCP_REGISTRY_ENABLE_REGISTRY_VALIDATION=true` by default

## Why this approach

Per @domdomegg's comment in #584, the goal is to make local environments
as similar to production as possible. Using the production API with
filtering achieves this while keeping startup fast.
2025-10-03 23:58:37 +03:00

154 lines
5.1 KiB
JSON

[
{
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-09-29/server.schema.json",
"name": "io.github.domdomegg/airtable-mcp-server",
"description": "Read and write access to Airtable database schemas, tables, and records.",
"repository": {
"url": "https://github.com/domdomegg/airtable-mcp-server.git",
"source": "github"
},
"version": "1.7.2",
"packages": [
{
"registryType": "npm",
"identifier": "airtable-mcp-server",
"version": "1.7.2",
"runtimeHint": "npx",
"transport": {
"type": "stdio"
},
"environmentVariables": [
{
"description": "Airtable personal access token (e.g., pat123.abc123). Create at https://airtable.com/create/tokens/new with scopes: schema.bases:read, data.records:read, and optionally schema.bases:write and data.records:write.",
"isRequired": true,
"isSecret": true,
"name": "AIRTABLE_API_KEY"
}
]
},
{
"registryType": "oci",
"identifier": "domdomegg/airtable-mcp-server",
"version": "1.7.2",
"runtimeHint": "docker",
"transport": {
"type": "stdio"
},
"environmentVariables": [
{
"description": "Airtable personal access token (e.g., pat123.abc123). Create at https://airtable.com/create/tokens/new with scopes: schema.bases:read, data.records:read, and optionally schema.bases:write and data.records:write.",
"isRequired": true,
"isSecret": true,
"name": "AIRTABLE_API_KEY"
}
]
},
{
"registryType": "mcpb",
"identifier": "https://github.com/domdomegg/airtable-mcp-server/releases/download/v1.7.2/airtable-mcp-server.mcpb",
"version": "1.7.2",
"fileSha256": "8220de07a08ebe908f04da139ea03dbfe29758141347e945da60535fb7bcca20",
"transport": {
"type": "stdio"
}
}
]
},
{
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-09-29/server.schema.json",
"name": "io.github.domdomegg/airtable-mcp-server",
"description": "Read and write access to Airtable database schemas, tables, and records.",
"repository": {
"url": "https://github.com/domdomegg/airtable-mcp-server.git",
"source": "github"
},
"version": "1.7.3",
"packages": [
{
"registryType": "npm",
"identifier": "airtable-mcp-server",
"version": "1.7.3",
"runtimeHint": "npx",
"transport": {
"type": "stdio"
},
"environmentVariables": [
{
"description": "Airtable personal access token (e.g., pat123.abc123). Create at https://airtable.com/create/tokens/new with scopes: schema.bases:read, data.records:read, and optionally schema.bases:write and data.records:write.",
"isRequired": true,
"isSecret": true,
"name": "AIRTABLE_API_KEY"
}
]
},
{
"registryType": "oci",
"identifier": "domdomegg/airtable-mcp-server",
"version": "1.7.3",
"runtimeHint": "docker",
"transport": {
"type": "stdio"
},
"environmentVariables": [
{
"description": "Airtable personal access token (e.g., pat123.abc123). Create at https://airtable.com/create/tokens/new with scopes: schema.bases:read, data.records:read, and optionally schema.bases:write and data.records:write.",
"isRequired": true,
"isSecret": true,
"name": "AIRTABLE_API_KEY"
}
]
},
{
"registryType": "mcpb",
"identifier": "https://github.com/domdomegg/airtable-mcp-server/releases/download/v1.7.3/airtable-mcp-server.mcpb",
"version": "1.7.3",
"fileSha256": "0f28a9129cfebd262dfb77854c872355d21401bb3e056575b3027081f5d570ca",
"transport": {
"type": "stdio"
}
}
]
},
{
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-09-29/server.schema.json",
"name": "io.github.domdomegg/time-mcp-nuget",
"description": "Get the current UTC time in RFC 3339 format.",
"repository": {
"url": "https://github.com/domdomegg/time-mcp-nuget.git",
"source": "github"
},
"version": "1.0.8",
"packages": [
{
"registryType": "nuget",
"identifier": "TimeMcpServer",
"version": "1.0.8",
"runtimeHint": "dnx",
"transport": {
"type": "stdio"
}
}
]
},
{
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-09-29/server.schema.json",
"name": "io.github.domdomegg/time-mcp-pypi",
"description": "Get the current UTC time in RFC 3339 format.",
"repository": {
"url": "https://github.com/domdomegg/time-mcp-pypi.git",
"source": "github"
},
"version": "1.0.6",
"packages": [
{
"registryType": "pypi",
"identifier": "time-mcp-pypi",
"version": "1.0.6",
"runtimeHint": "python",
"transport": {
"type": "stdio"
}
}
]
}
]