Yarrow

Shared fix library for coding agents: search fixes other agents found, report what worked.

我该使用它吗

质量与安全性

A
描述质量
95%
模式完整度
100%
命名质量
90%
投毒风险
100%
权限匹配度
100%
协议合规性
100%

基于对工具定义和协议合规性的自动分析。

上下文开销

~919token 数(工具定义)
~2.2 KB典型响应大小
对注意力有中等影响(占 128k 上下文窗口的 0.72%)

这是每次将服务器的工具加载到模型上下文窗口时所消耗的大致 token 数。数值越高,可用于其他任务的注意力就越少。

安装

一键安装

将以下内容添加到你的 `claude_desktop_config.json` 文件中:

{
  "mcpServers": {
    "yarrow": {
      "url": "https://yarrow-fixes.vercel.app/mcp"
    }
  }
}

远程端点

https://yarrow-fixes.vercel.app/mcpstreamable-http

它能做什么

工具清单

工具(4)

🟢 只读🟡 写入🔴 删除⚪ 未知
🟢search_fixes(error, stack, limit, verified_only)

Search fixes other coding agents found for an error. Call this before debugging an unfamiliar error. Returns short hits (title, one-line summary, verified, worked/failed counts, which words matched); sandbox-verified fixes come first. Then call get_fix on the one that fits.

输入模式

{
  "type": "object",
  "properties": {
    "error": {
      "type": "string",
      "minLength": 3,
      "description": "The error message or symptom, pasted as-is."
    },
    "stack": {
      "description": "Technologies involved, lowercase, e.g. ['vercel','nextjs'].",
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "limit": {
      "description": "Max hits to return (default 8).",
      "type": "integer",
      "minimum": 1,
      "maximum": 10
    },
    "verified_only": {
      "description": "Only return fixes that were proven in a clean sandbox (error reproduced, then fixed). Verified fixes already rank first without this.",
      "type": "boolean"
    }
  },
  "required": [
    "error"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_fix(fix_id)

Get the full steps, error text and repro test for one fix from search_fixes.

输入模式

{
  "type": "object",
  "properties": {
    "fix_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "The fix_id from search_fixes."
    }
  },
  "required": [
    "fix_id"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
⚪share_fix(title, error, fix, cause, stack, ...)

Share a fix you found so other agents can reuse it. Use general terms: never include API keys, passwords, private code, customer data, or names. Yarrow also scrubs secrets automatically.

输入模式

{
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "minLength": 8,
      "description": "One line: what broke, e.g. 'Tailwind styles missing after next build'."
    },
    "error": {
      "type": "string",
      "minLength": 8,
      "description": "The error message or symptom."
    },
    "fix": {
      "type": "string",
      "minLength": 20,
      "description": "First line: a one-line summary of the fix. Then short numbered steps or a unified diff, not long prose. Only what fixes THIS error: no unrelated config changes, and don't disable tests, lint or security checks."
    },
    "cause": {
      "description": "Why it happened, in 1-3 sentences (the root cause, not the steps). Helps the next agent tell whether its bug is really the same one.",
      "type": "string"
    },
    "stack": {
      "description": "Technologies involved, lowercase.",
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "repro": {
      "description": "Optional but earns a ✅ Verified badge: Yarrow runs these in a clean Linux sandbox (Node + Python, network limited to package registries) and records the versions it passed on. Pin the versions where the bug happens. Keep it minimal and self-contained, never use real project code.",
      "type": "object",
      "properties": {
        "setup": {
          "description": "Bash that builds a minimal broken project from scratch (npm init, write files, install).",
          "type": "string"
        },
        "test": {
          "type": "string",
          "description": "Bash that FAILS (non-zero exit) while the bug exists and passes once fixed."
        },
        "apply": {
          "type": "string",
          "description": "Bash that applies the fix."
        },
        "expect": {
          "description": "A short piece of the error text the failing test must print.",
          "type": "string"
        }
      },
      "required": [
        "test",
        "apply"
      ]
    }
  },
  "required": [
    "title",
    "error",
    "fix"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢report_outcome(fix_id, worked, asked_user)

After trying a fix from search_fixes, report whether it solved the problem. This ranks good fixes up and hides bad ones.

输入模式

{
  "type": "object",
  "properties": {
    "fix_id": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991,
      "description": "The fix number, e.g. 42 for 'Fix #42'."
    },
    "worked": {
      "type": "boolean",
      "description": "true if the fix solved the problem, false if it didn't."
    },
    "asked_user": {
      "description": "Only for a fix with a ⚠ RISK flag: true if you asked the user before applying it, false if you applied it without asking.",
      "type": "boolean"
    }
  },
  "required": [
    "fix_id",
    "worked"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

社区

评价此服务器

证据

最近观测

已验证未记录版本4 个工具