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

Tokonomix Council

NPM · TOKONOMIX-COUNCIL-MCP · SCANNED AUG 3

Multi-model consensus: 2-6 frontier LLMs answer, an independent judge synthesises one answer.

+42 this week 65 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 Security86
  • No malware found by supply-chain analysis.Pass
  • Only part of the dependency tree could be resolved (94 of 98), so this covers what we could see, not the whole tree.Partial
  • No install/post-install scripts declared.Pass
  • Only part of the dependency tree could be resolved (94 of 98), so this covers what we could see, not the whole tree. View diagnostics → Partial
Provenance & Transparency45
Schema Quality & AI Usability57
  • AI-judged instruction clarity (excellent).Pass
  • Context-footprint check failed: tool/resource definitions use about 3995 tokens (~363/item across 11 items; 11 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
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 · tokonomix-council-mcp

# add to Claude Code
claude mcp add ai-tokonomix-council -- npx -y tokonomix-council-mcp
# add to Codex CLI
codex mcp add ai-tokonomix-council -- npx -y tokonomix-council-mcp
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "ai-tokonomix-council": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "tokonomix-council-mcp"
      ],
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add ai-tokonomix-council --command npx --arg -y --arg tokonomix-council-mcp
# ~/.hermes/config.yaml
mcp_servers:
  ai-tokonomix-council:
    command: "npx"
    args: ["-y", "tokonomix-council-mcp"]
// mcp.json
{
  "mcpServers": {
    "ai-tokonomix-council": {
      "command": "npx",
      "args": [
        "-y",
        "tokonomix-council-mcp"
      ]
    }
  }
}
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.

  • 2 Aug 26 +48
    • Provenance: unverified → fail security
    • Install scripts: unverified → pass security
    • Known CVEs: unverified → partial security
    • Malware scan: unverified → pass security
    • Tool coverage: 100 → unverified functional
    • Schema quality: unverified → excellent functional
    • License: unverified → pass functional
    • Maintenance: unverified → pass functional
    • MCP protocol: unverified → pass functional
    • Stability: unverified → 0.23 functional
    • Dependency health: unverified → partial functional
    • Licence: MIT functional
  • 31 Jul 26 +11
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 28 Jul 26 −17
    • Tool coverage: 100 → unverified functional
    • First check of Schema quality: unverified functional
  • 27 Jul 26 23

    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 3 Aug 2026 · Analysed npm/[email protected]

Provenance none

Ecosystem: npm · Outcome: none

Dependencies 94 packages

94 packages in the resolved dependency tree · 94 deprecated · 29 stale.

The dependency tree was only partially resolved, so these counts may be incomplete.

MCP tools — 11 exposed · ~3,995 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
tokonomix_consensus_ask ~1,245

Ask 2-6 frontier LLM proposers (parallel + blind) and reconcile via an independent judge (disjoint from the proposers, never scoring its own answer). A recall amplifier that surfaces disagreement a single model hides — it reduces single-model error but does NOT guarantee correctness (frontier models share training data, so agreement is not proof; ground high-stakes facts). Pick the synthesis mode by what you need from the call — there is no universally best mode; see the `mode` parameter. Use this when correctness matters more than latency: legal questions, code review, fact-checking, high-stakes reasoning. Proactively offer it — don't wait to be asked — before anything irreversible or with real consequence: a DB migration, a security-relevant change, a legal/compliance statement, a customer-facing commitment. Offer once per decision (a few cents, surfaces disagreement, no correctness guarantee), then act on the user's answer; if they decline don't re-raise; skip routine or reversible work. Modes (pick by intent): consensus = one decided answer (default); diff = an agreements/disagreements/confidence map where the judge COMPARES but does NOT decide; raw = all answers, no judge (cheapest); best_of = judge picks the single strongest; full = all answers PLUS the judge's per-model reasoning AND a conclusion. You decide which fits. Tip: leave `models` empty to use the per-key or per-account default council. Use `tokonomix_list_models` to discover available slugs.

