Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

io.github.smeet666/mcp-metacritic

NPM · MCP-METACRITIC · 2 COMPONENTS · SCANNED AUG 12

Search Metacritic films, shows and games, read scores and critic reviews. No API key.

+35 this week 81 Trust /100
Trust breakdown (6 categories)

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score →

Supply Chain Security98
  • No malware found by supply-chain analysis.Pass
  • No known CVEs affecting this package version or its production dependencies.Pass
  • No install/post-install scripts declared.Pass
  • 30 of 96 dependencies flagged as unhealthy. View diagnostics → Partial
Provenance & Transparency100
  • Source repository is publicly reachable at the declared URL. View diagnostics → Pass
  • Cryptographically verified build provenance (signed, bound to smeet666/mcp-metacritic). View diagnostics → Pass
  • Clear OSI-approved license (MIT).Pass
  • Actively maintained (last published 4 days ago).Pass
  • Publishes a security disclosure policy (SECURITY.md).Pass
Schema Quality & AI Usability65
  • AI-judged instruction clarity (excellent).Pass
  • Context-footprint check failed: tool/resource definitions use about 1115 tokens (~278/item across 4 items; 4 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management27
  • Stability observed for 8 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 100% of tool parameters carry a description.Pass
  • Structured output schemas are declared (100% of tools); any adoption earns full credit.Pass
Capabilities100
  • Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Install

Add this component to your MCP client. Where a client-specific snippet is available, pick your client below and copy it straight into your config; otherwise use the connection detail shown.

npm · mcp-metacritic

# add to Claude Code
claude mcp add smeet666-mcp-metacritic -- npx -y mcp-metacritic
# add to Codex CLI
codex mcp add smeet666-mcp-metacritic -- npx -y mcp-metacritic
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "smeet666-mcp-metacritic": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "mcp-metacritic"
      ],
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add smeet666-mcp-metacritic --command npx --arg -y --arg mcp-metacritic
# ~/.hermes/config.yaml
mcp_servers:
  smeet666-mcp-metacritic:
    command: "npx"
    args: ["-y", "mcp-metacritic"]
// mcp.json
{
  "mcpServers": {
    "smeet666-mcp-metacritic": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-metacritic"
      ]
    }
  }
}
Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 11 Aug 26 +1
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 9 Aug 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 13 to 17. That category is still filling its 30-day observation window: 4 days of observed history at the previous scan, 5 at this one. The score rises as the window fills, whether or not the server changes.

  • 7 Aug 26 +33
    • Known CVEs: partial → pass security
    • Security disclosure: unverified → fail functional
    • Security disclosure: unverified → pass functional
    • Tool coverage: unverified → 100 functional
    • Stability: unverified → 0.10 functional
    • MCP protocol: unverified → pass functional
    • First check of Schema quality: fail functional
    • First check of Schema quality: fail functional
    • First check of Schema quality: excellent functional
    • First check of Tool coverage: 100 functional
    • First check of Tool coverage: 100 functional
    • Dependency health: partial → 0.85 functional
    • Package version: 1.1.2 → 1.2.0 functional
  • 6 Aug 26 0
    • Security disclosure: fail → unverified functional
  • 5 Aug 26 −2
    • Stability: Stability not yet verified: not enough scan history yet (needs a 30-day window). security
    • MCP protocol: unverified → pass functional
    • Tool coverage: unverified → 100 functional
    • First check of Schema quality: fail functional
    • First check of Schema quality: fail functional
    • First check of Tool coverage: 100 functional
    • First check of Schema quality: excellent functional
    • First check of Tool coverage: 100 functional
    • Package version: 1.1.1 → 1.1.2 functional
  • 4 Aug 26 48

    First indexed and scored.

Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 12 Aug 2026 · Analysed npm/mcp-metacritic@1.2.0

Provenance Verified

A signed build attestation was found and verified, binding this exact artifact to the source repository it claims to come from.

Result Verified
Ecosystem npm
Reason Verified
Discovered via Registry attestation endpoint
Source repo smeet666/mcp-metacritic
Certificate issuer https://token.actions.githubusercontent.com
Certificate SAN https://github.com/smeet666/mcp-metacritic/.github/workflows/publish.yml@refs/tags/v1.2.0
Rekor log index 2369114343
Predicate type https://slsa.dev/provenance/v1
Subject digest sha512:8aa64b5b955e9acc8a2dc8157e6aa37c6f133fa00769853d2ebf0299e1daa984818b7422ac7e005e105551dd041dd149b948b87729cf3ed2040405cb2
Dependencies 96 packages
Packages resolved 96
Stale 30
Tree resolution Complete
MCP tools · 4 exposed · ~910 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability.

Tool Tokens
browse_titles ~227

