mcpField
K
kontra-mcp

kontra-mcp

本地服务
github.com/bluworkAI 与智能体234 周前更新

关于 kontra-mcp

kontra-mcp 为决策者提供结构化的方案或结论质疑工具。四种模式分别生成反方论据、追问、失败情景或面向未来的复盘,并由客户端的大模型处理提示词。

主要功能

  1. 01四种结构化分析模式
  2. 02揭示盲点与隐藏假设
  3. 03生成具体失败情景
  4. 04向客户端返回对抗性提示词

适用场景

  1. 01质疑架构决策
  2. 02审视早期阶段的计划
  3. 03对发布排期进行红队分析
  4. 04为招聘决策做事前复盘

MCP 相关

服务提供一个工具,接收陈述、可选背景和分析模式,并返回经过设计的提示词供 MCP 客户端的大模型处理;它本身不调用模型。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"bluwork-kontra": {
"command": "npx",
"args": [
"-y",
"kontra-mcp"
],
"env": {
"KONTRA_DEFAULT_MODE": "<KONTRA_DEFAULT_MODE>",
"KONTRA_LOG_LEVEL": "<KONTRA_LOG_LEVEL>"
}
}
}
}
启动命令npx -y kontra-mcp
需要配置的环境变量
KONTRA_DEFAULT_MODEDefault analysis mode (counter|probe|redteam|premortem)
KONTRA_LOG_LEVELLog verbosity (debug|info|warn|error)

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npmkontra-mcp0.1.2

工具

1

收录的工具列表 · 更新于 2 周前

参数类型必填说明
modeenum否分析模式:"counter" 表示逆向分析,"probe" 表示深入提问,"redteam" 表示对抗性测试,"premortem" 表示失败情景分析。counter | probe | redteam | premortem
contextstring否与该决策相关的额外背景、约束或数据
statementstring是要分析的决策、计划或结论

详细介绍

Kontra

第十人协议

“如果九个人意见一致,我就持反对意见。”

一个 MCP 工具,通过结构化的唱反调分析对你的决策进行压力测试——让盲点在后果出现之前浮出水面。

npm License

你将获得什么

你说:

“用 kontra 挑战这个想法:我们应该把后端从 Node.js 重写为 Rust。背景:当前技术栈是 Node.js,团队有 3 人,每周发布一次。”

Kontra 返回:


盲点
  • 你衡量了重写的成本,却没有衡量暂停的成本。 一个每周发布、只有 3 人的团队正处于发展势头中。重写的代价不只是工程工时——还包括 3 到 6 个月的功能开发、客户反馈循环和市场定位,而竞争对手不会因此停下脚步。

  • Rust 的安全保障解决的可能并不是你遇到的问题。 如果你的 Node.js 后端并未因内存错误或并发问题而故障,那么你优化的就是一类并未造成困扰的问题。重写是一种解决方案——它要解决什么问题,而你的团队又确实遇到了什么问题?

  • 团队在生产规模下使用 Rust 的能力尚未得到验证。 写出能编译的 Rust,不等于写出能上线的 Rust。对借用检查器的熟练掌握、异步运行时的选择(Tokio 还是 async-std)、针对特定领域的生态成熟度——这些都是未知因素,而且会在截止期限的压力下相互叠加。

隐藏假设

...

最有力的反方论据

...

假设情景

...


这就是 counter 模式——默认模式。另有三种模式。

快速开始

Claude Code
claude mcp add kontra -- npx -y kontra-mcp

然后提问:“用 kontra 分析我的这个决定……”

Claude Desktop

将以下内容添加到 Claude Desktop 配置中(macOS 上的路径为 ~/Library/Application Support/Claude/claude_desktop_config.json):

{
  "mcpServers": {
    "kontra": {
      "command": "npx",
      "args": ["-y", "kontra-mcp"]
    }
  }
}
Cursor / VS Code

将以下内容添加到 MCP 设置中:

{
  "kontra": {
    "command": "npx",
    "args": ["-y", "kontra-mcp"]
  }
}

模式

counter — 第十人

