Skip to main content
Glama

quijutsu-mcp

A read-only Model Context Protocol server for QuiJutsu, an anime trivia PvP game. It lets any MCP client (Claude Desktop, Claude Code, Cursor, and others) browse QuiJutsu's Community Asset Library, see the trust record behind each entry, and read player, tournament and contributor leaderboards.

It needs no account and no credentials. It talks to the live game through the same publishable key the website ships to every browser, and that key can only reach a small, deliberately public API.

Quickstart

npx -y quijutsu-mcp

Claude Desktop (claude_desktop_config.json) or Claude Code (.mcp.json):

{
  "mcpServers": {
    "quijutsu": {
      "command": "npx",
      "args": ["-y", "quijutsu-mcp"]
    }
  }
}

Or with the Claude Code CLI:

claude mcp add quijutsu -- npx -y quijutsu-mcp

Streamable HTTP is also built in:

PORT=3000 npx -y -p quijutsu-mcp quijutsu-mcp-http   # MCP endpoint: http://localhost:3000/mcp

Related MCP server: @pocket-agent/mcp-server

Tools

All six are read-only (readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: false) and return structuredContent alongside a JSON text block.

Tool

What it answers

search_assets

Search the library by name, type, anime title or Spirit Level. Paged, with total_count.

get_asset_provenance

Where an entry came from, how it was reviewed, how strong its source is, and how its Spirit Level was decided, including the full public vote tally.

list_anime_titles

Titles with public assets, titles open for contribution, and counts by type and Spirit Level.

get_leaderboard

Top players: casual by season points (monthly, annual, lifetime) or ranked by ELO.

get_tournament_leaderboard

Tournament standings with win/loss, ELO, accuracy and response time; filter by country. Defaults to the World Anime Tournament.

get_contributor_leaderboard

Players who build the library, ranked by published entries, sources found and accurate reviews.

Spirit Level is how deep a fan needs to be to know something: 1 is common knowledge, 8 is deep lore. It starts as a reviewer estimate and is taken over by the community vote; a level is certified once it crosses the vote threshold.

Example

You: Is QuiJutsu's entry for Lelouch trustworthy, and who decided how hard it is?

The model calls get_asset_provenance with {"name": "Lelouch"}:

{
  "asset": { "asset_type": "character", "name": "Lelouch Lamperouge", "anime_title": "Code Geass" },
  "provenance": {
    "origin": "community",
    "review_status": "passed",
    "evidence_tier": "major",
    "question_eligible": true
  },
  "spirit_level": {
    "spirit_level": 5,
    "spirit_level_source": "community",
    "spirit_level_community_score": 5,
    "spirit_level_vote_count": 5,
    "spirit_level_certified": false,
    "public_poll": {
      "total_votes": 2,
      "tally": [{ "level": 2, "votes": 1 }, { "level": 5, "votes": 1 }],
      "threshold": 10000,
      "certified": false
    }
  }
}

So: a player proposed it, independent reviewers confirmed it against a major source, the game may build questions on it, and its level 5 rating comes from community votes but is not yet certified.

How access is limited

MCP client ──stdio/HTTP──▶ quijutsu-mcp ──publishable key──▶ PostgREST /rpc/<fn>
                                                               │
                                     SECURITY DEFINER functions granted to anon
                                                               │
                                     tables: RLS on, no anon policy, no anon grant
  • Every underlying table has row-level security with no anonymous policy. Querying a table directly with this key returns a permission error.

  • The public surface is a short list of SECURITY DEFINER Postgres functions with EXECUTE granted to anon. This server calls only those, through src/client.ts.

  • Rows are projected to an allow-list of fields (pick() in src/client.ts), not stripped. If a function later gains a column such as a user id, it does not reach the client.

  • The server refuses to start if given a secret or service-role key.

  • Trivia questions, options and answers are the game itself and are never exposed.

  • npm run smoke calls every tool against the live API and fails if a response contains a user id, email, question field or per-viewer field.

Configuration

Nothing is required. To point at a different QuiJutsu-compatible backend, set:

Variable

Default

QUIJUTSU_SUPABASE_URL

QuiJutsu's live project

QUIJUTSU_SUPABASE_ANON_KEY

its publishable key

QUIJUTSU_DEFAULT_TOURNAMENT_ID

the World Anime Tournament

PORT

3000 (HTTP transport only)

The private sibling

QuiJutsu also runs a private MCP server, quijutsu-question-composer, that lets authorised admins compose trivia questions with an AI client. It is the harder problem: OAuth 2.1 against Supabase Auth with JWKS-verified tokens, time-limited leases on blueprint targets so two composers never write the same question, idempotency keys on every write so retries are safe, and a multi-stage server-side evaluation pipeline before anything reaches human review. This public server shares its conventions (Zod schemas with bounds and descriptions, tool annotations, a uniform isError envelope) without any of its write access.

