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.
19 tools: 12 change things and 7 only read.
Scanned Oct 21, 2026
- Deletes or cancels0Claude Code: deny
- Can't be undone0Claude Code: ask
- Changes things12Claude Code: ask: see these tools
- Only reads7Claude Code: allow: see these tools
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/mcpFindings
Matches of fixed checks, with the text they matched.
- Highaudit_endpoint
The description refers to "mcp.json".
What this check looks forMatched text
description: "...dshake, CORS, discovery docs (llms.txt, mcp.json), and payment-offer behaviour. First ca..."
- Warnaudit_theme
The server marks "audit_theme" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}; The description's first verb is "run": a word for a change.
- Warnget_offer
The server marks "get_offer" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "get_offer" says "get": a word for reading.
- Warnget_fix
The server marks "get_fix" as not read-only (readOnlyHint: false), and its words say it reads.
What this check looks forMatched text
annotations: {"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":true}; The name "get_fix" says "get": a word for reading.
- Warnget_skill
The server marks "get_skill" as not read-only (readOnlyHint: false), and its words say it reads.
What this check looks forMatched text
annotations: {"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":true}; The name "get_skill" says "get": a word for reading.
- Infosearch_fixes
The input schema at properties.query.description mentions "credentials".
What this check looks forMatched text
inputSchema.properties.query.description: "...context needed to disambiguate it. Omit credentials, tokens, private hostnames, and private..."
Show 5 more findingsShow fewer
- Infoorder_service
The description mentions "credentials".
What this check looks forMatched text
description: "...operator spending approval. Never send credentials or confidential data. Keep the returned..."
- Infoorder_service
The input schema at properties.targetUrl.description mentions "credentials".
What this check looks forMatched text
inputSchema.properties.targetUrl.description: "...c GitHub repository URL. Do not include credentials, query parameters, or fragments."
- Infoorder_service
The input schema at properties.notes.description mentions "credentials".
What this check looks forMatched text
inputSchema.properties.notes.description: "Optional review focus. Never include credentials, tokens, secrets, private URLs, or conf..."
- Infosubmit_fix
The input schema at properties.fix.description mentions "credentials".
What this check looks forMatched text
inputSchema.properties.fix.description: "...iation steps and commands, sanitized of credentials."
- Infosubmit_fix
The input schema at properties.reproduction.description mentions "credentials".
What this check looks forMatched text
inputSchema.properties.reproduction.description: "...cks proving the remediation works; omit credentials and private infrastructure."
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".
What this check looks forMatched text
description: "...dshake, CORS, discovery docs (llms.txt, mcp.json), and payment-offer behaviour. First ca..."
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".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}; The description's first verb is "run": a word for a change.
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.
What this check looks forMatched text
annotations: {"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":true}; The name "get_fix" says "get": a word for reading.
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".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "get_offer" says "get": a word for reading.
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.
What this check looks forMatched text
annotations: {"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":true}; The name "get_skill" says "get": a word for reading.
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".
What this check looks forMatched text
description: "...operator spending approval. Never send credentials or confidential data. Keep the returned..."
- Info
The input schema at properties.targetUrl.description mentions "credentials".
What this check looks forMatched text
inputSchema.properties.targetUrl.description: "...c GitHub repository URL. Do not include credentials, query parameters, or fragments."
- Info
The input schema at properties.notes.description mentions "credentials".
What this check looks forMatched text
inputSchema.properties.notes.description: "Optional review focus. Never include credentials, tokens, secrets, private URLs, or conf..."
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".
What this check looks forMatched text
inputSchema.properties.fix.description: "...iation steps and commands, sanitized of credentials."
- Info
The input schema at properties.reproduction.description mentions "credentials".
What this check looks forMatched text
inputSchema.properties.reproduction.description: "...cks proving the remediation works; omit credentials and private infrastructure."
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".
What this check looks forMatched text
inputSchema.properties.query.description: "...context needed to disambiguate it. Omit credentials, tokens, private hostnames, and private..."
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/mcpRun in a terminal.
Claude Code permissions
Allow the reads, ask before a change, deny the deletes. Paste into .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.