“切勿将共识误认为正确。”

默认模式。假定你的决定是错误的,并尽可能为反对它构建最有力的论据。

**输出:**盲点、隐藏假设、最有力的反方论据、假设情景

**适用场景:**需要有人为对立立场构建最有力论据的重大决策。架构选择、战略转向、招聘计划、产品押注。


probe — 盘问者

“一个好问题对糟糕决策造成的打击,胜过任何论据。”

从五个角度提出 7 到 10 个尖锐问题——不给答案,不做分析,只提出你尚未问过自己的问题。

**输出:**围绕动机、证据、备选方案、利害关系和时机提出的问题

**适用场景:**处于早期阶段的决策。你怀疑自己的推理存在漏洞,却不确定漏洞在哪里。它会迫使你直面那些被忽略的问题。


redteam — 红队指挥官

“像对手一样思考——不是假想的对手,而是一个具体、聪明、希望这个决策失败的对手。”

构建 3 到 5 个具体的失败情景,并提供可能性评级、触发事件、连锁过程、早期预警信号和缓解措施。

**输出:**按可能性排序的失败情景及其可能性估计,以及总体脆弱性评估(1 到 10 分制)

**适用场景:**已经开始推进的计划。发布进度安排、迁移策略、组织变革——任何需要明确了解其将如何失败的事项。


premortem — 来自未来的事后复盘

“前瞻性回顾能将识别未来结果成因的能力提升 30%。”

假设这个决策是在 12 个月前做出的,并以灾难性失败告终,然后撰写完整的事后复盘。

产出: 执行摘要、发生了什么(失败叙述)、时间线、根本原因、我们错过的信号、经验教训

适用场景: 风险高、难以逆转的决策。适用于团队信心十足、需要打破必然成功的错觉时。

使用方法

反驳一项战略决策:

“使用 kontra 挑战这个决定:我们的产品路线图将全力投入 AI Agent。”

审视职业选择:

“使用 kontra 的 probe 模式,质疑我离职创办 SaaS 公司的决定。背景:我有 8 个月的资金储备,没有联合创始人,还有一个获得 3 份 LOI 的 B2B 点子。”

对发布计划进行红队分析:

“使用 kontra 的 redteam 模式,针对我们 6 周后发布的计划进行分析。背景:我们没有预发布环境,测试覆盖率为 40%,而且只有一名 DevOps 工程师。”

对招聘决策进行事前复盘:

“使用 kontra 的 premortem 模式分析:我们要招聘 5 名初级工程师,而不是 2 名资深工程师。背景:目前团队有 4 名资深工程师,交付速度是瓶颈。”

工具参数
参数类型必填描述
statementstring是要分析的决策、计划或结论
contextstring否补充背景、限制条件或数据
modeenum否counter(默认)、probe、redteam 或 premortem

这不是什么

  • 不是优缺点生成器。 Kontra 不会权衡双方,而是全力攻击其中一方——也就是你的一方。
  • 不是风险评估框架。 没有概率矩阵或彩色仪表板,只有结构化论证,而非官僚流程。
  • 不是泛泛的“谨慎行事”警告。 每项输出都针对你的决策和背景,不会给出适用于所有情况的套话建议。
  • 不能替代人类判断。 Kontra 会指出你可能忽略的内容,但最终仍由你做决定。

工作原理

Kontra 使用提示词返回模式。调用时,它会构建一段精心设计的对抗性提示词,并将其作为工具响应返回。你的 MCP 客户端会使用自身的大模型处理该提示词并生成分析。

  • 无需 API 密钥——使用客户端现有的大模型
  • 不会产生额外网络调用——提示词只会返回,不会执行
  • 适用于任何 MCP 客户端——Claude Desktop、Claude Code、Cursor、VS Code

分析质量取决于模型能力。能力更强的模型能生成更犀利、更具体的逆向分析。

配置

环境变量默认值描述
KONTRA_DEFAULT_MODEcounter默认分析模式
KONTRA_LOG_LEVELinfo日志详细程度(debug | info | warn | error)

许可证

Apache-2.0

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。