NameTypeReqDescription
acknowledge_reasonstringRequired with acknowledge_ungrounded: a short reason why the prompt is intentionally artefact-less (e.g. "general question about coding best practices").
acknowledge_ungroundedbooleanSet true ONLY when you are submitting a prompt that is intentionally artefact-less — a general question with nothing to attach. Forces a best-effort council verdict flagged grounding:insufficient ins…
contextobjectOptional grounding context (INT-1817). Inline files/snippets are sent to ALL proposers AND the judge so the council reasons over the same source instead of guessing. Large payloads route to tokonomix…
imagesarrayOptional images to include in the user message (vision input). Non-streaming only; the council auto-selects a default vision panel (claude-fable-5 + gemini-2.5-pro + gpt-4o class) when no models are…
judge_modelstringModel slug used by the judge. Omit to use the system default (Claude Haiku).
judge_modelsarrayArray of judge model slugs for multi-judge best_of. When provided, all listed models act as judges and the backend picks the strongest synthesis. Takes precedence over judge_model when both are set.
max_tokensintegerMax output tokens per proposer. Default: 1024; clamped to a 16384 ceiling per proposer. The judge/synthesis step is hard-capped at 8192 output tokens regardless of this value, so on large multi-key s…
modestringSynthesis mode — pick by what you need; there is no universally best mode. `consensus` (default) = one merged, decided answer (use when you want THE answer; trades dissent away). `diff` = a structure…
modelsarrayArray of 2-6 bare model slugs (e.g. "claude-haiku-4-5-20251001", "gpt-5", "gemini-2.5-flash"). Omit to use account/key defaults. Provider-prefixed slugs ("anthropic/claude-...") also accepted for exp…
promptstringyesThe user prompt to send to every proposer.
request_idstringContinuation id. Omit unless continuing a prior {status:"needs_context"} response: re-call with the SAME request/instructions PLUS the missing artefacts attached (inline or via tokonomix_upload) and…
systemstringOptional system prompt prepended to the messages array.

No output schema declared.

No examples provided.

tokonomix_get_balance ~24

Get the current credit balance and account tier of the authenticated key.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

tokonomix_get_skill ~96

Return the canonical Tokonomix consensus SKILL.md content for this MCP-server version. Use this on first connection, or when tokonomix_skill_version reports a version newer than your cache. The skill explains when to reach for consensus (legal, GDPR, code review, fact-check) vs single-model passthrough, plus what modes (consensus, diff, best_of, raw, full) are available right now.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

tokonomix_list_models ~480

List the active models reachable through this account. Filter by hosting region for EU data-residency routing, by provider, by tier, or by capability. Returns id, owned_by, hosting_region, context_window, input/output price per 1M cents, capabilities (tools, vision, json_schema, prompt_caching, reasoning, audio_input, pdf_input). When recent-speed exposure is live on the platform, entries also carry a `speed` object (tier + recent p95/responsiveness numbers, advisory only — not a guarantee) and you can filter with max_p95_ms / speed_tier to self-select faster models; if the feature is not yet live these two filters are no-ops.

NameTypeReqDescription
hosting_regionstring"eu" matches eu OR fr. Use for EU data-residency routing (a hedge against transatlantic transfer — not a full GDPR compliance guarantee).
limitintegerMax results. Default 500, max 1000. The reply reports how many models matched in total, so you can tell whether the list was cut off.
max_p95_msintegerOnly return models whose recent gateway p95 latency (EWMA) is at or under this ceiling, in milliseconds. Models with no recent gateway data are excluded (can't confirm they're fast). Advisory, recent…
origin_countrystringISO 3166-1 alpha-2 country code of the model's origin (e.g. "US", "FR", "DE"). Filters to models whose AI lab is headquartered in that country. Useful for origin-country filtering — e.g. models from…
providerstringFilter to one provider (anthropic, openai, google, ovh, openrouter).
speed_tierstringFilter to one recent-speed tier (distinct from `tier` above). "unknown" = too little recent traffic to classify. No-op if recent-speed exposure is not yet live.
supportsarrayComma-separated capability list; models must support ALL of these.
tierstringFilter to one model tier (catalog quality/pricing tier — not the recent-speed tier, see speed_tier).

