RPCS-1 Agent Tuner & Translation Bridge

io.github.travisbergen2由 GitHub 账号 travisbergen2 发布v0.3.0更新于 Nov 2, 2026

Find your AI agent's likely failure mode, get runtime settings, and clarify ambiguous prompts.

已验证Streamable HTTP可网页运行效率与工作流AI 与机器学习

概览

AI 生成的概览

远程匿名 MCP 服务器,用于诊断 AI 智能体的失效模式、给出运行时参数建议,并澄清含糊的提示与回复。

可以做什么
  • 诊断智能体,返回五维画像、运行时参数、预测状态与下一步测试
  • 检测消息中的歧义,列出多种解读并给出澄清问题
  • 把碎片化文本整理成通顺文字,并给出指定风格的改写指令
  • 通过五道强制选择题构建沟通偏好画像
  • 在行动前还原用户真实意图,并按画像渲染回复草稿
  • 在多种解读之间做路由,决定直接执行、列出选项还是先澄清
适用场景
适合为已部署的智能体调整 temperature、top_p 与策略等参数,或在提示与回复需要消歧和语气调整时使用。适用于客服、编码与研究类智能体,尤其是目前靠猜测设定参数的场景。
运行要求
无需安装:它是基于 streamable HTTP 的公开远程端点,未声明认证、API 密钥或环境变量。README 提到按 IP 限流(默认每小时 120 次请求),部分客户端可选使用 OAuth。
安装前请注意
发送的文本(包括用户消息和回复草稿)会传到第三方托管服务,请勿粘贴敏感内容。该画像被说明为沟通偏好测量,而非心理评估。返回的是建议性参数,需要自行测试验证,并非保证。

安装

在 SourceWeft 中

  1. 打开 控制台中的 RPCS-1 Agent Tuner & Translation Bridge,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

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

交给智能体安装

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

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

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

其他 MCP 客户端

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

{
  "mcpServers": {
    "rpcs-1-agent-tuner-translation-bridge": {
      "type": "http",
      "url": "https://rpcs1.dev/mcp"
    }
  }
}

README

RPCS-1 SDK — AI Agent Tuner

Start with the free tuner: find your AI agent’s likely failure mode, get runtime settings to try, and validate them with a harder case.

RPCS-1 helps teams make agent settings deliberate rather than guessed. Describe the task, change rate, predictability, stakes, relevant context horizon, and commitment style; it returns a five-primitive profile, a runtime recommendation, and a next test. The suite also includes SendRight for catching ambiguous prompts before handoff and the Translation Bridge for profile-aware communication rendering.

Repository Structure

rpcs1-sdk/├── packages/core/          # TypeScript engine (@rpcs1/core): tuner + translation layer + receiver-profile intake├── packages/web/           # Next.js app serving rpcs1.dev (tuner, translator, docs, Stripe, /mcp endpoint)├── packages/mcp-server/    # Standalone STDIO MCP server (what Glama and MCP clients build)├── sdk/python/             # Python SDK (pip install rpcs1)├── skills/                 # Canonical agent skill package (HF-HATP v2.0 SKILL.md)├── docs/                   # Architecture, deployment, launch playbook└── .github/workflows/      # CI/CD

Quick Start — Python SDK

bash
pip install rpcs1
python
from rpcs1 import recommend_params
config = recommend_params(    task_description="Customer support agent",    environment_entropy="dynamic",    environment_predictability="somewhat_predictable",    stakes="high",    target_platform="anthropic",)
print(config.platform_parameters.temperature)   # e.g. 0.52print(config.predicted_regime)                  # 'stable'print(config.reasoning)                         # cites Matching Principle

Quick Start — TypeScript Core

typescript
import { recommend } from '@rpcs1/core';
const rec = recommend({  task: { task_summary: 'Customer support agent' },  environment: {    entropy: 'dynamic',    predictability: 'somewhat_predictable',    stakes: 'high',    context_relevance: 'medium',    commitment_style: 'cautious',  },  target_platform: 'anthropic',});
console.log(rec.platform_parameters.temperature);console.log(rec.predicted_regime);

Development

bash
# Install dependenciesnpm ci --include=optional
# Build and test TypeScript corenpm run build --workspace=@rpcs1/corenpm run test --workspace=@rpcs1/core
# Test Python SDKcd sdk/pythonpip install -e ".[dev]"pytest -v

