mcpField
N
NumProof

NumProof

远程服务
numproof.com金融数据018 周前更新

关于 NumProof

NumProof 是面向 AI Agent 和电子表格工作流的开源 Python 客户端与 MCP 服务,用于确定性地验证数值和财务声明。它返回可复现的判定、来源信息及签名证据,而非让另一个模型评判声明。

主要功能

  1. 01用精确算术验证声明
  2. 02审计电子表格行与公式
  3. 03比较报告版本
  4. 04评估财务契约规则
  5. 05生成签名验证证据
  6. 06离线复核收据

适用场景

  1. 01拦截 AI Agent 输出的数值声明
  2. 02审计电子表格合计与利润率
  3. 03比较两个报告版本
  4. 04验证财务契约计算

MCP 相关

NumProof 的 MCP 服务允许 MCP 客户端调用托管验证 API,执行声明核验、电子表格审计等任务。可通过 `python -m numproof.mcp` 本地运行,也可连接托管描述文件。

配置

远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。

服务地址https://numproof.com/mcp
一键复制安装命令
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。

安装包
pypinumproof0.1.1

工具

4
参数类型必填说明
claimstring是

详细介绍

NumProof

ci License: MIT

面向 AI Agent 和电子表格的确定性数值真值层。

你的 Agent 写道 “毛利率从 42.1% 提升到了 44.8%”,或 “工作簿内部一致”——NumProof 会以确定性方式告诉你,该数字应判定为 VERIFY、REFUTE 还是 ABSTAIN,并提供反例、单元格/公式溯源信息,以及带签名、可由机器校验的审计包。这采用精确算术和符号数学——不是让一个大模型来评判另一个大模型。

  • ✅ 验证单条数学/财务声明,或在 CI 中批量验证数千条声明
  • ✅ 审计 xlsx/csv 行:加总、交叉加总、资产负债表勾稽、利润率、公式单元格——并提供溯源信息
  • ✅ 对比两个报告版本;评估契约规则包(DSCR、Debt/EBITDA、流动比率等)
  • ✅ 带签名的证据包(JSON + HTML/PDF/ZIP),任何人都可以离线重新验证
  • ✅ API · 命令行 · MCP 服务 · 可选的 x402 按次付费

此仓库是开源客户端(SDK + MCP)。验证引擎作为托管服务运行——pip install numproof,将其指向 API 即可。(架构与 stripe-python 相同: SDK 开源,验证引擎作为服务提供。)

在线演示(无需密钥):https://numproof.com · 文档:https://numproof.com/docs


30 秒快速开始

pip install numproof
from numproof import NumProof

np = NumProof.from_env()              # NUMPROOF_API_KEY (get a free key: see below)

print(np.verify("120 + 90 + 340 + 15 == 565"))
# {'verdict': 'VERIFY', 'certificate': 'EXACT_ARITHMETIC', ...}

print(np.verify("a 50% loss needs a 100% gain to break even"))   # VERIFY: (1-0.5)*(1+1.0)==1
print(np.verify("two 10% raises equal a 21% total increase"))    # VERIFY
print(np.verify("operating margin is 18% when EBIT is 180 and revenue is 1000"))  # VERIFY

不想安装?直接使用 HTTP:

curl -s https://numproof.com/demo -H 'Content-Type: application/json' \
  -d '{"claim":"gross margin is 60% when gross profit is 600 and revenue is 1000"}'

免费 API 密钥:

curl -s https://numproof.com/signup -X POST -H 'Content-Type: application/json' -d '{}'

审计电子表格(包含溯源信息)

rows = [["Revenue", 1000], ["COGS", 400], ["Gross Profit", 600], ["Gross Margin", "60%"]]
print(np.audit_rows(rows)["verdict"])          # PASS  (600/1000 == 60%, footing, ties, ...)

# covenant rule packs: DSCR, Debt/EBITDA, current ratio, custom thresholds
print(np.covenant_rows(
    [["EBITDA", 500], ["Debt Service", 300], ["Debt", 1200]],
    rule_pack="credit_covenants_basic",
)["verdict"])

每个审计/差异比较/契约评估结果都可以作为带签名的证据包以及便于阅读的 HTML/PDF 报告返回(format="zip")。接收者可以在不信任你或 NumProof的情况下验证:

