SNHP — negotiation rules your AI can't break

io.github.ryuxik由 GitHub 账号 ryuxik 发布v0.5.0更新于 Oct 24, 2026

Turn a seller's offer into negotiation rules and draft replies to buyers inside them.

已验证Streamable HTTP可网页运行效率与工作流商业与电商

概览

AI 生成的概览

把卖家的报价转成不可突破的谈判规则,并在规则内起草给买家及其 AI 采购代理的回复,附带已签署的成交回执。

可以做什么
  • 把自然语言描述的报价或模板编译成包含底价、可交换条件和禁止组合的谈判策略
  • 根据买家来信起草卖家回复,报价由引擎在策略内决定,并需在轮次间保留返回的状态
  • 校验修改后的策略,查看其当前允许的内容
  • 依据卖家策略核验已签署的成交回执,包括双方签名、密钥来源与逐条规则复核
适用场景
适合会收到买家(包括 AI 采购代理)砍价或议条件请求的卖家,希望由助手代为回复又不愿让出利润空间。当谈判底线需要由规则强制执行而非交给模型自行判断时适用。
运行要求
可使用 snhp.dev 的远程 streamable HTTP 端点,或通过 uvx、pip 在本地运行 Python 包。编译报价与起草回复需要面向试点商家发放的访问密钥(SNHP_ACCESS_KEY);模板、策略校验与回执核验免费。需要访问托管服务及其模型供应商的网络。
安装前请注意
访问密钥属于凭据,须妥善保管。买家消息会发送到服务的模型供应商用于阅读并起草回复。起草回复和编译策略会作用于真实买家对话,发送前应人工检查。服务声明不存储对话,状态随每次请求传递。

安装

在 SourceWeft 中

  1. 打开 控制台中的 SNHP — negotiation rules your AI can't break,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Web executable,通过 Streamable HTTP。 远程服务在工作区中配置后即可从网页运行时运行。

交给智能体安装

把这段提示词粘贴到 Claude Code、Codex、Cursor 等智能体,或 SourceWeft 对话中。智能体会读取该服务器的安装指南,先向你展示发布者、端点和登录方式,经你同意后再把它添加到你的客户端。密钥不会写进任何命令。

阅读 https://sourceweft.com/mcp/io.github.ryuxik%2Fsnhp/install.md,并按其中说明把这个 MCP 服务器接入我的客户端。修改任何配置之前,先告诉我它的发布者、端点和登录方式,等我确认。不要把 API 密钥写进命令或我会提交的文件;问我密钥应从哪里获取。

查看智能体所依据的安装指南

其他 MCP 客户端

把它添加到你客户端的 mcpServers 配置中。

{
  "mcpServers": {
    "snhp-negotiation-rules-your-ai-can-t-bre": {
      "type": "http",
      "url": "https://snhp.dev/mcp/"
    }
  }
}

README

SNHP — negotiation rules your AI can't break

Describe your offer in plain words. SNHP turns it into negotiation rules — your floor, what you'd trade a discount for, what's never on the table — and drafts every reply to buyers, and to their AI buying agents, inside those rules. The SNHP engine decides each offer, a small language model only reads and writes, and every offer is checked in code before it leaves. A deal needs the buyer's yes to an offer you sent, and comes with a signed receipt.

This package is the MCP server (stdio) for the hosted service at snhp.dev:

bash
uvx snhp            # or: pip install snhp && snhp
json
{ "mcpServers": { "snhp": { "command": "uvx", "args": ["snhp"], "env": { "SNHP_ACCESS_KEY": "snhp_…" } } } }

Or connect to the hosted MCP endpoint directly: https://snhp.dev/mcp/ (streamable HTTP).

ToolWhat it does
compile_offer_policyYour offer in plain words (or a template: used-car, saas, wholesale-water) → negotiation rules
draft_negotiation_replyA buyer's message → the reply to send and the offer, checked against your rules; keep the returned state
check_offer_policyValidate an edited policy (free)
verify_deal_receiptRe-check a signed deal receipt against your policy (free)