Web environment variables are documented in packages/web/.env.example (Stripe, Resend, license signing, rate limits). MCP production controls are listed under Production controls below.

The web app deploys to Vercel on Node 24 (region iad1); pushes to main trigger the production deployment.

The Matching Principle

The SDK implements Pred-09-5 from IMM Paper 9:

Stable receivers in an environment with entropy H satisfy TI ~ 1/H.

High-entropy environments → short attention windows (TI ~ 10). Low-entropy environments → long attention windows (TI ~ 90).

Every parameter recommendation traces back to this principle or the basin stability geometry (oscillation/overload/freeze boundary conditions).

Web App

The site can also explain the same product facts in technical, executive, plain-language, or literal-and-precise registers. The explanation changes; pricing, deliverables, and limitations do not.

Brand — Explicit Formula (product) / RPCS-1 (mechanism)

The site fronts one consumer product: Explicit Formula — the box on the landing page. Explicit: says exactly what it means (the product's one job); formula: a repeatable method. The wordmark is an advisory-sticker homage (components/StickerLogo.tsx), deliberately distinct from the trademarked RIAA label.

The mechanism brand — RPCS-1, the receiver engine, its laws, and its scorecard — is unchanged and renders as "Powered by RPCS-1" in the footer. House rule: outcome on the wrapper, mechanism one click deep.

  • The brand is a token: packages/web/lib/brand.ts. Renaming the product is one env var (NEXT_PUBLIC_BRAND_NAME) or one line — no other code changes.
  • Every station that used to compete for the nav (SendRight, Bridge, Translator, Calibrate, Tuner, R&D, …) stays live at its original route and is indexed at /labs (packages/web/lib/labs.ts).
  • The consumer domain follows the deployment: set NEXT_PUBLIC_APP_URL when it goes live. rpcs1.dev remains the mechanism home either way.

SendRight (Interpretation Mirror + Hand-off)

SendRight is the type-and-send front door: type a prompt the way you'd say it out loud, see the readings it actually supports, lock in the one you meant, and hand it to your own model app with one click.

Modules (packages/core):

  • mirror(text) — deterministic fork detectors (no ML, no API calls). Returns { clean, readings[], ambiguousSpans[] }. Detectors: compare-or-choose ("X or Y?" questions without an explicit verb), grouping forks ("A and B or C"), scope forks ("only ... and ..."), dangling pronouns, bare objects ("fix it"), external references ("the above"). Contract: silent on clean prompts — zero-fork controls in tests/mirror.test.ts enforce it. Pure function, callable from any front end (web box, NL2Build, CLI).
  • applyReading(text, clarifier) — appends the chosen reading's clarifier so the locked interpretation travels with the prompt.
  • buildHandoff(vendor, prompt) / listVendors() — per-vendor capability table for opening the user's own model app with the prompt pre-filled. Prefill URL parameters are undocumented vendor behavior and churn without notice; each entry carries a verified date and must be re-checked at release. Verified 2026-07-25: ChatGPT, Claude, Perplexity, Grok support URL prefill; Gemini and Copilot are clipboard-fallback only. Logged-out users may lose the prefill at login. All vendors degrade gracefully to clipboard.

Web: /send (packages/web/app/send) renders the box via components/SendBox.tsx — mirror runs client-side (debounced, zero network); the hand-off happens in the user's own app. SendRight never makes the model call and never sees the answer.

Feasibility boundary (honest scope): reasoning-stream digests and mid-generation stop/realign are only possible where rpcs1 itself owns the API call (the fan-out / power-user mode, not yet shipped). They are structurally impossible in vendor chat UIs and via the MCP surface — SendRight's hand-off path intentionally trades those away for zero keys, zero cost, and zero data custody.

MCP Server

RPCS-1 is also available as a public, anonymous, read-only MCP server:

text
https://rpcs1.dev/mcp

It exposes eight read-only tools across four families:

  • recommend_agent_configuration — diagnose an AI agent against environmental entropy, predictability, stakes, context horizon, and commitment style; receive runtime settings to try and a next test.
  • interpret, normalize, and rewrite — detect ambiguity, turn fragmented text into coherent prose, and return style-specific rewrite instructions.
  • route_intent — entropy routing over competing interpretations of a message: the calling model proposes candidate readings (paraphrases and priors); the deterministic router computes the posterior and decides commit, present options, or clarify. The commit-vs-clarify authority in the pipeline.
  • calibrate_profile, prepare_prompt, and render_reply — create a continuous communication-preference profile, recover intended meaning before an action, and render a reply for that profile.

Translation Layer

"Say what you mean. Hear what they meant."

The Translation Bridge treats the profile as a transportable parameter, not a category label. The five-question Calibrate flow measures communication preferences for rendering only; it is not a psychological assessment or diagnosis. prepare_prompt / render_reply use that profile on the inbound and outbound sides of an interaction. The canonical agent-facing specification lives at skills/rpcs1-translation-layer/SKILL.md.

Tuner examples

The first useful call is a support copilot under live pressure:

text
Use recommend_agent_configuration to diagnose my support copilot.
Task: refund and billing dispute triageEnvironment: dynamic, somewhat_predictable, high stakesContext relevance: mediumCommitment style: cautiousTarget platform: anthropic

The output should lead with the five-primitive profile, failure-risk score, predicted regime, runtime posture, and next test to run.

The second useful call is a coding agent in a changing repository:

text
Use recommend_agent_configuration to diagnose my coding agent.
Task: inspect a changing repository, edit files, run tests, and open a pull requestEnvironment: moderate, somewhat_predictable, medium stakesContext relevance: longCommitment style: balancedTarget platform: openai

The output should still lead with the five-primitive profile, failure-risk score, predicted regime, runtime posture, and next test to run.

Connection details and client compatibility notes are available at https://rpcs1.dev/docs/mcp. Practical coding, support, and research examples are available at https://rpcs1.dev/docs/examples.

Hyperagent uses the fixed public OAuth client hyperagent-rpcs1 with PKCE and the registered callback https://hyperagent.com/api/mcp-servers/callback. No client secret is required.

The MCP surface exposes the deterministic agent-tuning workflow alongside read-only translation and per-user rendering tools. New tools should be added only after their scoring or behavior contracts are implemented and tested in the core package.

Discovery metadata:

Production controls:

  • MCP_HOURLY_LIMIT controls per-instance MCP throttling (default: 120 requests per IP/hour).
  • MCP_MAX_BODY_BYTES limits request bodies (default: 65536 bytes).
  • MCP_ALLOWED_HOSTS is a comma-separated production host allowlist.
  • MCP_ALLOWED_ORIGINS is an optional comma-separated browser-origin allowlist. Leave it blank to reject cross-origin browser requests.
  • MCP_OAUTH_JWT_SECRET signs short-lived OAuth authorization codes and access tokens.
  • /api/health reports deployment and MCP readiness metadata.

For globally consistent abuse protection across Vercel instances, configure a Vercel Firewall rate-limit rule for /mcp. The in-process limiter is defense in depth, not a distributed quota.

Glama Docker checks should build and launch the local STDIO server, not connect to the hosted https://rpcs1.dev/mcp endpoint. Use this build spec:

json
{  "buildSteps": [    "npm ci --include=optional",    "npm run build --workspace=@rpcs1/core",    "npm run build --workspace=@rpcs1/mcp-server"  ],  "cmdArguments": [    "mcp-proxy",    "--",    "node",    "packages/mcp-server/dist/index.js"  ],  "environmentVariablesJsonSchema": {    "type": "object",    "properties": {},    "required": []  },  "placeholderArguments": {}}

License

MIT

来源:README.md,提交 4af6781

工具

9

recommend_agent_configuration

Recommend AI agent configuration

Diagnose why a deployed AI agent may fail. Takes environmental entropy, predictability, stakes, context horizon, and commitment style, then returns receiver profile values (TI, SG, FT, UE, AR), platform parameters (temperature, top_p, strategy), regime prediction, reasoning, and warnings. Optionally pass target_model (the actual model id) to attach MEASURED per-model receiver posture (E-LIT table): evidence-graded literalness, truth-override boundary, and translation directives. Deterministic, stateless, read-only — does not store past recommendations.

输入参数taskenvironmenttarget_modeltarget_platform

interpret

Interpret ambiguous human input

Detect ambiguity in user messages using the RPCS-1 Signature Ambiguity Framework. Returns AR level (AR0-AR5), confidence, candidate interpretations with scores, clarifying questions, and suggested next step. Use when a user says something vague, passive-aggressive, or underspecified.

输入参数risktext必填

fork

Fork view — how could this message read?

The calibrated ambiguity surface: deterministic structural fork detectors (reference, scope, grouping, compare-vs-choose, polysemy) with character-offset spans, plus per-reading one-line clarifiers the sender can append to lock a reading in. Returns competing readings, an ask-back question, and a forked-answer scaffold. Silent on clean text by contract. Runs the deterministic mirror floor only over MCP (no model). Prefer this over interpret for span-level ambiguity detection: interpret’s entity list is a word-list engine (calibrated 2026-08-15: no discrimination on conversational text) — advisory only.

输入参数text必填rejected

normalize

Normalize fragmented human input

Clean up text with ellipses, fragments, and run-on thoughts into coherent prose. Use when a user types stream-of-consciousness or fragmented input.

输入参数text必填

rewrite

Rewrite text for a target audience

Get rewrite instructions for adapting text to a specific style: technical, plain, socially_gentle, concise, detailed, or direct. Use when communication needs tone adjustment.

输入参数text必填style

calibrate_profile

Calibrate a user’s receiver profile

Build a ReceiverProfile (TI, SG, FT, UE, AR — continuous 0-100, never a category label) from five behavioral forced-choice answers. Call with NO answers to get the five questions to ask the user; call again with their answers (a/b/c per primitive) to get the profile. Store the returned profile JSON in the user’s notes or memory and pass it to render_reply / prepare_prompt on every turn. Deterministic and stateless — nothing is stored server-side. Schema: https://rpcs1.dev/v1/receiver-profile.json

输入参数answers

prepare_prompt

Prepare a user’s message before acting on it

The inbound half of the Translation Bridge loop. Takes the user’s raw message (possibly ambiguous, fragmented, or underspecified) plus their ReceiverProfile, and returns the recovered intent, a canonical translation to act on, ambiguity level, and — profile-aware — whether to clarify or commit. Call this before acting on any ambiguous user request. Scope note: its detectors are lexical/structural (vague signals, ambiguous references) — for the commit-vs-clarify DECISION, route_intent (with your own proposed readings) is the authority; when they disagree, follow route_intent.

输入参数risktext必填profile

render_reply

Render a reply for a specific user’s receiver profile

The outbound half of the Translation Bridge loop. Takes your draft reply plus the user’s ReceiverProfile and returns deterministic rendering instructions (structure, warmth, explicitness, revision posture, ambiguity handling — each with a why-trace). Apply the instructions to your draft before answering. Call this on every reply to a calibrated user.

输入参数text必填profile必填

route_intent

Route an ambiguous request: commit, present options, or clarify

Entropy routing over competing interpretations — the model proposes, the deterministic core disposes. YOU generate the candidate readings of the user’s message (3–7 short hypotheses covering the plausible interpretations, INCLUDING likely-typo readings, idiom-vs-literal readings, and domain senses) and pass them as hypotheses, ideally with your own likelihoods (0–1 per reading) AND a paraphrase per reading — the user’s message rewritten unambiguously under that interpretation, so the user can VERIFY intent by recognition before anything commits (one misread prompt skews a whole thread). The router computes the posterior and its normalized entropy T̂ and returns the decision: commit (one reading dominates), commit_with_note (close alternative disclosed), present_options (several readings live), or clarify (ask before acting — open-endedly when nothing discriminates). Thresholds adapt to the user’s ReceiverProfile (AR widens/narrows the commit region; high FT discloses near-ties). This tool is the commit-vs-clarify AUTHORITY in the pipeline. Omitting hypotheses falls back to a generic six-intent PRODUCT-ROUTING starter set — do not use the fallback for interpreting arbitrary sentences. Deterministic, stateless, read-only. Benchmarked: RTEB v1.1 (developer-bench grade; see docs/routing.md).

输入参数text必填profilehypotheseslikelihoods

版本历史

1
  1. v0.3.0最新Sep 16, 2026

评分

已满足适用检查项的 100%

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

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