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.
Available components
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
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
claude mcp add smeet666-mcp-metacritic -- npx -y mcp-metacritic
codex mcp add smeet666-mcp-metacritic -- npx -y mcp-metacritic
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"smeet666-mcp-metacritic": {
"type": "local",
"command": [
"npx",
"-y",
"mcp-metacritic"
],
"enabled": true
}
}
} openclaw mcp add smeet666-mcp-metacritic --command npx --arg -y --arg mcp-metacritic
mcp_servers:
smeet666-mcp-metacritic:
command: "npx"
args: ["-y", "mcp-metacritic"] {
"mcpServers": {
"smeet666-mcp-metacritic": {
"command": "npx",
"args": [
"-y",
"mcp-metacritic"
]
}
}
} 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.
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 |
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.
browse_titles Browse rankings ~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.
| Name | Type | Req | Description |
|---|---|---|---|
| genre | string | – | Single genre name, such as Horror. Omit for all genres. |
| kind | string | – | Which catalogue to list. |
| limit | integer | – | How many rows to return. |
| offset | integer | – | How many rows to skip, for paging. |
| sort | string | – | 'score' is the critic ranking, 'recent' is by release date, 'popular' is current attention. |
| Name | Type | Req | Description |
|---|---|---|---|
| genre | string|null | yes | – |
| kind | string | yes | – |
| next_offset | – | yes | Pass as 'offset' for the next page. Tied entries are not ordered stably upstream, so deduplicate by slug across pages. |
| notes | array | yes | – |
| offset | integer | yes | – |
| results | array | yes | – |
| sort | string | yes | – |
| total_available | integer | yes | How many entries match upstream, which is the size of what this samples. |
No examples provided.
get_reviews Read 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.
| Name | Type | Req | Description |
|---|---|---|---|
| kind | string | yes | Which catalogue the entry belongs to. Pass it back with the slug. |
| limit | integer | – | How many reviews to return from the sample Metacritic publishes. |
| offset | integer | – | How many of the sampled reviews to skip. The sample itself cannot be paged past. |
| sentiment | string | – | Which slice to read. Metacritic groups reviews this way itself. |
| slug | string | yes | Identifier from search_titles, such as 'the-matrix'. |
| source | string | – | 'critic' is the professional press, 'user' is the audience. |
| Name | Type | Req | Description |
|---|---|---|---|
| kind | string | yes | – |
| next_offset | – | yes | Pass as 'offset' for the next page. |
| notes | array | yes | – |
| offset | integer | yes | – |
| reviews | array | yes | – |
| sentiment | string | yes | – |
| slug | string | yes | – |
| source | string | yes | – |
| source_url | string | yes | Metacritic page these reviews belong to. Cite it when an article link is missing. |
| total_available | integer | yes | How many reviews Metacritic counts in total. Usually far more than it serves here. |
No examples provided.
get_title Read an entry ~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'.
| Name | Type | Req | Description |
|---|---|---|---|
| kind | string | yes | Which catalogue the entry belongs to. Pass it back with the slug. |
| max_chars | integer | – | Character budget for the description. |
| offset | integer | – | Where to resume the description. |
| sections | array | – | Which parts to return. Each extra section beyond the default costs a request. |
| slug | string | yes | Identifier from search_titles, such as 'the-matrix'. |
| Name | Type | Req | Description |
|---|---|---|---|
| awards | array | – | One tally per ceremony. Metacritic publishes no per-category detail. |
| critic_score | – | yes | – |
| description | string|null | yes | – |
| duration_minutes | – | yes | Runtime in minutes for a film, or the length of a typical episode for a show. |
| genres | array | yes | – |
| imdb_id | string|null | yes | IMDb identifier, usable to cross-reference other sources. |
| networks | array | – | Broadcasters, for shows. |
| next_offset | – | yes | Pass as 'offset' to read the rest. |
| notes | array | yes | – |
| offset | integer | yes | – |
| production | array | – | – |
| returned_chars | integer | yes | – |
| tagline | string|null | yes | – |
| title | object | yes | – |
| total_chars | integer | yes | Length of the full description. |
| truncated | boolean | yes | – |
| user_score | – | yes | – |
| where_to_watch | array | – | – |
No examples provided.
search_titles Search Metacritic ~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.
| Name | Type | Req | Description |
|---|---|---|---|
| kind | string | – | Restrict results to one catalogue. Metacritic searches all three at once. |
| limit | integer | – | How many rows to return. |
| query | string | yes | Title or part of one, for example 'the matrix'. |
| Name | Type | Req | Description |
|---|---|---|---|
| notes | array | yes | – |
| query | string | yes | – |
| results | array | yes | – |
| total_available | integer | yes | How 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.