Skip to main content
← All rules

mcp-scan rule

Official MCP server

official-serverinfo

What mcp-scan saw

The registry scanner resolved the package name, stripped the version tag, and found it in OFFICIAL_SERVERS, a hardcoded set of @modelcontextprotocol/ package names carrying a LAST_UPDATED date in the source. This is the second branch of the chain, so a malicious-list match takes precedence.

Why it fires

It is a positive marker, reported so a clean server is visibly clean rather than absent from the report. It also suppresses the unverified-source finding, since that rule is the final else of the same chain. Being on this list does not exempt the server from any other scanner: secrets, permissions, and prompt injection are all still evaluated.

When this is a false positive

  • The match is on package name alone. A private registry mirror, a vendored copy, or an internal fork published under the same name is labeled official by the same check.
  • The set is a static list with a LAST_UPDATED date, so a genuinely official package added upstream after that date reports as unverified-source instead.
  • Official does not mean safe as configured. An official filesystem server pointed at your home directory still produces broad-filesystem-access and excessive-permissions findings, and those are the ones that matter.

How to fix it

  1. Read the rest of the findings for this server. The official marker says nothing about how you configured it.
  2. Verify the package resolves from the public npm registry rather than a mirror, if your environment uses one.
  3. Pin the version in your args so an upstream change does not arrive silently.
  4. No action is required for this finding itself.