Development

npm install     # also builds via prepare
npm run smoke   # live end-to-end test over stdio

License

Code: MIT. Community Asset Library data is published under the Open Database License (ODbL) 1.0; attribute it to QuiJutsu (quijutsu.com) when you reuse it.

Available Tools

6 tools
get_asset_provenanceExplain where a QuiJutsu asset came from and how far to trust itA
Read-onlyIdempotent

Explain the trust record behind one Community Asset Library entry. Returns origin (community = proposed by a player and confirmed by independent reviewers; imported = seeded by QuiJutsu), review_status, evidence_tier (how strong the cited source is), question_eligible (whether the game may build trivia on it), and the Spirit Level with its source, community score, the full public vote tally and whether it has crossed the certification threshold. Use this when a user asks whether an entry is reliable, who decided its difficulty, or why it is in the library. Look the asset up by name; pass asset_id to pick one when a name matches several.

NameRequiredDescriptionDefault
nameYesAsset name, e.g. "Lelouch Lamperouge". Partial names work.
asset_idNoPick one asset when the name matches several (from search_assets).
asset_typeNoNarrow the lookup to one kind of asset.
anime_titleNoNarrow the lookup to one anime.

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly/idempotent/non-destructive, so the bar is lower; the description adds substantive semantics beyond them, defining origin values (community = player-proposed with independent reviewers vs imported = seeded by QuiJutsu) and what question_eligible and the certification threshold mean. It does not cover error behavior for a missing asset or pagination, but this is a single-record read so those are minor.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the purpose, then the return payload, then the usage triggers. The middle sentence is long because it enumerates many returned fields, but each field listed is meaningful and nothing is padding.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

There is no output schema, so the description carries the full burden of explaining return values, and it does so completely for a read-only provenance lookup: origin, review status, evidence tier, eligibility, Spirit Level, vote tally, and certification. Combined with the annotations covering the safety profile, an agent has everything it needs.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents name partial matching, asset_id disambiguation, and the asset_type enum. The description only restates the name/asset_id disambiguation pattern, adding little the schema doesn't say.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Uses a specific verb ('Explain') on a specific resource ('the trust record behind one Community Asset Library entry') and enumerates the exact fields returned, so an agent knows precisely what it gets. It doesn't explicitly contrast itself with search_assets, which is the sibling an agent might confuse it with on a name lookup.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

'Use this when a user asks whether an entry is reliable, who decided its difficulty, or why it is in the library' gives three concrete trigger questions. The name-then-asset_id disambiguation note adds operational guidance, but no explicit when-not or named alternative (e.g. use search_assets to browse) is given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_contributor_leaderboardGet the QuiJutsu community contributor leaderboardA
Read-onlyIdempotent

Players who build the Community Asset Library, ranked by score. published = entries they proposed that went live, sourced = entries they found the citation for, reviews = reviews that matched how a submission settled. trust_level is their reviewer standing.

NameRequiredDescriptionDefault
limitNoContributors to return (1-50).
periodNoTime window.all

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly/idempotent/non-destructive, so safety is covered; the description adds genuine behavioral context by explaining what the ranked metrics mean and defining trust_level. It still omits sort direction and whether ties are broken, which matters for interpreting a ranking.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three short sentences, front-loaded with the resource and ranking basis, and every clause defines a term an agent would otherwise misread (published, sourced, reviews, trust_level). No filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description usefully documents the returned concepts, which is the main gap it needs to fill for a two-param read tool. Remaining gaps are ordering and sibling differentiation, both minor for this tool's complexity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, including the enum values and the 1-50 bound, so the schema carries parameter meaning. The description adds nothing about limit or period, making 3 the correct baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific resource and scope: players who build the Community Asset Library, ranked by score. That distinguishes it in substance from get_tournament_leaderboard, though it never names a sibling or explicitly contrasts itself.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is only implied by the subject matter — an agent can infer this is the contributor board rather than the tournament board, but there is no explicit when-to-use, when-not, or pointer to get_leaderboard/get_tournament_leaderboard as alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_leaderboardGet the QuiJutsu player leaderboardA
Read-onlyIdempotent

Top QuiJutsu players. casual ranks by season points (monthly, annual or lifetime); ranked ranks by ELO rating, which ignores period. Returns usernames, scores and ranks only.

