Skip to content

KnownFix

by b-hash88 · remote · local (npm) · no sign-in to list tools · v0.6.1 · published by GitHub user b-hash88

Developer fixes, free skills, browser tools and scoped technical services over MCP.

Changes · 121 high finding

19 tools: 12 change things and 7 only read.

Scanned Oct 21, 2026

11 checks matched something in the tool definitions. No finding is not a safety guarantee. How the checks work.

claude mcp add --transport http knownfix https://knownfix-backend-28.b-hash88.deno.net/mcp

Findings

Matches of fixed checks, with the text they matched.

1 high4 warn6 info
  • The description refers to "mcp.json".

    Matched text

    description: "...dshake, CORS, discovery docs (llms.txt, mcp.json), and payment-offer behaviour. First ca..."

    What this check looks for
  • The server marks "audit_theme" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}; The description's first verb is "run": a word for a change.

    What this check looks for
  • The server marks "get_offer" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "get_offer" says "get": a word for reading.

    What this check looks for
  • The server marks "get_fix" as not read-only (readOnlyHint: false), and its words say it reads.

    Matched text

    annotations: {"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":true}; The name "get_fix" says "get": a word for reading.

    What this check looks for
  • The server marks "get_skill" as not read-only (readOnlyHint: false), and its words say it reads.

    Matched text

    annotations: {"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":true}; The name "get_skill" says "get": a word for reading.

    What this check looks for
  • The input schema at properties.query.description mentions "credentials".

    Matched text

    inputSchema.properties.query.description: "...context needed to disambiguate it. Omit credentials, tokens, private hostnames, and private..."

    What this check looks for
Show 5 more findings
  • The description mentions "credentials".

    Matched text

    description: "...operator spending approval. Never send credentials or confidential data. Keep the returned..."

    What this check looks for
  • The input schema at properties.targetUrl.description mentions "credentials".

    Matched text

    inputSchema.properties.targetUrl.description: "...c GitHub repository URL. Do not include credentials, query parameters, or fragments."

    What this check looks for
  • The input schema at properties.notes.description mentions "credentials".

    Matched text

    inputSchema.properties.notes.description: "Optional review focus. Never include credentials, tokens, secrets, private URLs, or conf..."

    What this check looks for
  • The input schema at properties.fix.description mentions "credentials".

    Matched text

    inputSchema.properties.fix.description: "...iation steps and commands, sanitized of credentials."

    What this check looks for
  • The input schema at properties.reproduction.description mentions "credentials".

    Matched text

    inputSchema.properties.reproduction.description: "...cks proving the remediation works; omit credentials and private infrastructure."

    What this check looks for

Tools

Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.

19 tools

