Breakwire MCP server
2026년 11월 5일 커밋소스와 연결된 레지스트리에서 에러 문자열을 조회하여, AI 클라이언트가 중대한 변경 사항(breaking changes), API 지원 종료(deprecation), 모델 은퇴(retirement)를 식별하고 설명할 수 있게 합니다.
다른 이름 breakwire-org/breakwire
- 스타
- 0
- Tools
- —
- 다운로드, 30일
- —
- 최신 버전
- —
- 마지막 커밋
- 2026년 11월 5일
- 라이선스
- MIT
Breakwire MCP란?
Breakwire은(는) MCP server입니다. 소스와 연결된 레지스트리에서 에러 문자열을 조회하여, AI 클라이언트가 중대한 변경 사항(breaking changes), API 지원 종료(deprecation), 모델 은퇴(retirement)를 식별하고 설명할 수 있게 합니다.
프로젝트 README에서 생성된 요약
Breakwire MCP server 정보
Breakwire를 사용하면 개발자가 중대한 변경 사항, API 지원 종료 및 모델 은퇴를 쉽게 식별할 수 있습니다. 이 레지스트리를 통해 AI 클라이언트는 에러 문자열을 조회하여 특정 도구나 모델이 예상대로 작동하지 않는 이유를 설명하는 구체적인 클레임을 찾을 수 있습니다. 여기에는 벤더가 문서화한 에러 문자열, 영향을 받는 버전, 마감일 및 권장 해결 방법이 포함됩니다.
사용자는 Claude, Cursor, VS Code, Windsurf와 같은 클라이언트를 위해 MCP server 설정을 통해 이를 통합하거나, 제공되는 TypeScript 및 Python SDK를 사용할 수 있습니다. 이 시스템은 무해하고 개인정보 보호에 중점을 두도록 설계되었습니다. 정보가 로컬 환경을 벗어나기 전에 IPv6 주소, UUID, 자격 증명과 같은 민감한 데이터를 로컬에서 먼저 비식별화합니다. API 조회를 통해 원격 서비스로 작동하지만, 스택 파일을 로컬에서 파싱하여 비밀 정보가 외부로 유출되지 않도록 보장합니다.
단순한 에러 조회를 넘어, 특정 스택의 변경 사항을 확인하기 위한 세션 브리프(session briefs) 기능을 지원하며, GitHub Action을 사용하여 CI 파이프라인에 통합함으로써 마감일이나 보안 권고 사항이 임박했을 때 빌드를 중단시킬 수 있습니다.
활용 사례
- 1인식되지 않는 에러 문자열 설명에러 메시지를 레지스트리에 제공하여 문서화된 설명과 해결 방법을 받습니다.
- 2모델 및 API 변경 사항 모니터링학습 데이터 컷오프 시점을 기준으로 최신 모델 출시, 개정 또는 지원 종료 여부를 확인합니다.
- 3CI 안전 점검 자동화GitHub Action을 사용하여 API 마감일이나 보안 권고 사항이 임박했을 때 배포를 방지합니다.
- 4시작 시 환경 변경 사항 감사세션 시작 시 세션 브리프를 실행하여 현재 스택에 영향을 미치는 변경 사항이 있는지 확인합니다.
프로젝트의 README를 바탕으로 작성되었습니다. 모든 활용 사례는 해당 내용의 인용문과 대조하여 확인합니다.
Breakwire MCP 설치 방법
형식 확인: 2026년 11월 10일Cursor에 추가Goose에 추가Claude Code에 Breakwire MCP 설치
$ claude mcp add breakwire -- npx -y breakwireCursor에 Breakwire MCP 설치
~/.cursor/mcp.json
{
"mcpServers": {
"breakwire": {
"command": "npx",
"args": [
"-y",
"breakwire"
]
}
}
}VS Code에 Breakwire MCP 설치
.vscode/mcp.json
{
"servers": {
"breakwire": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"breakwire"
]
}
}
}VS Code CLI에 Breakwire MCP 설치
$ code --add-mcp '{"name":"breakwire","type":"stdio","command":"npx","args":["-y","breakwire"]}'Claude Desktop에 Breakwire MCP 설치
claude_desktop_config.json
{
"mcpServers": {
"breakwire": {
"command": "npx",
"args": [
"-y",
"breakwire"
]
}
}
}Codex에 Breakwire MCP 설치
$ codex mcp add breakwire -- npx -y breakwireCodex config.toml에 Breakwire MCP 설치
~/.codex/config.toml
[mcp_servers.breakwire] command = "npx" args = ["-y", "breakwire"]
Gemini CLI에 Breakwire MCP 설치
$ gemini mcp add -s user breakwire npx -- -y breakwireGemini settings.json에 Breakwire MCP 설치
~/.gemini/settings.json
{
"mcpServers": {
"breakwire": {
"command": "npx",
"args": [
"-y",
"breakwire"
]
}
}
}자동 검사
2026년 11월 15일에 실행됨전체 보고서 →아직 인증되지 않았습니다. 서버는 80점 이상의 점수, 심각한 결함 없음, 그리고 검사에 충분한 데이터를 갖추어야 합니다. 검사 방식 · 점수를 높이기 위해 수정할 항목
- 소스 저장소 연결 및 접근 가능breakwire-org/breakwire is public and reachablegithub.com/breakwire-org/breakwire ↗통과
- 패키지가 이 저장소를 소스로 명시breakwire names breakwire-org/breakwire as sourcenpmjs.com/package/breakwire ↗통과
- 빌드 출처(Sigstore 증명)No build attestation published for this release검사되지 않음
- 오픈 소스 라이선스 (OSI)MITspdx.org/licenses/MIT.html ↗통과
- 최근 1년 내 커밋 또는 릴리스Last commit or release 2026-11-05github.com/breakwire-org/breakwire ↗통과
- OpenSSF Scorecard검사되지 않음
- 패키지 이름이 인기 패키지와 유사하지 않음No popular package one edit away from breakwire통과
- 패키지 및 해당 종속성에 중요한 보안 권고 없음검사되지 않음
- 모델에 대한 숨겨진 지침 없음0 tool descriptions and the README read; no override phrases, credential paths or hidden characters통과
- 파괴적인 도구에 라벨 표시됨검사되지 않음
- 원격 엔드포인트가 MCP 핸드셰이크에 응답검사되지 않음
README
GitHub에서 보기Breakwire clients, MCP config and CI check
Current release: clients 0.12.0 (npm breakwire, PyPI breakwire, PyPI langchain-breakwire) · server 0.12.28 · GitHub Action breakwire-check 1.2.0 · CHANGELOG
Breakwire is a source-linked registry of changes that break AI agents: model retirements, API
deprecations, SDK breaking releases, MCP spec changes and security advisories. Send it an error, get back the claim
that explains it (e.g. AN-2026-0025) with the vendor's documented error string, affected versions, deadline, fix and
primary source.
Try it: one call, no key, no install
curl -X POST https://breakwire.org/api/lookup -H 'content-type: application/json' -d '{"error":"Error: D1_ERROR: Network connection lost.","compact":true}'
Returns explained: true and claim AN-2026-0143 (the vendor-documented D1 error, the fix and its source). Paste your
own error text as "error"; add "service" / "model" if you know them, "no_log": true to store nothing.
This repo holds everything that talks to it:
| Path | Install | |
|---|---|---|
| TypeScript/JS client (zero deps, Node 18+, Workers) + Vercel AI SDK tools | packages/js | npm i breakwire@latest |
| Python client (stdlib only, 3.9+) | packages/python | pip install -U breakwire |
| LangChain tools + callback handler | packages/langchain-breakwire | pip install -U langchain-breakwire |
| MCP server config for Claude, Cursor, VS Code, Cline, Codex, Windsurf, Gemini CLI | mcp/CLIENTS.md | https://breakwire.org/mcp |
| GitHub Action: fail CI on near deadlines / advisories | action (published as breakwire-org/breakwire-check) |
uses: breakwire-org/breakwire-check@v1 |
| Framework snippets: Vercel AI SDK, OpenAI Agents, Anthropic SDK, LangChain, MCP TS client | snippets | |
| Trigger packages: Claude Code plugin (skill + MCP), Cursor rule, AGENTS.md block | triggers | /plugin marketplace add breakwire-org/breakwire |
| Gemini CLI extension (remote MCP + GEMINI.md context) | gemini-extension.json | gemini extensions install https://github.com/breakwire-org/breakwire |
Installed the Claude Code plugin or the Gemini extension earlier? Their manifests stayed at 0.4.0 / 0.8.0, and Claude Code only
refreshes a plugin when that version string changes, so later skill/hook updates (session brief, GET forms, fail-open) never
reached you. Both now track the clients version (0.12.0). Update with claude plugin marketplace update breakwire && claude plugin update breakwire@breakwire
or gemini extensions update breakwire.
30 seconds
curl -s https://breakwire.org/api/lookup -H 'content-type: application/json' \
-d '{"error":"tool_choice: type \"tool\" and \"any\" are not supported for this model.","service":"anthropic-api"}'
import { withBreakwire } from 'breakwire';
const create = withBreakwire((p) => anthropic.messages.create(p), { service: 'anthropic-api' });
try { await create(params) } catch (e) { console.log(e.breakwire?.id, e.breakwire?.fix); throw e }
from breakwire import with_breakwire
with with_breakwire(service="openai-api"):
client.responses.create(...) # exception gets .breakwire (id, fix, url) and a traceback note
When to call it
- Session start:
session_brief(MCP) /sessionBrief()/session_brief()/npx breakwire brief. Silent when nothing changed for your exact stack. - An error you do not recognise. 2. Code that names a model id or SDK version. 3. A deploy or upgrade.
For 1-3, step one:
GET https://breakwire.org/api/changes?from=<your training cutoff>(changes, new model launches, revisions). Fail open: if Breakwire is slow or down, carry on. Details: triggers/TRIGGERS.md.
What's new in 0.12.0 (clients)
Current clients are 0.12.0 (parity with Breakwire 0.12). Upgrade from 0.1–0.7: pip install -U breakwire · npm i breakwire@latest · pip install -U langchain-breakwire. Details: CHANGELOG.md.
- GET forms (0.12.19 / 0.12.23):
GET /api/stack?packages=&node=andGET /api/session-brief?packages=&node=&services=match POST. The Action and SDKs still POST; curl-only / GET-only checkers use GET. Docs: https://breakwire.org/llms.txt. - Trigger packages (Claude Code skill, Cursor rule, AGENTS.md) now document those GET forms and the 0.12.0 upgrade commands.
What's new in 0.7.0 (clients)
- Session brief with a local cursor:
sessionBrief()/session_brief()returncontext: nullwhen clear (inject nothing), else at most 5 source-linked items. Later calls send only a fingerprint and cursor (304 when unchanged). npx breakwire brieffor session-start hooks; the Claude Code plugin runs it on startup.- Stack checks are strict + compact by default. No-log lookups return a
receiptyou can close with an outcome andevidence_type. Details in CHANGELOG.md.
What's new in 0.6.0 (clients)
Security and correctness release; see CHANGELOG.md and SECURITY.md.
- Redirects never carry credentials or bodies to another origin. Clients follow redirects only to
https://breakwire.org, the base URL's origin and anytrustedOrigins/trusted_originsyou pin. - Stack files are parsed in your process.
stack()/subscribe()send only dependency and runtime facts;previewStack()/preview_stack()show the exact body; raw files needrawFiles: true/raw_files=True. - Retry works in the default no-log mode, and the local cache keys on every lookup option.
- Broader local redaction (IPv6, UUIDs, request/trace ids, filesystem and UNC paths, credentials in any URI scheme,
secret-named JSON fields) with
previewRedaction()/preview_redaction(). - Python
with_breakwireaccepts everylookup()option (compact,min_score,max_matches,since,reflex).
Principles
- Opt-in and harmless. Lookups happen only on errors, are time-boxed, and never throw or replace your error.
- Secrets stay home. Keys, tokens, emails, IPv4/IPv6 addresses, UUIDs and request ids, query strings, credentials
in URLs and filesystem paths are stripped in your process before sending (shared test cases;
previewRedaction()/preview_redaction()show exactly what would leave); the server redacts again. Stack files are parsed locally and only dependency facts are sent. Redirects never carry credentials or bodies to another origin. - No silent reporting. Outcome reports ("did the fix work") are sent only with
autoReport/auto_reporton, and only after your retry actually ran. - Honest data.
signaturevsrelatedconfidence, explicit "not covered" for services without claims, and community verification that has just started: most claims have no outcome reports yet, and each claim says so.
Development
cd packages/js && npm ci && npm test # offline unit tests (+ npm run test:live)
cd packages/python && python -m unittest discover -s tests
cd packages/langchain-breakwire && python -m unittest discover -s tests
cd action && npm test
cd snippets && npm ci && npm test # real SDKs against a mock vendor + live Breakwire
node scripts/versions.mjs --check # fails on stale versions (edit versions.json, run without --check)
Versions live in one place, versions.json. node scripts/versions.mjs writes them into the package
manifests, source constants and the README banners; CI (.github/workflows/ci.yml) runs the
check plus every suite. Shared cross-language fixtures: tests/ (redaction, redirect policy, stack parsing,
lookup option contract).
Live tests use log_miss: false and never send outcome reports. Set BREAKWIRE_BASE_URL to point at another deployment.
API: https://breakwire.org/llms.txt · OpenAPI: https://breakwire.org/openapi.json · Data: CC BY 4.0 · Code: MIT
Breakwire MCP 질문
Breakwire MCP를 Claude Code에 추가하려면 어떻게 하나요?
터미널에서 claude mcp add breakwire -- npx -y breakwire를 실행합니다. 모든 프로젝트에서 사용할 수 있게 하려면 --scope user를 추가합니다.
Breakwire MCP를 Cursor에 추가하려면 어떻게 하나요?
~/.cursor/mcp.json를 열고 mcpServers 아래에 서버를 추가합니다. 위 설치 섹션에 표시된 Cursor 구성을 사용합니다.
에러가 전송되었을 때 Breakwire는 어떤 정보를 제공하나요?
벤더가 문서화한 에러 문자열, 영향을 받는 버전, 마감일, 해결 방법 및 주요 소스를 포함하여 에러를 설명하는 클레임을 반환합니다.
Breakwire를 사용하면 보안이 취약해지거나 비밀 정보가 노출되나요?
아니요. 키, 토큰, IP 주소와 같은 비밀 정보는 로컬 프로세스에서 전송 전 제거되며, 서버에서 추가적인 비식별화 처리를 수행합니다.