NameRequiredDescriptionDefault
modeNocasual = season points, ranked = ELO.casual
limitNoPlayers to return (1-50).
periodNoSeason window for casual. Ignored for ranked.monthly

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly, idempotent, non-destructive and closed-world, so the safety profile is covered. The description adds genuinely new behavioral context: the tool ranks by different metrics per mode, one of which ignores a parameter, and the payload is deliberately minimal ('usernames, scores and ranks only').

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three short sentences, front-loaded with the resource and then the mode rules, with zero filler. Every clause carries information an agent needs — including the return-field note that has no output schema to back it up.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description usefully names the returned fields, and with all-optional parameters and full schema coverage there is little else to explain. Minor gaps remain: sort direction is never stated explicitly (only implied by 'Top'), and no note on behavior when a mode has no ranked data.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% and both enums are documented in the schema, including 'Ignored for ranked' on period, so the baseline is 3. The description restates those semantics rather than extending them — it adds no detail on ordering direction, tie-breaking, or whether defaults behave as expected.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific resource ('Top QuiJutsu players') and immediately explains the two ranking dimensions, so the verb+resource is unambiguous. Sibling differentiation is implicit rather than explicit — 'players' naturally contrasts with get_tournament_leaderboard and get_contributor_leaderboard, but the description never names them.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It tells the agent how to choose between modes ('casual ranks by season points... ranked ranks by ELO') and that period is irrelevant for ranked, which is useful conditional guidance. It gives no guidance on when to prefer this tool over the tournament or contributor leaderboard siblings, leaving that selection to inference from the tool name alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_tournament_leaderboardGet a QuiJutsu tournament leaderboardA
Read-onlyIdempotent

Standings for a QuiJutsu tournament: rank, wins, losses, ELO, answer accuracy and average response time per player, plus total players, matches and a per-country player count. Defaults to the World Anime Tournament (25 Oct 2026). Filter by country to get a national leaderboard.

NameRequiredDescriptionDefault
limitNoPlayers to return (1-100).
countryNoISO 3166-1 alpha-2 code, e.g. "US", for a national leaderboard.
tournament_idNoTournament ID. Omit for the World Anime Tournament.

TDQS

A4.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint, idempotentHint and destructiveHint=false, so the safety profile is covered structurally. The description adds the default-tournament behavior, which is genuine behavioral context, but says nothing about pagination/ordering of the ranked list or rate limits. Adequate but not rich.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with what the resource is and what it returns, then defaults and filtering. No filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description usefully enumerates the returned fields and totals, which is exactly what's needed here. Remaining gap is ordering/pagination of the ranked list, minor for a read-only leaderboard with a limit default.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3; the description goes beyond it by restating the default-tournament semantics for tournament_id and the national-leaderboard effect of country in the context of the returned data. limit's effect on the standings list is implied but not elaborated.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource ('Standings for a QuiJutsu tournament') and enumerates exactly what each row contains (rank, wins, losses, ELO, accuracy, response time) plus the aggregate fields. This clearly distinguishes it from the sibling get_leaderboard and get_contributor_leaderboard, which are not tournament-scoped.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explains the default (World Anime Tournament) and the country-filter path to a national leaderboard, which tells the agent how to invoke it for both use cases. It doesn't explicitly contrast against sibling leaderboard tools, so it stops short of a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_anime_titlesList anime in the QuiJutsu asset libraryA
Read-onlyIdempotent

List the anime titles that have public assets (with counts), the titles currently open for community contributions, and a breakdown of public assets by type and by Spirit Level. Call this first to learn which titles search_assets can filter on.

NameRequiredDescriptionDefault

No parameters

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare read-only, idempotent, closed-world, non-destructive, so the safety profile is covered without description help. The description adds genuinely new context by outlining what the response contains (counts, contribution-open titles, breakdown dimensions) — valuable given there is no output schema — though it says nothing about result size or pagination for what could be a long catalog listing.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single dense sentence that front-loads the resource and ends with actionable routing to search_assets; nothing is wasted. It is slightly packed with parallel list items, but each clause maps to a real part of the output.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter read tool with no output schema, describing the shape of the result is the main burden, and the description does that across all three output groupings. The only gap is guidance on result volume or how to handle an empty/unknown-title response, which is minor here.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The tool takes zero parameters, so there is nothing for the description to disambiguate; baseline is 4. No parameter statements are needed or missing.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Specific verb (list) plus precisely enumerated resource contents: titles with public assets and counts, titles open to community contributions, and a breakdown by type and Spirit Level. It is immediately distinguishable from search_assets, which it explicitly names as the downstream consumer of this list.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