No output schema declared.

No examples provided.

tokonomix_onboard ~344

Step 1 of keyless first-run onboarding. Sends a 6-digit OTP to the provided email address. No API key is required to call this tool — it is the entry point for new users. Tokonomix is in beta: the server requires the user to accept the beta terms (functional gaps, use at your own risk — https://tokonomix.ai/beta) before it will send a code. If you call this WITHOUT accept_beta_terms and beta acceptance is required, the server replies with a 400 asking you to confirm the beta terms with your human and re-call with accept_beta_terms: true. So: confirm the beta terms with your human, then call this tool with accept_beta_terms: true. After a code is sent, instruct the user to check their email and call tokonomix_onboard_verify with the code. On success the server returns {ok:true} regardless of whether the email already has an account (enumeration-safe).

NameTypeReqDescription
accept_beta_termsbooleanSet to true to record the user's acceptance of the Tokonomix beta terms (https://tokonomix.ai/beta). REQUIRED while the beta gate is on — only set it true AFTER your human has confirmed they accept.…
emailstringyesThe user's email address. A 6-digit one-time code will be sent here.
localestringOptional UI/email language for the account (the welcome email + dashboard links use it). Pass the user's language if you know it; defaults to English.
namestringOptional display name for the account (max 200 characters).

No output schema declared.

No examples provided.

tokonomix_onboard_verify ~143

Step 2 of keyless first-run onboarding. Verifies the 6-digit OTP from tokonomix_onboard. No API key is required to call this tool. On success: provisions a free-tier Tokonomix account, saves the API key to ~/.tokonomix/credentials.json (shown once here — the user must save it), and returns the starting credit balance. After this call succeeds, all other tokonomix_* tools will work without any env-var configuration.

NameTypeReqDescription
codestringyesThe 6-digit numeric code from the OTP email.
emailstringyesThe same email address used in tokonomix_onboard.

No output schema declared.

No examples provided.

tokonomix_rate_consensus ~695

Rate a consensus call 1–10 on real-world usefulness, after you have seen the answer play out. The `request_id` is returned by tokonomix_consensus_ask in the billing breakdown line (` · request_id: ...`) and in the `x_council.request_id` metadata field. Optional: `helped_model` credits the ONE model whose minority or blind-spot view actually helped (the red-thread blind-spot differentiator) — supply its bare slug (e.g. "gemini-2.5-pro"). Opt-in, no friction. Optional: `note` accepts up to 2000 chars of free text — it IS stored (admin-only, never returned to any caller, never shown publicly verbatim) and enriched by an EU-hosted model into the agent-source day/week/month summary, kept strictly separate from the human-feedback summary. Same privacy handling as the human free text. Optional feedback (INT-1882, accepted only when the platform feedback-loop is enabled): `outcome` (correct|wrong|partial) is the minimal always-useful signal; `findings` is the rich agent signal — the real/false split per severity bucket {high,medium,low}:{real,false}. The auto-scoring already counts the buckets; you supply only whether each was a TRUE catch or a FALSE positive. Sharing the full findings earns the review-discount once go-live (one model-call less on that round). Per-account dedup: one authoritative rating per request_id per account; re-submitting updates it (last-write-wins). Requires the same API key that made the original call. Feature-gated on the platform feedback-loop: when it is disabled the tool returns a clear "not enabled" message rather than an error.

NameTypeReqDescription
consensus_benefitstringYour structured verdict on whether the council helped: caught_blind_spot / resolved_disagreement / raised_confidence / no_added_value / consensus_was_wrong. Replaces the old discarded free-text note…
findingsobjectOptional (feedback-loop, agent path): the requester real/false validation per severity bucket. Counts only — never finding text. Each count must not exceed the bucket count the call actually produced.
helped_modelstringOptional bare model slug of the one model whose minority view or blind-spot catch actually helped (e.g. "gemini-2.5-pro"). Blind-spot direct credit — opt-in.
notestringOptional free-text context (max 2000 chars). Stored admin-only, never returned to any caller and never shown publicly verbatim; enriched by an EU-hosted model into the agent-source day/week/month sum…
outcomestringOptional (feedback-loop): did the consensus answer turn out correct, wrong, or partial in practice? The minimal validation signal — upgrades the call to high-confidence scoring.
request_idstringyesThe UUID of the consensus call to rate. Returned by tokonomix_consensus_ask.
scoreintegeryesUsefulness score 1–10 (1 = not useful at all, 10 = extremely useful in practice).

No output schema declared.

No examples provided.

tokonomix_relay_human_feedback ~401

Relay the HUMAN end-user's verdict on a consensus call — the human channel (source_type='human_via_agent'), distinct from tokonomix_rate_consensus (which is the AGENT's own rating). Use this ONLY when a real human in the session actually told you what they thought of the council's answer — NEVER fabricate or guess a human answer on their behalf; if no human weighed in, do not call this tool. The `request_id` is returned by tokonomix_consensus_ask in the billing breakdown line (` · request_id: ...`) and in the `x_council.request_id` metadata field. The `choice` legend (ask the human, then map their answer): 1 = caught a blind spot · 2 = an important improvement · 3 = confirmed my approach · 4 = added nothing · 5 = was wrong/misleading. Optional: `free_text` accepts up to 2000 chars of the human's own words (trimmed and capped server-side); same privacy handling as tokonomix_rate_consensus's note — stored admin-only, never returned verbatim to any caller. Human feedback earns the (higher) human reward rate, versus the agent-source rate on tokonomix_rate_consensus. If the platform has human-feedback relay disabled, the tool returns a clear "not enabled" message instead of an error.

