registry.md•1.73 kB
# MCP Registry publishing checklist
This project publishes to the Model Context Protocol (MCP) Registry via the
official `mcp-publisher` CLI. The server name is anchored to the PyPI package
(`uniprot-mcp`) and an optional remote HTTP deployment.
## 1. Prepare server.json
```json
{
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-10-17/server.schema.json",
"name": "io.github.josefdc/uniprot-mcp",
"title": "UniProt MCP",
"description": "Read-only UniProtKB via MCP (entries, sequences, features, GO, taxonomy, ID mapping).",
"version": "0.1.0",
"packages": [
{
"registryType": "pypi",
"identifier": "uniprot-mcp",
"version": "0.1.0",
"transport": { "type": "stdio" }
}
],
"remotes": [
{
"type": "streamable-http",
"url": "https://mcp.example.com/mcp"
}
]
}
```
Adjust the `version` and optional remote URL before publishing. If a remote is
not provided, remove the `remotes` array entirely.
## 2. Validate against the schema
```bash
uv run python - <<'PY'
import json, urllib.request
from jsonschema import validate
schema_url = "https://static.modelcontextprotocol.io/schemas/2025-10-17/server.schema.json"
schema = json.loads(urllib.request.urlopen(schema_url).read())
data = json.load(open("server.json"))
validate(instance=data, schema=schema)
print("server.json valid ✅")
PY
```
## 3. Publish with mcp-publisher
```bash
brew install mcp-publisher # or download from GitHub releases
mcp-publisher login github # authenticate for io.github.* namespace
mcp-publisher publish
```
## 4. Verify
Search the registry API (or UI) for `uniprot-mcp` and confirm both the PyPI
package entry and optional remote URL are visible.