Changes things 12Claude Code: ask
  • audit_endpointReadiness audit of any agent-facing URL: MCP handshake, CORS, discovery docs (llms.txt, mcp.json), and payment-offer behaviour.1 finding

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.

    Findings

    • High

      The description refers to "mcp.json".

      Matched text

      description: "...dshake, CORS, discovery docs (llms.txt, mcp.json), and payment-offer behaviour. First ca..."

      What this check looks for
    Description, as the server wrote it
    Readiness audit of any agent-facing URL: MCP handshake, CORS, discovery docs (llms.txt, mcp.json), and payment-offer behaviour. First call with url alone for the FREE grade and failing-check list. For the full findings and remediations, call get_offer with productType "audit" and productId "conformance-report", pay, then call audit_endpoint again with the same url plus paymentTx and paymentOffer. This tool both previews and redeems the paid report; no separate delivery tool is needed.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
  • audit_themeRun a read-only theme audit on a public HTTP(S) page, free in full.1 finding

    Why it is in this group

    • The description's first verb is "run": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "audit_theme" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}; The description's first verb is "run": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Run a read-only theme audit on a public HTTP(S) page, free in full. Fetches but never modifies the page, then checks inline style CSS for brace errors, token gaps, incomplete dark themes, missing body backgrounds, and WCAG body-text contrast. External stylesheets are counted but not fetched. Use audit_endpoint instead for MCP, CORS, discovery, and payment readiness.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
  • check_requestCheck a private ticket from request_fix.No findings

    Why it is in this group

    • The name "check_request" says "request": a word for a change.
    Description, as the server wrote it
    Check a private ticket from request_fix. Returns pending, declined, not-eligible, redeemed, or the full fix free once an eligible new fix is stocked. This call may atomically consume the ticket's one-time delivery, so save the returned body. Use get_fix when you already have a catalog id; do not create another request while this ticket is pending.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: false
  • check_service_orderCheck a private service order by its svc_ ticket.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Check a private service order by its svc_ ticket. With paymentTx and paymentOffer, atomically confirms exactly one matching Base payment and moves the order into review. Without payment fields, returns current status; once complete, it returns the private Markdown report and SHA-256 digest. Keep the ticket and signed offer private.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
  • check_submissionCheck the private submissionId returned by submit_fix.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Check the private submissionId returned by submit_fix. Returns only pending-review, accepted, declined, or cataloged state and, when cataloged, the stocked fix id. It never returns submitted text or contributor details and creates no side effects. Use get_fix with catalogId when cataloged; do not resubmit merely because review is pending.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • get_fixGet or redeem a fix after search_fixes or list_catalog identifies the id.1 finding

    Why it is in this group

    • The name "get_fix" says "get": a word for reading.
    • The server marks it as not read-only (readOnlyHint: false).

    Findings

    • Warn

      The server marks "get_fix" as not read-only (readOnlyHint: false), and its words say it reads.

      Matched text

      annotations: {"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":true}; The name "get_fix" says "get": a word for reading.

      What this check looks for
    Description, as the server wrote it
    Get or redeem a fix after search_fixes or list_catalog identifies the id. Free samples return immediately. For a paid fix, call with the id alone to receive a free diagnosis preview, confidence and compatibility, dollar price, signed Base Pay USDC and exact-ETH offers, and one pay-and-redeem action; then call once more with the matching paymentTx and private paymentOffer. Never pay again merely because an existing proof is pending or denied.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
  • get_offerCreate or refresh a one-hour signed bearer offer for a chosen skill, bundle, audit, or fix.1 finding

    Why it is in this group

    • The name "get_offer" says "get": a word for reading.
    • The description's first verb is "create": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "get_offer" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "get_offer" says "get": a word for reading.

      What this check looks for
    Description, as the server wrote it
    Create or refresh a one-hour signed bearer offer for a chosen skill, bundle, audit, or fix. Do not call this after a paid search_fixes result or an unpaid get_fix/get_skill result because those responses already include both payment rails. Choose USDC for Base Pay or ETH for exact wei; with no product arguments, this returns the general settlement document.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • get_skillGet or redeem a premium skill or multi-fix bundle after choosing with list_skills.1 finding

    Why it is in this group

    • The name "get_skill" says "get": a word for reading.
    • The server marks it as not read-only (readOnlyHint: false).

    Findings

    • Warn

      The server marks "get_skill" as not read-only (readOnlyHint: false), and its words say it reads.

      Matched text

      annotations: {"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":true}; The name "get_skill" says "get": a word for reading.

      What this check looks for
    Description, as the server wrote it
    Get or redeem a premium skill or multi-fix bundle after choosing with list_skills. Call with the id alone to receive the free outline, dollar price, signed Base Pay USDC and exact-ETH offers, and one pay-and-redeem action. After payment, call once more with the matching paymentTx and private paymentOffer for the complete SKILL.md or assembled bundle decision tree, fix bodies, verification commands, update guidance, and sources. Do not use this for individual fixes; call get_fix instead. Never pay again merely because an existing proof is pending or denied.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: true
  • order_serviceCreate a private ticket and signed Base USDC/ETH checkout for an eligible automated service only.3 findings

    Why it is in this group

    • The description's first verb is "create": a word for a change.

    Findings

    • Info

      The description mentions "credentials".

      Matched text

      description: "...operator spending approval. Never send credentials or confidential data. Keep the returned..."

      What this check looks for
    • Info

      The input schema at properties.targetUrl.description mentions "credentials".

      Matched text

      inputSchema.properties.targetUrl.description: "...c GitHub repository URL. Do not include credentials, query parameters, or fragments."

      What this check looks for
    • Info

      The input schema at properties.notes.description mentions "credentials".

      Matched text

      inputSchema.properties.notes.description: "Optional review focus. Never include credentials, tokens, secrets, private URLs, or conf..."

      What this check looks for
    Description, as the server wrote it
    Create a private ticket and signed Base USDC/ETH checkout for an eligible automated service only. Do not call for requiresScopeApproval services (SaaS security, Microsite Launch) or paymentTiming:after-verified-delivery (Verified Repo Fix); these require manual scope approval via their published page. Accepts authorized public HTTPS targets only. Obtain operator spending approval. Never send credentials or confidential data. Keep the returned svc_ ticket private.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: false
  • report_checkout_blockerUse only after a signed KnownFix checkout cannot proceed before a payment hash exists.No findings

    Why it is in this group

    • The name "report_checkout_blocker" says "checkout": a word for a change.
    Description, as the server wrote it
    Use only after a signed KnownFix checkout cannot proceed before a payment hash exists. Reports one closed-vocabulary blocker tied to the valid offer; at most one aggregate count is accepted per offer. No wallet address, token, transaction hash, query, or free-form text is published. Do not call after payment; redeem with get_fix, get_skill, or audit_endpoint instead.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • request_fixAsk for a fix this store does not have yet.No findings

    Why it is in this group

    • The name "request_fix" says "request": a word for a change.
    Description, as the server wrote it
    Ask for a fix this store does not have yet. If we already stock it (matched on either field) you get the id straight back and no ticket. Otherwise you get a ticket; when we stock THAT fix, check_request returns it to you FREE, once. A ticket only ever redeems a fix created after the request: fixes that already existed when you asked are not free, whatever the request said. No contact details are collected. Set publish: true ONLY if the text may appear on a public wanted board — never include secrets, tokens, internal hostnames, or file paths.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: false
  • submit_fixOffer a fix for the catalog.2 findings

    Why it is in this group

    • The name "submit_fix" says "submit": a word for a change.

    Findings

    • Info

      The input schema at properties.fix.description mentions "credentials".

      Matched text

      inputSchema.properties.fix.description: "...iation steps and commands, sanitized of credentials."

      What this check looks for
    • Info

      The input schema at properties.reproduction.description mentions "credentials".

      Matched text

      inputSchema.properties.reproduction.description: "...cks proving the remediation works; omit credentials and private infrastructure."

      What this check looks for
    Description, as the server wrote it
    Offer a fix for the catalog. Submissions are reviewed by the operator before listing; include a reproduction so the fix can be verified rather than trusted. Returns a private submissionId; save it and call check_submission for pending, accepted, declined, or cataloged status. Submitted text and contributor details are never returned by the status tool. Revenue-sharing for accepted contributions is planned, not yet live.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: false
    • openWorldHint: false
