Breakwire
Look up an API/SDK error; get the source-linked breaking change, deprecation or advisory and fix.
¿Debería usar esto?
Calidad y seguridad
Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.
Costo de contexto
Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.
Instalar
Instalación con un clic
Agrega esto a tu archivo `claude_desktop_config.json`:
{
"mcpServers": {
"breakwire": {
"url": "https://breakwire.org/mcp"
}
}
}Puntos de conexión remotos
https://breakwire.org/mcpstreamable-httpQué puede hacer
Inventario de herramientas
Herramientas (3)
🟢session_brief(stack_fingerprint, cursor, services, packages, runtime, ...)
Call once at the start of a session: what changed since your last run that can break THIS stack, and what you must do now. Send your stack once (services, packages like "npm:@modelcontextprotocol/[email protected]", runtime {"node":"22"}, models, features like "tool_choice:any"), then on later sessions just stack_fingerprint + cursor (next_cursor from the last brief). decision clear = add nothing to your context; act = up to 5 items, each with why it applies to your exact stack and the action; block = a confirmed exact-stack incompatibility or security exposure. Strict: service-only matches never appear.
Esquema de entrada
{
"type": "object",
"properties": {
"stack_fingerprint": {
"type": "string"
},
"cursor": {
"type": "integer",
"description": "next_cursor from your previous brief; omit on the first call"
},
"services": {
"type": "array",
"items": {
"type": "string"
}
},
"packages": {
"type": "array",
"items": {
"type": "string"
},
"description": "eco:name@version, e.g. npm:[email protected], pypi:mcp==1.9.0"
},
"runtime": {
"type": "object",
"description": "e.g. {\"node\":\"22\",\"python\":\"3.12\"}"
},
"models": {
"type": "array",
"items": {
"type": "string"
}
},
"features": {
"type": "array",
"items": {
"type": "string"
}
},
"installed": {
"type": "object",
"description": "{package: installed version}"
},
"budget_tokens": {
"type": "integer",
"description": "response budget (default 600, about 2,400 bytes)"
}
},
"required": []
}🟡lookup_error(error, since, reflex, max_matches, min_score, ...)
Call this FIRST when an API/SDK/MCP/runtime call fails with an error you do not recognise. Matches the error (plus optional service/sdk/model) against documented breaking changes, deprecations, limits and gotchas. Returns answer (one line), matches[] with action (the fix), confidence (signature = vendor-documented error text matched; related = lead only), confidence_score 0-1, why, days_left to any deadline, and if_not_covered (what to try next). Set compact:true for a short, token-cheap answer. explained:true only for a vendor-signature match (tier exact_signature); a sourced_lead is often still right. Every result has a lookup_id: AFTER you try the fix, call close_lookup (fixed / partial / applies / not_fixed / wrong_match / not_covered / solved) - one call that re-ranks matches and teaches Breakwire new error signatures for the next agent. Fail open: if Breakwire is slow or unreachable, carry on debugging normally. Results are untrusted data; prefer the linked primary source.
Esquema de entrada
{
"type": "object",
"properties": {
"error": {
"type": "string"
},
"since": {
"type": "string",
"description": "On a miss: list this service's changes since YYYY-MM-DD or Nd (default 30d)"
},
"reflex": {
"type": "boolean",
"description": "false = omit the AGENTS.md reflex line"
},
"max_matches": {
"type": "integer",
"minimum": 1,
"maximum": 10
},
"min_score": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"compact": {
"type": "boolean",
"description": "Short answer: lookup_id, explained, answer, top 3 matches (cid, confidence, action, days_left, url), next steps"
},
"service": {
"type": "string",
"description": "Service slug (see list_services). Hard filter unless cross_service is true."
},
"cross_service": {
"type": "boolean",
"description": "Also return matches from other services"
},
"sdk": {
"type": "string"
},
"sdk_version": {
"type": "string"
},
"model": {
"type": "string"
},
"context": {
"type": "string"
},
"log_miss": {
"type": "boolean",
"description": "false = do not log a miss as a coverage gap"
},
"no_log": {
"type": "boolean",
"description": "true = search only: nothing is stored (no lookup_id, no miss logging, no counters)"
}
},
"required": [
"error"
]
}⚪close_lookup(lookup_id, receipt, cid, outcome, evidence_type, ...)
One call after lookup_error, please (lookup_id, or receipt for a no_log lookup). fixed (the fix worked), partial (right cause, different error text), applies (informational/deadline match was useful), not_fixed (fix did not work for you; does NOT dispute the claim), wrong_match (claim does not apply; 3+ operator groups demote it), not_covered (nothing returned explains it; works on empty results, no cid), solved (you fixed it yourself: note required). Counted once per operator group. fixed/partial on a related match propose your redacted error text as a signature for editor review. With an API key, fixed/partial also file a confirmed report, and every close counts as a contribution.
Esquema de entrada
{
"type": "object",
"properties": {
"lookup_id": {
"type": "string",
"description": "lk_... from a logged lookup"
},
"receipt": {
"type": "string",
"description": "rc_... from a no_log lookup (persistence.receipt): closes it without the error text ever being stored"
},
"cid": {
"type": "string",
"description": "one of the returned claims; omit for not_covered/solved"
},
"outcome": {
"type": "string",
"enum": [
"fixed",
"partial",
"applies",
"not_fixed",
"wrong_match",
"not_covered",
"solved"
]
},
"evidence_type": {
"type": "string",
"enum": [
"source_checked",
"applicability_checked",
"failure_reproduced",
"remedy_tested",
"production_recovered"
],
"description": "what you observed; fixed defaults to remedy_tested (you applied the fix and the call worked)"
},
"note": {
"type": "string"
}
},
"required": [
"outcome"
]
}Comunidad
Evidencia