List films, shows or games by score, by release date or by current popularity. Use this when there is no specific title to look up: best rated, newest, what people are looking at now. Filter by genre with a single name such as Horror, Comedy or Action. Sorting by score returns the all-time ranking, which is dominated by older titles: combine with a genre to narrow it. Scores come back on their own scales, 100 for critics and 10 for users. Paging is approximate: Metacritic does not order tied entries stably, so an entry can appear on two consecutive pages. Deduplicate by slug rather than counting rows.

NameTypeReqDescription
genrestringSingle genre name, such as Horror. Omit for all genres.
kindstringWhich catalogue to list.
limitintegerHow many rows to return.
offsetintegerHow many rows to skip, for paging.
sortstring'score' is the critic ranking, 'recent' is by release date, 'popular' is current attention.
NameTypeReqDescription
genrestring|nullyes
kindstringyes
next_offsetyesPass as 'offset' for the next page. Tied entries are not ordered stably upstream, so deduplicate by slug across pages.
notesarrayyes
offsetintegeryes
resultsarrayyes
sortstringyes
total_availableintegeryesHow many entries match upstream, which is the size of what this samples.

No examples provided.

get_reviews ~258

Read individual reviews of a Metacritic entry, from critics or from users. Get the slug and kind from search_titles first. Filter with 'sentiment' to read only what praised or panned it, which Metacritic groups itself. Metacritic returns a fixed sample rather than the full list, so 'total_available' is usually far larger than what comes back, and there is no way to page past the sample. Critic reviews carry the publication and a link to the original article: quote them with both. Critic scores run to 100 and user scores to 10, so do not average the two together.

NameTypeReqDescription
kindstringyesWhich catalogue the entry belongs to. Pass it back with the slug.
limitintegerHow many reviews to return from the sample Metacritic publishes.
offsetintegerHow many of the sampled reviews to skip. The sample itself cannot be paged past.
sentimentstringWhich slice to read. Metacritic groups reviews this way itself.
slugstringyesIdentifier from search_titles, such as 'the-matrix'.
sourcestring'critic' is the professional press, 'user' is the audience.
NameTypeReqDescription
kindstringyes
next_offsetyesPass as 'offset' for the next page.
notesarrayyes
offsetintegeryes
reviewsarrayyes
sentimentstringyes
slugstringyes
sourcestringyes
source_urlstringyesMetacritic page these reviews belong to. Cite it when an article link is missing.
total_availableintegeryesHow many reviews Metacritic counts in total. Usually far more than it serves here.

No examples provided.

get_title ~238

Read one Metacritic entry by slug and kind, both from search_titles. Sections are opt-in because a full entry is large: 'basic' and 'scores' are the default and cover most questions. 'scores' fetches the critic and audience breakdowns, each with its own scale, so never compare the two numbers directly. Sections gate the payload: asking for 'scores' alone returns no description, and 'basic' alone returns no scores. 'networks' lists the broadcasters of a show; 'where_to_watch' costs an extra request and covers films and shows only. A long description paginates: when 'truncated' is true, call again with 'offset' set to 'next_offset'.

NameTypeReqDescription
kindstringyesWhich catalogue the entry belongs to. Pass it back with the slug.
max_charsintegerCharacter budget for the description.
offsetintegerWhere to resume the description.
sectionsarrayWhich parts to return. Each extra section beyond the default costs a request.
slugstringyesIdentifier from search_titles, such as 'the-matrix'.
NameTypeReqDescription
awardsarrayOne tally per ceremony. Metacritic publishes no per-category detail.
critic_scoreyes
descriptionstring|nullyes
duration_minutesyesRuntime in minutes for a film, or the length of a typical episode for a show.
genresarrayyes
imdb_idstring|nullyesIMDb identifier, usable to cross-reference other sources.
networksarrayBroadcasters, for shows.
next_offsetyesPass as 'offset' to read the rest.
notesarrayyes
offsetintegeryes
productionarray
returned_charsintegeryes
taglinestring|nullyes
titleobjectyes
total_charsintegeryesLength of the full description.
truncatedbooleanyes
user_scoreyes
where_to_watcharray

No examples provided.

search_titles ~187

Search Metacritic for films, shows and games by title. Returns one compact row per match, carrying the critic Metascore, so a question about the critical verdict needs no second call. Search rows carry no audience score: use get_title for that, or browse_titles, which does return it. Use the slug and kind with get_title for the full entry, or with get_reviews for what critics wrote. There is no paging: 'limit' is the only lever, and results always start from the most relevant match. This searches titles only. It cannot find an entry from a plot detail, a person or a studio.

NameTypeReqDescription
kindstringRestrict results to one catalogue. Metacritic searches all three at once.
limitintegerHow many rows to return.
querystringyesTitle or part of one, for example 'the matrix'.
NameTypeReqDescription
notesarrayyes
querystringyes
resultsarrayyes
total_availableintegeryesHow many entries Metacritic counted. For a query of several words it counts entries matching any one of them, so the number is far larger than the useful matches and should not be read as a match cou…

No examples provided.