Naar inhoud

MCP Observatory

Real-time dashboard van het Model Context Protocol-ecosysteem.

  • Astro
  • TypeScript
  • SQLite
  • Node
  • Semgrep

Live

Wat het doet

Het MCP-ecosysteem groeit sneller dan iemand het kan overzien. Servers verschijnen op npm, op PyPI, in het officiële register, op Smithery en op mcp.so, vaak alle vijf tegelijk en onder net iets andere namen. Wie wil weten wat een server precies mag, waar zijn code vandaan komt en of er iets mis mee is, zit al snel in een handvol tabbladen te vergelijken.

MCP Observatory verzamelt die bronnen, brengt dubbele vermeldingen terug tot één canonieke server, en analyseert de broncode statisch. Wat eruit komt is een dashboard: releases, een dependency-graph, analyses van capabilities en permissies, samengestelde risicoscores en een live event-stream. Het is een site, geen tool die je installeert.

Wat je er ziet

De kern is de dashboardpagina met de KPI's, de ranglijst en de stream. Daaromheen zitten de pagina's waar je echt gaat zoeken: een facetbrowser op capabilities en permissies, een detail per server met tabbladen voor overzicht, capabilities, dependencies, releases, activiteit en een beveiligingsdossier, en profielen per maintainer.

De beveiligingssectie is de grootste: CVE's, een risico-ranglijst, supply chain, kaping-doelwitten, tool-veiligheid, capability-drift, naamgeving en impersonatie, licenties, verlating, trends over tijd en de uitkomsten van de code-analyse.

Hoe het werkt

Tien pollers halen elk hun eigen bron op, met een supervisor die de eerste ticks spreidt, elke run in een try/catch wikkelt en de uitkomst wegschrijft met exponentiële backoff. Die tabel staat open op /feeds, zodat je kunt zien welke bron wanneer voor het laatst is gelukt.

Identiteitsresolutie brengt een server die op vijf plekken staat terug tot één id, in vaste volgorde: expliciete overrides, een match op repo_url over bronnen heen, een exacte vouw op bron en genormaliseerde slug, en anders bron:naam. Servers die dezelfde repo delen binnen één bron zijn monorepo-broers en worden juist níét samengevoegd. Ingetrokken id's blijven doorverwijzen, zodat oude URL's een 301 geven in plaats van een 404.

De code-analyse draait in een aparte sidecar. Semgrep krijgt zijn eigen container, zodat een zware scan de event-loop van de worker niet kan platleggen. Verrijking blokkeert nooit: valt de scanner weg, dan gaat de rest gewoon door.

Mogelijkheden

SectieWat je er vindt
DashboardKPI's, ranglijst, live stream, graph en capabilities op één pagina
ServersFacetbrowser op capabilities en permissies, met detail per server
GraphDependency- en verwantschapsgraph, knopen gekleurd en geschaald op risicoscore
BeveiligingCVE's, supply chain, kaping, drift, naamgeving, licenties, verlating en trends
MaintainersIndex en profiel per onderhouder
FeedsGezondheid van elke poller, als publieke verantwoording
APISSE-stream, statistieken, server-lookup, batch en zoeken

Bronnen

npm, PyPI, GitHub, Smithery, het officiële MCP-register, mcp.so, een clientregister en CVE-feeds. De site legt zelf uit hoe de pijplijn werkt op /methodology, wat er onder de motorkap zit op /colophon, en welke bronnen op dat moment gezond zijn op /feeds.