{"name":"io.github.travisbergen2/rpcs1-agent-tuner","slug":"travisbergen2-rpcs1-agent-tuner","title":"RPCS-1 Agent Tuner & Translation Bridge","description":"Find your AI agent's likely failure mode, get runtime settings, and clarify ambiguous prompts.","url":"https://mcp.market/server/travisbergen2-rpcs1-agent-tuner","rating":null,"grade":"A","score":91,"certified":false,"status":"active","category":"ai","tags":["ai"],"presence":{"score":23,"stars":0,"forks":0,"downloads_week":null,"last_push_at":"2026-09-12T14:07:47.000Z","license":"MIT"},"uptime":{"percent":100,"checks":28,"ok":28,"last_checked_at":"2026-11-04T10:25:43.455Z","last_ok_at":"2026-11-04T10:25:43.455Z","latency_ms":302},"claimed":false,"transport":"remote","callable_via_gateway":true,"default_price_micros":0,"repository":"https://github.com/travisbergen2/rpcs1-sdk","website":"https://rpcs1.dev/tuner?utm_source=official-mcp-registry&utm_medium=mcp-directory&utm_campaign=listing","version":"0.3.0","remotes":[{"type":"streamable-http","url":"https://rpcs1.dev/mcp"}],"packages":[],"tools":[{"name":"calibrate_profile","description":"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","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"answers":{"type":"object","properties":{"TI":{"type":"string","enum":["a","b","c"]},"SG":{"type":"string","enum":["a","b","c"]},"FT":{"type":"string","enum":["a","b","c"]},"UE":{"type":"string","enum":["a","b","c"]},"AR":{"type":"string","enum":["a","b","c"]}},"additionalProperties":false,"description":"Chosen option id per primitive. Omit entirely to receive the questions."}},"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"fork","description":"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.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"text":{"type":"string","minLength":1,"maxLength":5000,"description":"The message to analyze for forks."},"rejected":{"type":"array","items":{"type":"string"},"maxItems":12,"description":"Reading summaries the user already rejected — never re-offered."}},"required":["text"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"interpret","description":"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.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"text":{"type":"string","minLength":1,"maxLength":5000,"description":"The message to interpret."},"risk":{"type":"string","enum":["casual","advice","high-stakes","safety-critical"],"default":"advice","description":"Risk category for ambiguity threshold."}},"required":["text"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"normalize","description":"Clean up text with ellipses, fragments, and run-on thoughts into coherent prose. Use when a user types stream-of-consciousness or fragmented input.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"text":{"type":"string","minLength":1,"maxLength":5000,"description":"Fragmented text to normalize."}},"required":["text"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"prepare_prompt","description":"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.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"text":{"type":"string","minLength":1,"maxLength":5000,"description":"The user’s raw message."},"risk":{"type":"string","enum":["casual","advice","high-stakes","safety-critical"],"default":"advice","description":"Risk category for the ambiguity threshold."},"profile":{"type":"object","properties":{"TI":{"type":"number","minimum":0,"maximum":100,"description":"Temporal Integration: 0 = bottom line first, 100 = full context first"},"SG":{"type":"number","minimum":0,"maximum":100,"description":"Signal Gain: 0 = flat and factual, 100 = warm and expressive"},"FT":{"type":"number","minimum":0,"maximum":100,"description":"Filtering Threshold: 100 = explicit and literal, 0 = subtext lands"},"UE":{"type":"number","minimum":0,"maximum":100,"description":"Update Elasticity: 100 = pushback welcome, 0 = prefers consistency"},"AR":{"type":"number","minimum":0,"maximum":100,"description":"Ambiguity Resolution: 100 = commit to best reading, 0 = clarify first"}},"required":["TI","SG","FT","UE","AR"],"additionalProperties":false,"description":"The user’s ReceiverProfile from calibrate_profile. Shapes clarify-vs-commit behavior."}},"required":["text"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"recommend_agent_configuration","description":"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.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"task":{"type":"object","properties":{"task_summary":{"type":"string","minLength":1,"maxLength":2000,"default":"Customer support agent handling refunds, billing disputes, and policy exceptions","description":"Plain-language description of what the AI agent does."},"domain":{"type":"string","minLength":1,"maxLength":100,"default":"customer_support","description":"Optional domain such as coding, research, or support."},"expected_duration_per_call":{"type":"string","enum":["short","medium","long"],"default":"medium"}},"additionalProperties":false,"default":{"task_summary":"Customer support agent handling refunds, billing disputes, and policy exceptions","domain":"customer_support","expected_duration_per_call":"medium"}},"environment":{"type":"object","properties":{"entropy":{"type":"string","enum":["stable","moderate","dynamic","chaotic"],"default":"dynamic","description":"How often the operating environment changes."},"predictability":{"type":"string","enum":["highly_predictable","somewhat_predictable","unpredictable"],"default":"somewhat_predictable","description":"How predictable changes are when they occur."},"stakes":{"type":"string","enum":["low","medium","high","catastrophic"],"default":"high","description":"The cost of an incorrect agent action."},"context_relevance":{"type":"string","enum":["short","medium","long"],"default":"medium","description":"How far back relevant context usually extends."},"commitment_style":{"type":"string","enum":["decisive","balanced","cautious"],"default":"cautious","description":"How quickly the agent should commit to an action."}},"additionalProperties":false,"default":{"entropy":"dynamic","predictability":"somewhat_predictable","stakes":"high","context_relevance":"medium","commitment_style":"cautious"}},"target_platform":{"type":"string","enum":["anthropic","openai","open_source","generic"],"default":"anthropic","description":"The platform whose runtime parameters should be recommended."},"target_model":{"type":"string","minLength":1,"maxLength":200,"description":"Optional: the actual model id this agent will run on (e.g. \"claude-sonnet-4-6\", \"deepseek-v4-pro\"). When it matches a measured per-model receiver entry (E-LIT table), measured translation directives and evidence-graded posture data are attached to platform_parameters. Unknown models fall back to platform-level behavior unchanged."}},"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"render_reply","description":"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.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"text":{"type":"string","minLength":1,"maxLength":10000,"description":"Your draft reply."},"profile":{"type":"object","properties":{"TI":{"type":"number","minimum":0,"maximum":100,"description":"Temporal Integration: 0 = bottom line first, 100 = full context first"},"SG":{"type":"number","minimum":0,"maximum":100,"description":"Signal Gain: 0 = flat and factual, 100 = warm and expressive"},"FT":{"type":"number","minimum":0,"maximum":100,"description":"Filtering Threshold: 100 = explicit and literal, 0 = subtext lands"},"UE":{"type":"number","minimum":0,"maximum":100,"description":"Update Elasticity: 100 = pushback welcome, 0 = prefers consistency"},"AR":{"type":"number","minimum":0,"maximum":100,"description":"Ambiguity Resolution: 100 = commit to best reading, 0 = clarify first"}},"required":["TI","SG","FT","UE","AR"],"additionalProperties":false,"description":"The user’s ReceiverProfile from calibrate_profile."}},"required":["text","profile"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"rewrite","description":"Get rewrite instructions for adapting text to a specific style: technical, plain, socially_gentle, concise, detailed, or direct. Use when communication needs tone adjustment.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"text":{"type":"string","minLength":1,"maxLength":5000,"description":"Text to rewrite."},"style":{"type":"string","enum":["technical","plain","socially_gentle","concise","detailed","direct"],"default":"plain","description":"Target audience style."}},"required":["text"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"route_intent","description":"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).","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"text":{"type":"string","minLength":1,"maxLength":5000,"description":"The user’s raw message."},"hypotheses":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","minLength":1,"maxLength":64},"label":{"type":"string","minLength":1,"maxLength":200},"cues":{"type":"array","items":{"type":"string","minLength":1,"maxLength":64},"maxItems":32,"description":"Lexical cues for the built-in scorer; omit when passing likelihoods."},"paraphrase":{"type":"string","minLength":1,"maxLength":500,"description":"The user’s message REWRITTEN UNAMBIGUOUSLY under this reading. Strongly recommended: when the router asks, the user verifies intent by reading these restatements, not by decoding labels."},"prior":{"type":"number","exclusiveMinimum":0}},"required":["id","label"],"additionalProperties":false},"minItems":2,"maxItems":24,"description":"Candidate interpretations. Omit to use a generic six-intent starter set plus a catch-all."},"likelihoods":{"type":"object","additionalProperties":{"type":"number","minimum":0},"description":"Optional externally computed likelihood per hypothesis id (e.g. model-derived) — replaces the lexical scorer."},"profile":{"type":"object","properties":{"TI":{"type":"number","minimum":0,"maximum":100,"description":"Temporal Integration: 0 = bottom line first, 100 = full context first"},"SG":{"type":"number","minimum":0,"maximum":100,"description":"Signal Gain: 0 = flat and factual, 100 = warm and expressive"},"FT":{"type":"number","minimum":0,"maximum":100,"description":"Filtering Threshold: 100 = explicit and literal, 0 = subtext lands"},"UE":{"type":"number","minimum":0,"maximum":100,"description":"Update Elasticity: 100 = pushback welcome, 0 = prefers consistency"},"AR":{"type":"number","minimum":0,"maximum":100,"description":"Ambiguity Resolution: 100 = commit to best reading, 0 = clarify first"}},"required":["TI","SG","FT","UE","AR"],"additionalProperties":false,"description":"The user’s ReceiverProfile from calibrate_profile. Shapes commit-vs-clarify thresholds."}},"required":["text"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}}],"scan":{"score":91,"grade":"A","scanned_at":"2026-09-24T17:27:25.214Z","report":{"scannerVersion":"0.1.9","scannedAt":"2026-09-24T17:27:25.179Z","components":{"code":{"score":-1,"max":25,"notes":["remote-only server, no package to scan"]},"reliability":{"score":20,"max":20,"notes":["remote reachable in 1097ms"]},"poisoning":{"score":15,"max":15,"notes":["9 tool descriptions checked"]},"auth":{"score":10,"max":15,"notes":["open endpoint, read-only tools"]},"maintenance":{"score":15,"max":15,"notes":["last push 12 days ago"]},"identity":{"score":8,"max":10,"notes":["registry namespace matches repository owner","GitHub account older than a year"]}},"findings":[],"inputs":{"probes":[{"url":"https://rpcs1.dev/mcp","reachable":true,"authRequired":false,"latencyMs":1097,"serverInfo":{"name":"rpcs1-agent-tuner","version":"0.4.2"}}],"packages":[],"repo":{"found":true,"owner":"travisbergen2","repo":"rpcs1-sdk","archived":false,"pushedAt":"2026-09-12T14:07:47Z","stars":0,"forks":0,"openIssues":1,"ownerType":"User","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/48843555?v=4","ownerCreatedAt":"2019-03-22T21:49:03Z","license":"MIT"},"icon":{"url":null,"source":"none"},"presence":{"stars":0,"forks":0,"downloadsWeek":null,"license":"MIT","lastPushAt":"2026-09-12T14:07:47.000Z","score":23}}}},"grade_history":[],"reviews":[]}