curl -s https://numproof.com/audit/verify -H 'Content-Type: application/json' -d @bundle.json
# {"valid": true, "verdict": "PASS", "signer": "0x...", ...}

在 AI Agent 中使用(MCP)

NumProof 提供 MCP 服务,供 Claude/OpenAI 风格的 Agent 将其作为工具调用——在任何数值声明到达用户、报告或审计员之前进行把关。

python -m numproof.mcp
{ "mcpServers": { "numproof": { "command": "python", "args": ["-m", "numproof.mcp"] } } }

或者,让任意 MCP 客户端使用托管描述文件:https://numproof.com/mcp.json。

可运行的脚本(验证、审计、契约、Agent 把关、MCP)请参见 examples/。


为 Agent 框架即插即用地添加防护措施

在 Agent 执行操作之前验证其输出的数字,且可在你现有的框架中使用(numproof/integrations/——每个集成都采用延迟导入,因此 numproof 客户端仅依赖标准库):

# OpenAI Agents SDK — output guardrail that trips on REFUTE
from agents import Agent
from numproof.integrations.openai_agents import numproof_output_guardrail
agent = Agent(name="...", instructions="...", output_guardrails=[numproof_output_guardrail()])
  • OpenAI Agents SDK — numproof.integrations.openai_agents(输出防护栏/跳闸器)
  • Pydantic AI — numproof.integrations.pydantic_ai(输出验证器;抛出带有反例的 ModelRetry,让模型自行纠正)
  • LangChain — numproof.integrations.langchain(一个 NumProof Tool 和一个输出检查器)
  • DeepEval (Confident AI) — numproof.integrations.deepeval(确定性的 NumProofMetric:VERIFY → 得分 1.0,REFUTE → 得分 0.0,并在 .reason 中附上反例)
  • Guardrails AI — numproof.integrations.guardrails(Hub Validator:REFUTE → 返回带有反例的 FailResult,从而触发 on_fail 操作——重新提问/修正/抛出异常)

VERIFY → 放行 · REFUTE → 阻止/重试并提供反例 · ABSTAIN → 直接放行(可配置)。可运行示例见 examples/;只需安装你所使用的框架。

可独立复核的回执(无法伪造的部分)

任何判定都可以作为签名验证回执返回——你可以离线复核,无需信任传输过程或 NumProof:

pip install "numproof[verify]"
numproof-verify receipt.json --signer 0x<published-NumProof-signer>
# OK   independently re-derived + signature valid

它会恢复 EIP-191 签名者(可检测篡改),并且对于 value/agg/identity/sequence 声明,会使用标准库 Fraction + sympy 独立重新推导判定。字段遭到篡改、签名者错误,或判定实际上不成立,都会明确报错——即使 NumProof 本身签错的回执,也会被重新推导发现。Agent 可以自行重新计算一个数字;但它无法出具一份独立的签名证明,让另一方接受。这种独立性——而非算术——才是产品的核心。格式 + 规范:RECEIPT_FORMAT.md。


为什么要确定性(以及这为何重要)

通用“AI 防护机制”会用一个模型来评估另一个模型——结果具有概率性,而且评估模型本身也可能产生幻觉。 NumProof 会精确重新计算数学结果(有理数运算 + 符号恒等式检查),并返回可复现的判定和追踪记录。当它无法证明某件事时,会说弃权,而不是猜测。对于金融、受监管领域和 Agent 工作流,“这个数字有可证明的正确性”胜过“另一个模型觉得它看起来没问题”。完整对比表:comparison.md。


定价

方案价格适用对象
Sandbox$0Web 演示 + 免费额度
x402 PAYG$0.005 / callAgent 到工具,无需订阅
Builder$29/moAPI + MCP + CLI,2k 额度
Pro$99/mo批处理、webhook、CI、签名导出,10k 额度
Finance Team$299/mo5 个席位、版本差异、契约包、品牌化导出

此仓库包含什么

numproof Python SDK(NumProof 客户端)、MCP 服务以及可运行示例——均为托管 API 的轻量 HTTP 客户端。**采用 MIT 许可证。**验证引擎、金融审计逻辑、形式化(Lean)证明层级和签名功能均由托管服务提供,不在此仓库中。

发现了错误的判定?请提交 issue,并附上准确的声明——正确性就是整个产品的核心。

评论

支持 Markdown

第一次接触 MCP?

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

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