Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 16 additions & 3 deletions .github/workflows/mcp-registry.yml
Original file line number Diff line number Diff line change
Expand Up @@ -124,7 +124,11 @@ jobs:
id-token: write
env:
MCP_PUBLISHER_VERSION: "1.8.1"
RETIRED_SERVER_NAMES: "io.github.lbesecker195/mcp-registry-search"
# Space-separated. Each is marked deleted before the current name is
# published, freeing the endpoint URL it claimed.
RETIRED_SERVER_NAMES: >-
io.github.lbesecker195/mcp-registry-search
io.github.lbesecker195/mcp-registry-search-find-mcp-servers-discover-install-mcp-tools-directory-catalog-marketplace
steps:
- uses: actions/checkout@v5

Expand Down Expand Up @@ -153,8 +157,17 @@ jobs:
esac
retire=""
for old in $RETIRED_SERVER_NAMES; do
state=$(curl -s "$api/$(enc "$old")/versions/latest?include_deleted=true" \
| jq -r '._meta["io.modelcontextprotocol.registry/official"].status // "absent"')
# Retry: a misread here matters. Reading "absent" from an error page
# skips the retire, and the publish then fails on the endpoint URL
# the old name still holds.
for attempt in 1 2 3 4; do
code=$(curl -s -o state.json -w '%{http_code}' "$api/$(enc "$old")/versions/latest?include_deleted=true")
case "$code" in
200) state=$(jq -r '._meta["io.modelcontextprotocol.registry/official"].status // "unknown"' state.json); break ;;
404) state=absent; break ;;
*) state="unknown (HTTP $code)"; sleep $((attempt * 5)) ;;
esac
done
echo "$old -> $state"
if [ "$state" != deleted ] && [ "$state" != absent ]; then retire="$retire $old"; fi
done
Expand Down
2 changes: 1 addition & 1 deletion Instructions.md
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@ and their pages link back to the official entry.
## Listed in the official MCP Registry

The registry's own MCP endpoint is published to the official MCP Registry as
`io.github.lbesecker195/mcp-registry-search-find-mcp-servers-discover-install-mcp-tools-directory-catalog-marketplace`, from `server.json` in this folder.
`io.github.lbesecker195/mcp-registry-search-directory`, from `server.json` in this folder.
The `publish-mcp-registry` job in the workflow publishes it after each
successful deploy, authenticating with GitHub OIDC, so there is no secret to
manage. It skips versions already published; bump `version` in `server.json`
Expand Down
8 changes: 4 additions & 4 deletions docs/github-mcp-registry-request.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,17 +4,17 @@ GitHub's MCP registry (github.com/mcp) is curated. Servers must first be in the
official MCP Registry; onboarding is then requested in GitHub's discussion:
https://github.com/github/github-mcp-server/discussions/1257

Post this as a comment there once `io.github.lbesecker195/mcp-registry-search-find-mcp-servers-discover-install-mcp-tools-directory-catalog-marketplace`
Post this as a comment there once `io.github.lbesecker195/mcp-registry-search-directory`
is live in the official registry:
https://registry.modelcontextprotocol.io/v0.1/servers/io.github.lbesecker195%2Fmcp-registry-search-find-mcp-servers-discover-install-mcp-tools-directory-catalog-marketplace/versions/latest
https://registry.modelcontextprotocol.io/v0.1/servers/io.github.lbesecker195%2Fmcp-registry-search-directory/versions/latest

---

Hi! Requesting onboarding for a remote server that's published in the
official MCP Registry:

**io.github.lbesecker195/mcp-registry-search-find-mcp-servers-discover-install-mcp-tools-directory-catalog-marketplace**
https://registry.modelcontextprotocol.io/v0.1/servers/io.github.lbesecker195%2Fmcp-registry-search-find-mcp-servers-discover-install-mcp-tools-directory-catalog-marketplace/versions/latest
**io.github.lbesecker195/mcp-registry-search-directory**
https://registry.modelcontextprotocol.io/v0.1/servers/io.github.lbesecker195%2Fmcp-registry-search-directory/versions/latest

It's an MCP server for finding other MCP servers. Agents can search more than
31,000 servers by task, tool name or tag, get install configs, and submit new
Expand Down
2 changes: 1 addition & 1 deletion lib/mcp_registry_web/llms.ex
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ defmodule McpRegistryWeb.Llms do
With Claude Code: `claude mcp add --transport http mcp-registry-search #{base}/mcp`.
Any other client: add a remote server with `"type": "http"` and that URL.
It is also listed in the official MCP Registry as
`io.github.lbesecker195/mcp-registry-search-find-mcp-servers-discover-install-mcp-tools-directory-catalog-marketplace`.
`io.github.lbesecker195/mcp-registry-search-directory`.

Tools:

Expand Down
2 changes: 1 addition & 1 deletion server.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
"name": "io.github.lbesecker195/mcp-registry-search-find-mcp-servers-discover-install-mcp-tools-directory-catalog-marketplace",
"name": "io.github.lbesecker195/mcp-registry-search-directory",
"title": "MCP Registry Search: Find, Discover & Install MCP Servers & Tools | Directory, Catalog, Marketplace",
"description": "MCP registry & directory: search, find & install 31k+ MCP servers & tools. Catalog and marketplace.",
"version": "1.0.1",
Expand Down
Loading