Skip to main content
Every server audited on mcpscore.dev gets a badge URL keyed by the server’s URL, not by any single audit. Embed it once and it shows the latest completed score from then on.
Both URLs carry your server’s address, URL-encoded. The report page on mcpscore.dev has this snippet prefilled. Copy it from there.

How it stays fresh

The image and the link are both keyed by the server URL in the query string, never by a single audit. Re-audit the server on mcpscore.dev or from CI and every README embed shows the new score on its own. The link always opens the server’s latest report. The image is cached for 5 minutes, so a new score shows up within that. A server that has never been audited gets a neutral “no data” badge, so the embed never breaks. Requesting the badge never triggers an audit. It is a read-only lookup, so a high-traffic README costs your server nothing.

When it looks wrong

The badge says “no data” but you audited the server
  • Cause: the url parameter does not match the audited URL exactly. https://example.com/mcp and https://example.com/mcp/other are different servers to the badge.
  • Fix: copy the snippet from the report page, which URL-encodes the exact address.
The badge shows an old score
  • Cause: the 5-minute cache, or the newer audit ran against a different URL.
  • Fix: wait, then check the URL in the query string against the audit you expect.

What’s next

GitHub Action

Re-audit on every pull request so the badge tracks your main branch

Scoring methodology

What the number on the badge measures