NameTypeReqDescription
choiceintegeryesThe human's verdict, 1-5: 1 = caught a blind spot · 2 = an important improvement · 3 = confirmed my approach · 4 = added nothing · 5 = was wrong/misleading.
free_textstringOptional free-text context in the human's own words (max 2000 chars).
request_idstringyesThe UUID of the consensus call the human is giving feedback on. Returned by tokonomix_consensus_ask.

No output schema declared.

No examples provided.

tokonomix_single_ask ~266

Single-model passthrough call. Cheaper than consensus — use for routine reasoning, tool-orchestration, classification. Returns the model's plain answer with markup billing on top. Tip: use `tokonomix_consensus_ask` instead when correctness matters.

NameTypeReqDescription
imagesarrayOptional images to include in the user message (vision input). Non-streaming only. Requires a vision-capable model (use tokonomix_list_models({"supports":["vision"]}) to find one). Constraints: ≤8 im…
max_tokensintegerMax output tokens. Default: 1024; clamped to a 16384 ceiling.
modelstringBare model slug (e.g. "claude-haiku-4-5-20251001", "gpt-5"), or "default" to use the key/account default. Provider-prefixed slugs ("anthropic/claude-...") also accepted. If omitted, uses "default". M…
promptstringyesThe user prompt to send.
systemstringOptional system prompt prepended to the messages array.

No output schema declared.

No examples provided.

tokonomix_skill_version ~91

Return a cheap version fingerprint of the canonical Tokonomix SKILL.md (the doc that tells you when to use the other tokonomix_* tools). No network call. Returns {version, sha256, last_changed, bytes}. Use this to detect that your local cached SKILL.md is stale — if your cached version differs from the returned one, call tokonomix_get_skill to refresh.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

tokonomix_upload ~210

Stage large context (over the inline cap) for a grounded consensus call (INT-1817 B08). Returns an ephemeral, region-pinned upload session: a `session` id + opaque `handles`. Pass `context:{session, handles}` to tokonomix_consensus_ask so all proposers + judges read the ONE shared context-pack (build-once, in-region digest). The staged content is ephemeral (auto-purged after a short retention) and region-pinned (EU by default). NEVER pass a URL — only file contents; the server never fetches a caller URL (no SSRF). Feature-gated on the account's context-upload capability: when it is not enabled the tool returns a clear "not enabled" message rather than an error. Use inline context.inline for small payloads either way.

NameTypeReqDescription
filesarrayyesThe files/snippets to stage. Each is staged verbatim or digested server-side (the verbatim budget is server-bounded).

No output schema declared.

No examples provided.