PD

pranjalbhatia710/descartes-mcp

开发工具

本页由 AI 翻译,技术细节请以原文为准。 查看原文

21 stars 0 forks 质量 74 趋势 14MIT

怀疑,直到剩下的确定。一个递归怀疑每一个计划决策的MCP服务器——要么以真实证据为基础,要么询问你——直到它们汇聚一致。仅靠Claude运行,没有密钥。

概览

提问者通过最尖锐的问题来理解一个主题;笛卡尔则学会,直到剩下的答案是确定的。一个理念的两半:正确的问题胜过自信的答案。→ 🪶  · 笛卡尔——摘自他本人一瞥的题词。 一个MCP服务器,在提示时不断迭代,直到计划不再产生新的负荷问题。然后它会反馈一个完善后的计划以及只有你能做出的少数决策。 重点是:没有未经审视的假设能进入作品,所以幻觉无处可藏。 在一个提示中,笛卡尔运行递归笛卡尔怀疑: 1. 计划/决策。2. 每个负重决策(每个疑点中有11个怀疑操作员之一)。3. — 修剪那些琐碎且人为制造的疑点。4. 每个存续的疑点仅基于真实证据:- 代码疑问→通过你所经过的语境解决,- 世界疑问→通过(引用,信心评分)解决,- 无根据→标记。5.

概述(AI 翻译)

怀疑,直到剩下的确定。

🔭 兄弟项目:Asker — 今天的AI回答,这个人问。

提问者学会提出*最尖锐的问题以理解主题; 笛卡尔学会了怀疑**,直到剩下的事变得确定。一体的两半 观点:正确的问题胜过自信的答案。 → https://github.com/pranjalbhatia710/the-asker

🪶 登陆页→  ·  descartes --epigraph,这是他本人的一个随口想法。

一个MCP服务器在提示时,怀疑计划中的每一个决定,也怀疑自己的决定 怀疑并回答它们——每个答案都基于真实证据——不断反复 直到计划停止产生新的负重疑虑。然后它会交还给 精炼的计划加上只有你能做的少数决定。

重点是:没有未经审视的假设能影响作品,所以幻觉也没有 藏身的空间。


循环

在一个提示中,笛卡尔运行递归笛卡尔怀疑:

  1. 起草计划/决策。
  2. 怀疑每一个承重决策(每个疑点中有11个怀疑操作员)。
  3. 怀疑怀疑——修剪那些琐碎和人为制造的疑虑。

本页由 AI 翻译,技术细节请以原文为准。

README

以下为原文 README 节选,完整内容请查看原文。

Descartes

doubt, until what remains is certain.

🔭 Sibling project: The Asker — today’s AI answers, this one asks.

The Asker learns to ask the sharpest questions to understand a subject; Descartes learns to doubt until what remains is certain. Two halves of one idea: the right question beats the confident answer. → https://github.com/pranjalbhatia710/the-asker

🪶 Landing page →  ·  descartes --epigraph for a passing thought from the man himself.

An MCP server that, on a prompt, doubts every decision in a plan, doubts its own doubts, and answers them — grounding every answer in real evidence — iterating until the plan stops producing new load-bearing doubts. Then it hands back a refined plan plus the few decisions only you can make.

The point: no unexamined assumption reaches the work, so hallucination has no room to hide.


The loop

On a prompt, Descartes runs recursive Cartesian doubt:

  1. Draft the plan / decisions.
  2. Doubt every load-bearing decision (one of 11 doubt operators per doubt).
  3. Doubt the doubts — prune the trivial and manufactured ones.
  4. Answer each surviving doubt only from real evidence:
    • code doubts → resolved from the context you pass in,
    • world doubts → resolved via Exa (cited, confidence-scored),
    • ungroundable → marked NEEDS_HUMAN.
  5. Doubt the answer — recurse: each settled answer is itself doubted (the question behind the question), spawning the next layer of doubts, bounded by depth and a global doubt budget.
  6. Bank it — every grounded finding accumulates into a knowledge base that feeds the next round of doubting and the final plan.
  7. Revise the plan with what survived, and repeat from step 2.

The output is therefore a doubt tree (each entry carries depth + parent), not a flat list, plus a knowledge_base of accumulated facts.

Stopping rule: the loop stops the moment a full pass produces no new load-bearing doubt — that is convergence. It might be pass 3 or pass 9. 20 is a hard ceiling, never a target, and recursion is bounded by DESCARTES_MAX_DEPTH (default 3) and DESCARTES_DOUBT_BUDGET (default 64). It never manufactures doubt to keep going.

Grounding rule: every answer resolves against real evidence or becomes a question for you. Low-confidence Exa is never asserted. 20 rounds of self-answered, ungrounded doubt would be 20 rounds of confident hallucination — so that is forbidden by construction.


Two engines (auto-selected)

| If you set… | Descartes runs… |

在 GitHub 查看完整 README

安装

This server does not publish a one-line install command.

Open the repository installation guide 新手?先看 mcpskill.org 教程 →

配置

{ "mcpServers": { "descartes": { "command": "descartes", "args": [], "env": { "FIREWORKS_API_KEY": "${FIREWORKS_API_KEY}", "EXA_API_KEY": "${EXA_API_KEY}", "OPENROUTER_API_KEY": "${OPENROUTER_API_KEY}" } } } }