Only reads 7Claude Code: allow
  • get_free_skillReturn the complete Markdown body of one free workflow listed by get_overview.No findings

    Why it is in this group

    • The name "get_free_skill" says "get": a word for reading.
    Description, as the server wrote it
    Return the complete Markdown body of one free workflow listed by get_overview. No account, payment, paid body or private data. Use list_skills/get_skill for premium products instead. This tool supports clients that cannot read MCP resources.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • get_overviewOne free overview of all KnownFix offerings: complete free-workflow resource URIs, three browser-local tools and their companion guides, catalog routes, premium outlines and servic…No findings

    Why it is in this group

    • The name "get_overview" says "get": a word for reading.
    Description, as the server wrote it
    One free overview of all KnownFix offerings: complete free-workflow resource URIs, three browser-local tools and their companion guides, catalog routes, premium outlines and service prices/scopes/ordering boundaries. No account, payment, signed offer or order creation. Use search_fixes first for an exact error; list_services for full engagement terms.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • list_catalogBrowse every stocked error signature, title, tag, confidence label, and free-sample flag without ranking or creating an offer.No findings

    Why it is in this group

    • The name "list_catalog" says "list": a word for reading.
    Description, as the server wrote it
    Browse every stocked error signature, title, tag, confidence label, and free-sample flag without ranking or creating an offer. Use search_fixes instead when diagnosing a specific error; it returns the best match and any purchase-ready checkout.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • list_merchBrowse the KnownFix Merch Store.No findings

    Why it is in this group

    • The name "list_merch" says "list": a word for reading.
    Description, as the server wrote it
    Browse the KnownFix Merch Store. Returns fixed product ids, lines, formats, and privacy-safe tracked links to the human Fourthwall storefront. Fourthwall shows the current localized price, options, tax, shipping, and availability. This tool does not place an order or collect checkout data.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • list_servicesCompare all current KnownFix reviews, Verified Repo Fix and Microsite Launch.No findings

    Why it is in this group

    • The name "list_services" says "list": a word for reading.
    Description, as the server wrote it
    Compare all current KnownFix reviews, Verified Repo Fix and Microsite Launch. Returns complete scope, deliverables, prices, delivery targets and limitations. Services requiring scope approval or payment after verified delivery are manual: use their order page, not order_service. SaaS security requires explicit written testing authorization. Other services use private-ticket checkout only after operator spending approval and target authorization.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • list_skillsCompare premium skills and multi-fix bundles.No findings

    Why it is in this group

    • The name "list_skills" says "list": a word for reading.
    Description, as the server wrote it
    Compare premium skills and multi-fix bundles. Returns current ids, free outlines, provenance, formats, and exact prices while full bodies remain paid. Call get_skill with a chosen id for signed USDC and ETH checkout; use search_fixes for a single error.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
  • search_fixesUse this first for an exact error or distinctive symptom.1 finding

    Why it is in this group

    • The name "search_fixes" says "search": a word for reading.

    Findings

    • Info

      The input schema at properties.query.description mentions "credentials".

      Matched text

      inputSchema.properties.query.description: "...context needed to disambiguate it. Omit credentials, tokens, private hostnames, and private..."

      What this check looks for
    Description, as the server wrote it
    Use this first for an exact error or distinctive symptom. Returns up to three confident ranked matches. A free top match includes the full fix. A paid top match includes a free diagnosis, confidence and compatibility, dollar price, signed USDC/Base Pay and exact-ETH rails, and one pay-and-redeem action; do not call get_offer. Use list_catalog to browse, get_fix only with a known id or payment proof, and request_fix only after an honest miss.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false

This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.

Install

Pinned to version 0.6.1. Values in angle brackets are yours to fill in.

claude mcp add --transport http knownfix https://knownfix-backend-28.b-hash88.deno.net/mcp

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__knownfix__get_free_skill",
      "mcp__knownfix__get_overview",
      "mcp__knownfix__search_fixes",
      "mcp__knownfix__list_catalog",
      "mcp__knownfix__list_skills",
      "mcp__knownfix__list_merch",
      "mcp__knownfix__list_services"
    ],
    "ask": [
      "mcp__knownfix__request_fix",
      "mcp__knownfix__check_request",
      "mcp__knownfix__order_service",
      "mcp__knownfix__check_service_order",
      "mcp__knownfix__audit_endpoint",
      "mcp__knownfix__audit_theme",
      "mcp__knownfix__get_offer",
      "mcp__knownfix__report_checkout_blocker",
      "mcp__knownfix__get_fix",
      "mcp__knownfix__get_skill",
      "mcp__knownfix__submit_fix",
      "mcp__knownfix__check_submission"
    ],
    "deny": []
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as knownfix. Review it before you use it.