"Call this first to learn which titles search_assets can filter on" gives explicit sequencing advice and names the alternative, which is more than most definitions offer. It stops short of stating when not to use it (e.g. when the caller already knows the title), so it is clear but not exhaustive.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_assetsSearch the QuiJutsu Community Asset LibraryA
Read-onlyIdempotent

Search the public QuiJutsu Community Asset Library: characters, abilities, locations, weapons and other named things from anime, each with its review status and community Spirit Level (1-8, how deep a fan needs to be to know it). Filter by name, type, anime title or Spirit Level. Returns one page plus total_count for paging.

NameRequiredDescriptionDefault
limitNoPage size (1-200).
offsetNoRows to skip, for paging.
searchNoName text to match, e.g. "Lelouch".
anime_idNoAnime ID, if already known. Takes precedence over anime_title.
asset_typeNoRestrict to one kind of asset.
anime_titleNoAnime title, e.g. "Code Geass". Use list_anime_titles to see valid titles.
spirit_levelNoOnly assets at this Spirit Level (1 = everyone knows it, 8 = deep lore).

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare this a safe, idempotent, non-destructive read, so the bar is lower. The description still adds real value beyond them: it discloses the return shape (one page plus total_count for paging) and defines the domain-specific Spirit Level scale (1-8, how deep a fan needs to be to know it), which no annotation conveys.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three tight sentences: what the library holds, how to filter it, and what comes back. The most decision-relevant content (the searchable scope and the Spirit Level definition) is front-loaded, and every clause earns its place with no filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description steps up by stating that results are one page plus total_count, which is exactly what paging needs. Combined with the fully documented 7-parameter schema and complete annotations, an agent has enough to call it correctly; only the absence of sibling routing and filter-interaction notes keeps it from a 5.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% and every parameter carries its own description, example, or bounds, so baseline 3 applies. The description echoes four of the seven filters but adds no syntax, matching semantics, or precedence detail beyond what the schema already states — notably it omits any mention of limit/offset or the anime_id-over-anime_title precedence rule documented in the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Names a specific verb and resource ("Search the public QuiJutsu Community Asset Library") and enumerates exactly what is searchable (characters, abilities, locations, weapons) plus what is attached to each result (review status, Spirit Level). The purpose is unmistakable, though the description itself never names a sibling tool to contrast with, leaving that differentiation to the schema note about list_anime_titles.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The phrase "Filter by name, type, anime title or Spirit Level" implies when the tool is appropriate, and the paging note implies continuation usage. There is no explicit when-not guidance and no routing to alternatives — e.g. nothing in the description points at list_anime_titles or get_asset_provenance, even though a caller unsure about a title string or wanting provenance detail needs that routing.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 6 tool updatesv0.1.0
    • First observedget_asset_provenance
    • First observedget_contributor_leaderboard
    • First observedget_leaderboard
    • First observedget_tournament_leaderboard
    • First observedlist_anime_titles
    • First observedsearch_assets

TDQS

A4.1/5.0

Scored across 6 tools

Disambiguation4/5

Each tool has a distinct target: asset search vs. provenance lookup vs. title discovery vs. three separate leaderboard populations. The only mild overlap is between search_assets and list_anime_titles (both help discovery), but descriptions explicitly position list_anime_titles as a 'call this first' helper and search_assets as filterable paging, so misselection is unlikely. The three leaderboard tools are clearly differentiated by audience (players, tournament, contributors).

Naming Consistency5/5

All six names follow a clean verb_noun snake_case pattern (search_assets, get_asset_provenance, list_anime_titles, get_leaderboard, get_tournament_leaderboard, get_contributor_leaderboard). The leaderboard family shares a predictable prefix/suffix structure, making relationships obvious.

Tool Count5/5

Six tools is well-scoped for a read-only community-asset-and-leaderboard lookup server. Each tool covers a distinct query surface (assets, provenance, titles, three leaderboard types) with no filler.

Completeness4/5

The read-only lookup lifecycle is largely covered: discovery, search, provenance/trust, and leaderboards. Minor gaps exist — there is no direct get_asset-by-id tool (only search plus optional asset_id on provenance) and no tools for contributing or reviewing assets, which the descriptions imply is a core community workflow.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    C
    maintenance
    Enables discovery and querying of public OpenBind structure-affinity datasets, experimental binding events, benchmark results, and live Fragalysis targets and observations through read-only REST endpoints without requiring an API key.
    -
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables clients to search, read, and verify sealed forecasts and public-record cards, inspect resolution calendars, engine strands, sensor alerts, and wire headlines, and check whether stories are independent events or echoes. All access is read-only and requires no key, account, or dependencies.
    9 npm
    1
    Apache 2.0