accueil / serveurs / Dev & Code / io.github.Latimer-Woods-Tech/wordis-bond
io.github.Latimer-Woods-Tech/wordis-bond
serveur MCP (Model Context Protocol) · wordis-bond 0.1.0
Référencé dans l'annuaire. Seul le pentest comportemental fait foi, et il n'a pas encore été exécuté sur ce serveur.
Est-ce que io.github.Latimer-Woods-Tech/wordis-bond est sûr ?
Au dernier audit MCP Hub, le serveur MCP « io.github.Latimer-Woods-Tech/wordis-bond » est classé « Non encore testé ». Référencé dans l'annuaire. Seul le pentest comportemental fait foi, et il n'a pas encore été exécuté sur ce serveur. Le verdict est réévalué en continu ; consultez la fiche pour l'état à jour.
Méthode : MCP Hub analyse la description de chaque outil (couche 1) et, pour le verdict fort, exécute le serveur dans une micro-VM isolée avec leurres et réseau bloqué (couche 2). On publie des noms et des compteurs, jamais le contenu brut renvoyé par un outil.
Les 16 outils
- create_monitor≈ 320 tokens
Create a production monitor. "scenarioGoal" is what GOOD looks like for this agent — the judge scores every ingested call against it, exactly as a test scenario goal works. Optional "assertions" are plain-English checks the agent must satisfy. Read the ingest secret afterwards from GET /api/monitor/{id}/secret. Requires a pro or enterprise plan.
Paramètres, retour & exemple (7)
Paramètresname· string · requis
Human name, e.g. "Support line — main agent".rubric· string · optionnel
Extra free-text rubric appended to the judge instructions.language· string · optionnel
BCP-47 language tag, default "en".assertions· array · optionnel
Plain-English checks the agent must satisfy.sampleRate· number · optionnel
Fraction 0..1 of ingested calls to score. Default 1 (score every call).scenarioGoal· string · requis
What the agent is supposed to accomplish on every call.alertWebhookUrl· string · optionnel
Optional public https URL to receive signed drift alerts.
Exemple d'appel{"name": "create_monitor", "arguments": {"name": "texte", "scenarioGoal": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - create_suite≈ 448 tokens
Create a reusable test suite: a named set of scenarios/personas pinned to a target voice agent you run. Optionally give it a schedule ("weekly" | "daily" | "hourly", plan-gated) so it runs automatically and flags drift.
Paramètres, retour & exemple (5)
Paramètresname· string · requislanguage· string · optionnel
BCP-47 language tag, default "en".schedule· string · optionnel
Cadence for scheduled runs, e.g. "weekly" | "daily" | "hourly".scenarios· array · optionnel
Persona + goal pairs the suite exercises.targetAgent· object · requis
The voice agent under test — a system you run. transport "direct" (SIP/WebRTC) has near-zero cost and works on every plan; "pstn" places a real carrier call (pro+ plans) and only to a number you have verified. The hosted demo target is { "transport": "direct", "peerId": "wb-demo-dental" }.
Exemple d'appel{"name": "create_suite", "arguments": {"name": "texte", "targetAgent": {}}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - diff_flow≈ 160 tokens
Show the structural diff between two versions of a version-controlled flow: which nodes and edges were added, removed, or changed. This is the code review for your phone system — see exactly what a change did before you ship it.
Paramètres, retour & exemple (3)
Paramètresto· integer · optionnel
Target version number (defaults to the current version).from· integer · requis
Base version number.flowId· string · requis
The flow id.
Exemple d'appel{"name": "diff_flow", "arguments": {"from": 1, "flowId": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - get_monitor_health≈ 134 tokens
Read a monitor's live rolling health and drift. Health is unknown | healthy | degraded | critical. Drift is isolated by judge version: when our judge changes, the boundary is reported as judgeVersionChanged and NEVER as an agent regression — a score delta across that boundary says nothing about your agent.
Paramètres, retour & exemple (1)
ParamètresmonitorId· string · requis
The monitor to read.
Exemple d'appel{"name": "get_monitor_health", "arguments": {"monitorId": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - get_trends≈ 108 tokens
Read account-wide testing trends over a window: pass-rate, average score, and run-to-run regressions per suite, plus overall totals. Use this to spot behaviour drift in the voice agents you test.
Paramètres, retour & exemple (1)
Paramètresdays· integer · optionnel
Look-back window in days (default 90).
Exemple d'appel{"name": "get_trends", "arguments": {"days": 1}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - import_flow≈ 224 tokens
Import a phone-system flow or voice-agent config from a platform (e.g. Vapi) into the canonical, diffable Flow IR — the first step of putting your phone system under version control. Reports the fields the IR abstracts away. Pass save:true to persist it as a versioned flow. The same IR exports back out, so it doubles as a migration surface between platforms.
Paramètres, retour & exemple (4)
Paramètresname· string · optionnel
Name for the saved flow (defaults to the config name).save· boolean · optionnel
Persist the imported IR as a new versioned flow.config· object · requis
The platform's native flow/agent object.platform· string · requis · vapi
The source platform.
Exemple d'appel{"name": "import_flow", "arguments": {"config": {}, "platform": "vapi"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - ingest_call≈ 271 tokens
Send one completed PRODUCTION call to a monitor to be scored. Returns 202 immediately; scoring runs in the background and the monitor health updates. The transcript is scored in flight and never stored — only the scorecard and safe metadata are kept. Pass "externalId" (your own call id) so a re-delivered call scores exactly once.
Paramètres, retour & exemple (6)
Paramètresplatform· string · optionnel
Where the call ran, e.g. "retell", "vapi", "telnyx".monitorId· string · requis
The monitor to ingest into.externalId· string · optionnel
Your own call id — makes the ingest idempotent.occurredAt· string · optionnel
ISO-8601 timestamp of when the call happened.transcript· string · requis
Formatted "AGENT: … / CALLER: …" transcript of the finished call.durationSec· number · optionnel
Call duration in seconds.
Exemple d'appel{"name": "ingest_call", "arguments": {"monitorId": "texte", "transcript": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - list_monitors≈ 117 tokens
List your production monitors and their current health (unknown | healthy | degraded | critical). A monitor watches ONE live production line: you stream it completed calls, and it scores each with the same versioned judge that scores your tests, tracks a rolling baseline, and alerts when quality drifts. Requires a pro or enterprise plan.
Paramètres, retour & exemple (0)
Exemple d'appel{"name": "list_monitors", "arguments": {}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - list_suites≈ 80 tokens
List your reusable test suites (each is a set of scenarios/personas pinned to a target voice agent). Returns their ids, names, targets, and schedules — use a suite id with run_test or get_trends.
Paramètres, retour & exemple (0)
Exemple d'appel{"name": "list_suites", "arguments": {}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - list_verified_numbers≈ 82 tokens
List the phone numbers your account has proven it controls. Only these numbers (and Word Is Bond DIDs) may be used as a "pstn" targetAgent.toNumber. Revoke one with DELETE /api/numbers/{id}.
Paramètres, retour & exemple (0)
Exemple d'appel{"name": "list_verified_numbers", "arguments": {}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - register_recording_target≈ 237 tokens
Register where BYOS call recordings go, so you can pass "record": true to run_test and have that call’s audio teed to YOUR OWN storage. wordis-bond keeps only a pointer (the run’s recording_url), never the audio. "callbackUrl" is a public https endpoint that returns a presigned PUT URL per recording (so wordis-bond never holds your cloud credentials). Pro/enterprise capability, bundled free — you pay your own storage; starter → 402.
Paramètres, retour & exemple (3)
Paramètresname· string · requis
A label for this target.track· string · optionnel · inbound | outbound | both
Which side to capture (default inbound = the agent).callbackUrl· string · requis
Public https endpoint that mints a presigned PUT URL per recording.
Exemple d'appel{"name": "register_recording_target", "arguments": {"name": "texte", "callbackUrl": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - run_demo≈ 246 tokens
Run the hosted demo voice agent (a dental front desk) end-to-end and get a real, fully-scored result in about a minute — no target of your own needed. Returns the score (0–100), pass/fail verdict, per-turn metrics, the transcript, and a shareable public report URL. Zero carrier cost. Optional inputs override the scenario.
Paramètres, retour & exemple (5)
Paramètresgoal· string · optionnel
What the synthetic caller should try to accomplish.bargeIn· boolean · optionnel
Inject one caller-initiated barge-in.persona· object · optionnel
Override the synthetic caller persona.expected· array · optionnel
Expected agent lines to pin for word-error-rate.language· string · optionnel
BCP-47 language tag, default "en".
Exemple d'appel{"name": "run_demo", "arguments": {"goal": "texte", "bargeIn": true, "persona": {}, "expected": [], "language": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - run_test≈ 853 tokens
Run a test against a voice agent you control. Two modes: (1) score a captured transcript offline — pass "transcript" (or "turns") plus "scenarioGoal"; the judge returns a scored run synchronously. (2) run a live synthetic call — pass "targetAgent" and "goal". A live "direct" (SIP/WebRTC) target returns a tokenized media WebSocket URL for your agent-side harness to dial; a "pstn" target places a real carrier call (pro+ plans) to a number you have verified — an unverified destination returns 403 NUMBER_NOT_VERIFIED and no call is placed. Poll get_run / GET /api/tests/{id} for the terminal scored state of a live run.
Paramètres, retour & exemple (15)
Paramètresgoal· string · optionnel
What the synthetic caller should accomplish (live mode).turns· array · optionnel
Per-turn capture; formatted into a transcript when "transcript" is omitted.record· boolean · optionnel
Record this call to YOUR OWN storage (BYOS, default false). Requires the byosRecording capability (pro/enterprise) and an enabled recording target; the customer-owned pointer comes back in the run’s recording_url. wordis-bond keeps only the pointer, never the audio.bargeIn· boolean · optionnelpersona· object · optionnel
The synthetic caller persona (live mode).suiteId· string · optionnel
Link this run to a suite (optional).expected· array · optionnellanguage· string · optionnel
BCP-47 language tag, default "en".transport· string · optionnel · pstn | webrtc
Force a transport (live mode).assertions· array · optionnel
Extra pass/fail checks for the judge.transcript· string · optionnel
Captured conversation to score (offline mode).concurrency· integer · optionnel
Number of parallel live calls.targetAgent· object · optionnel
The voice agent under test — a system you run. transport "direct" (SIP/WebRTC) has near-zero cost and works on every plan; "pstn" places a real carrier call (pro+ plans) and only to a number you have verified. The hosted demo target is { "transport": "direct", "peerId": "wb-demo-dental" }.scenarioGoal· string · optionnel
What the conversation was meant to accomplish (offline mode).recordTargetId· string · optionnel
Record to THIS target (else the most-recent enabled one).
Exemple d'appel{"name": "run_test", "arguments": {"goal": "texte", "turns": [], "record": true, "bargeIn": true, "persona": {}, "suiteId": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - test_flow≈ 147 tokens
Run the regression gate on a flow now: compile the current version into a synthetic-caller test, run it against the flow's target, and compare the result to the previous version's baseline. A behavior change that regressed (a pass turning into a fail, or a score drop past the threshold) is caught and blocks the change — continuous integration for your phone-system logic.
Paramètres, retour & exemple (1)
ParamètresflowId· string · requis
The flow id to gate.
Exemple d'appel{"name": "test_flow", "arguments": {"flowId": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - verify_number_confirm≈ 174 tokens
Finish verifying a phone number by supplying the 6-digit code spoken on the verification call. On success the number becomes a permitted PSTN test destination for your account. The code is single-use, expires after ten minutes, and locks after five incorrect attempts.
Paramètres, retour & exemple (3)
Paramètrescode· string · requis
The 6 digits spoken on the call.label· string · optionnel
Optional label stored alongside the verified number.number· string · requis
The number being verified, in E.164.
Exemple d'appel{"name": "verify_number_confirm", "arguments": {"code": "texte", "number": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - verify_number_start≈ 177 tokens
Prove your account controls a phone number, which it must do before any PSTN test call to it. Word Is Bond places one short call to the number, speaks a 6-digit code twice, and hangs up. Confirm the code within ten minutes with verify_number_confirm. Calling an already-verified number places no call. This is the only action that dials an unverified number and it is tightly capped (3 calls per number and 5 distinct numbers per account, per day).
Paramètres, retour & exemple (1)
Paramètresnumber· string · requis
The number to verify, in E.164 (e.g. "+15045204977").
Exemple d'appel{"name": "verify_number_start", "arguments": {"number": "texte"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]}
C'est votre serveur ?
Revendiquez-le sur l'espace créateur (preuve GitHub, domaine ou npm) pour afficher le badge « propriétaire vérifié » et lancer un pentest comportemental à la demande afin d'obtenir le badge « Vérifié ».