More screenshots

    Works with the AI Agents you already use

    Claude CodeClaude CodeCursorCursorCodex CLICodex CLIMuseMuseDotsDots+22 more

    canimcp

    1

    Find out which MCP clients silently break your server's tools before your users do. Paste a tools/list manifest or point it at a live server; it reports the exact client, version, rule, evidence and fix.

    $19

    Secure checkout via Stripe

    Money-back guarantee

    Converts to your local currency at checkout

    Security scanned
    canimcp

    canimcp

    Example session with this skill installed

    My MCP server exposes 10 tools including a generated create_payment schema and a fat update_inventory schema. Check which tools Claude Code and Codex will break on and tell me what to fix first.

    • Read your context and instructions
    • Compiled the canimcp

    canimcp digest

    Checked 10 tools (corpus 2026.10.16).

    Per-client verdict

    • codex: 1 error, 5 warn
    • claude-code: 2 warn
    • client-independent: 2 finding(s)

    Findings, ranked

    [error] root oneOf/anyOf next to properties (codex 0.162.0, evidence: probe)
    tool: create_payment, path: inputSchema
    A root oneOf or anyOf placed next to "properties" made Codex lose the property names - the call reached the server with mangled arguments. r/mcp reports a production tool silently dropped 17 days over a root oneOf.
    fix: move the composition inside each property, or wrap the object so "properties" is not a sibling of oneOf/anyOf

    [warn] prefixItems tuple in inputSchema (codex 0.162.0, evidence: probe)
    tool: batch_insert, path: inputSchema
    A prefixItems tuple was declared to the model as Array<string> - the per-position types were erased.
    fix: model the arguments as an object with named properties instead of a positional tuple

    [warn] integer argument that can exceed 2^53 (claude-code 2.1.295, codex 0.162.0, evidence: probe)
    tool: search_events, path: inputSchema.properties.since
    int64 value 1234567890123456789 arrived rounded on Claude Code, and string-or-rounded on Codex.
    fix: accept big integers as strings and parse on the server

    [warn] integer argument that can exceed 2^53 (claude-code 2.1.295, codex 0.162.0, evidence: probe)
    tool: search_events, path: inputSchema.properties.until
    int64 value 1234567890123456789 arrived rounded on Claude Code, and string-or-rounded on Codex.
    fix: accept big integers as strings and parse on the server

    [warn] inputSchema over ~14 KB (codex 0.162.0, evidence: measured)
    tool: sync_catalog, path: inputSchema
    Codex compacts large input schemas to fit a per-server budget (~20 KB). A 14 KB schema lost its required nested fields and calls arrived incomplete (0/3).
    fix: shrink the schema (shared $defs help), or raise Codex's per-server schema budget to 20000 if you control the client

    [warn] enum inside anyOf/oneOf in a >5 KB schema (codex 0.162.0, evidence: probe)
    tool: sync_catalog, path: inputSchema
    An enum nested inside anyOf in a schema over 5 KB had the enum erased by Codex's schema compaction - the model no longer saw the allowed values.
    fix: hoist the enum to the property root, or shrink the schema under ~5 KB

    [advisory] tool name over 64 chars or non-ASCII charset (all clients, evidence: historical)
    tool: fetch.page, path: name
    Some clients have silently truncated or rejected long/unusual tool names. A 65-char name worked on Claude Code 2.1.287 and Codex 0.162.0, but older or enterprise-pinned clients may still drop it.
    fix: keep names under 64 chars, [A-Za-z0-9_-] only

    [advisory] tool name over 64 chars or non-ASCII charset (all clients, evidence: historical)
    tool: generate_report_for_customer_account_with_full_history_and_exports, path: name
    Some clients have silently truncated or rejected long/unusual tool names. A 65-char name worked on Claude Code 2.1.287 and Codex 0.162.0, but older or enterprise-pinned clients may still drop it.
    fix: keep names under 64 chars, [A-Za-z0-9_-] only

    Advisories (always-on behaviors worth knowing)

    • (codex 0.162.0) After a server's tool list changed, Codex kept using its old catalog and never called the new tool (0/3). Fix: restart the client session after deploying new tools
    • (codex 0.162.0) With gpt-5.6-sol, Codex runs in code mode: the model never sees your JSON Schema, only a compacted TypeScript declaration generated from it - several Codex failures happen in that translation. Fix: assume the client sees a lossy projection of your schema, not the schema itself

    Static analysis only: this checks schemas against a quirks corpus. It cannot see runtime result shapes or a client build newer than the corpus (2026.10.16).

    Connects securely to your tools. The creator never sees your data.

    About this skill

    MCP clients do not implement the protocol identically. Claude Code 2.1.287 never calls a tool whose argument is named "ids[]" (0/3 measured runs). Codex 0.162.0 loses property names when a root oneOf sits next to "properties", and silently drops every tool past the 2048th on a server. One r/mcp poster had a production tool missing for 17 days over a root oneOf, with no error on either side.

    canimcp is a static preflight: it checks your tools/list manifest against a quirks corpus distilled from published reproductions (the SineFrame quirks matrix plus binary probes and field reports), scoped by client and version.

    This skill wraps the canimcp CLI with a runner script and a fix playbook:

    1. The agent runs node scripts/compat-audit.mjs on your manifest - a saved tools/list JSON file, a pasted JSON on stdin, or a live stdio server command it spawns itself.
    2. The script prints a ranked digest: per-client verdicts, every finding with severity, evidence grade (measured / probe / historical / field-report), the exact tool and schema path, and the concrete fix.
    3. reference/quirk-playbook.md explains each of the 11 corpus rules and 3 always-on advisories, so the agent can order remediation: errors (tools that vanish), then warnings (mangled arguments, compacted schemas), then advisories (stale tool lists, truncated errors).

    What it checks (examples): argument names like ids[] that Claude Code never calls, root oneOf/anyOf next to properties that Codex mangles, missing root "type" that drops a whole server's tool list, >2048 tools, >14KB schemas that Codex compacts destructively, enums erased inside compositions, prefixItems tuples flattened to Array<string>, int64 arguments arriving rounded, tool names that collide after normalization, outputSchema fidelity, tool names over 64 chars.

    Honest limits: this is static analysis against a quirks corpus, not a live test rig. It cannot see runtime result shapes or client builds newer than the corpus. Only Claude Code and Codex carry tested versions today; Cursor, Gemini CLI and others are unclaimed until reproductions land. The corpus (src/corpus.json) is versioned and accepts community rules via PR with reproduction logs.

    Requires Node 18+. Runs the published open-source CLI via npx - the audit is real output, not a simulation.

    How to use

    Skills on Agensi run inside your AI agent. Copy the prompt, paste it into your agent, and it connects to Agensi and installs this skill for you. If a payment is needed, your agent shows it to you first.

    Reviews

    No reviews yet

    Be one of the first to try it. Every listed skill passes our trust checks below.

    Security scanned

    Passed our 8-point scan before listing

    Fresh listing

    Recently published to Agensi

    Money-back guarantee

    Doesn't do what its page promises? You get your money back.

    Trust & safety

    Security scanned

    Verified clean 3 days ago

    • Passed all security checks, Safe to install

    Requires

    Node.js 18+
    npx

    Listed3 days ago

    What's inside

    Frequently Asked Questions