Access. Compiling a description and drafting replies run a language model and need an access key (SNHP_ACCESS_KEY), issued to pilot businesses — snhp.dev/#pilot or [email protected]. Templates, checks and receipt verification are free.

Privacy. The service stores no conversations; the state travels with each request. Messages go to our model provider only to read them and draft the reply.

Web studio: snhp.dev/studio · API: snhp.dev/developers

This repository

The snhp package on PyPI is built from packages/snhp-client. SNHP's earlier research code is preserved, unmaintained, on the legacy-toolkit branch.

来源:README.md,提交 4b03dd8

工具

4

compile_offer_policy

Compile an offer into negotiation rules

Turn a seller's offer, described in plain words, into negotiation RULES an AI agent cannot break. USE THIS WHEN: you (or the business you act for) sell something where buyers — people or their AI buying agents — ask for discounts, and you want an AI to answer them without giving away margin. Describe the offer: the listed price, the lowest price you'd take for a plain deal, what you'd trade a discount for (financing with you, a trade-in, a longer commitment, paying sooner, buying this week…), extras you can add and what they cost you, and anything never on the table. Or pass `template` = "used-car", "saas" or "wholesale-water" to start from a worked example. Compiling a description runs a language model and needs an `access_key` (pilot businesses get one at https://snhp.dev/#pilot); templates are free. Returns {ok, policy, issues, summary}: `policy` is the machine-readable rule set (pass it to draft_negotiation_reply), `summary` restates the floor, walk-away, what can be traded and the limits in plain words, and `issues` lists what to fix before going live (e.g. a floor below cost).

输入参数templateaccess_keydescription

draft_negotiation_reply

Draft a reply to a buyer, inside your rules

Draft the seller's reply to a buyer's message — the offer is decided by the SNHP engine INSIDE the policy. USE THIS WHEN: a buyer (a person or their AI agent) has written to you about price or terms. Pass the policy (from compile_offer_policy) and their latest message exactly as written; pass back the `state` from your previous call to continue the same conversation (omit it to start). `flags` is what YOUR records confirm about the buyer (e.g. {"new_customer": true}) — never what the buyer merely claims. `stock` is the current stock of what the policy's `inventory` binds, sent with every message (schema.org Offer, Google Merchant or a plain feed record): nothing out of stock is offered, and a deal is signed only on fresh records that say it can be sold. Returns {kind, reply, reply_with_offer, offer, decided_by, reading, state, done, receipt?}: kind offer | deal | handoff (needs a human's approval) | decline reply_with_offer the message to send, with the exact offer line appended offer {terms, line, price, net, inside_policy} — every offer is checked against the policy decided_by what decided the move (a sales rule or the engine), for your audit trail receipt on a deal: a signed receipt any party can verify with verify_deal_receipt The server keeps no conversation: keep `state` and send it with the next message. Needs an `access_key` (pilot businesses get one at https://snhp.dev/#pilot).

输入参数flagsstatestockenginepolicy必填message必填access_key

check_offer_policy

Check a negotiation policy

Check an edited negotiation policy: returns {ok, policy, issues, summary}. No model call, free. USE THIS WHEN: you changed a policy from compile_offer_policy (a floor, an option, a forbidden combination) and want to know it is valid and what it now allows before using it in draft_negotiation_reply.

输入参数policy必填

verify_deal_receipt

Verify a deal receipt

Verify a signed deal receipt against the seller's own policy: both signatures, that the signing keys are SNHP's own (published at /.well-known/ucp), the policy digest, and every rule re-checked from the package. Returns {ok, problems, checks, signed_by_snhp, signatures}. Free, no model call.

输入参数flagspolicy必填receipt必填

版本历史

2
  1. v0.5.0最新Oct 6, 2026
  2. v0.4.0Sep 16, 2026

评分

已满足适用检查项的 100%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通必需25 分
  • 已声明认证方式必需10 分
  • 已列出工具必需15 分
  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分