Skip to main content
Glama

Server Details

Test the voice agents you run: scored transcripts, pass/fail verdicts, latency and WER metrics.

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.
Tool DescriptionsA

Average 4.2/5 across 9 of 9 tools scored. Lowest: 3.6/5.

Server CoherenceA
Disambiguation5/5

Each tool has a clearly distinct purpose. run_demo and run_test are differentiated by target (hosted demo vs. user's agent). The two verification tools form a clear two-step process. No overlap or ambiguity.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern in snake_case (e.g., create_suite, get_trends, verify_number_start). No mixing of styles or vague verbs.

Tool Count5/5

With 9 tools, the server is well-scoped for testing voice agents. Each tool covers a necessary operation without being excessive or too few.

Completeness4/5

The tool surface covers core workflows: suite CRUD (create/list, but no update/delete), testing (demo and real), trends, number verification, and recording setup. Minor gaps like missing suite deletion or an explicit tool to list all runs, but these are workable.

Available Tools

16 tools
create_monitorInspect

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesHuman name, e.g. "Support line — main agent".
rubricNoExtra free-text rubric appended to the judge instructions.
languageNoBCP-47 language tag, default "en".
assertionsNoPlain-English checks the agent must satisfy.
sampleRateNoFraction 0..1 of ingested calls to score. Default 1 (score every call).
scenarioGoalYesWhat the agent is supposed to accomplish on every call.
alertWebhookUrlNoOptional public https URL to receive signed drift alerts.
create_suiteInspect

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
languageNoBCP-47 language tag, default "en".
scheduleNoCadence for scheduled runs, e.g. "weekly" | "daily" | "hourly".
scenariosNoPersona + goal pairs the suite exercises.
targetAgentYesThe 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" }.
diff_flowInspect

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
toNoTarget version number (defaults to the current version).
fromYesBase version number.
flowIdYesThe flow id.
get_monitor_healthInspect

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
monitorIdYesThe monitor to read.
import_flowInspect

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNoName for the saved flow (defaults to the config name).
saveNoPersist the imported IR as a new versioned flow.
configYesThe platform's native flow/agent object.
platformYesThe source platform.
ingest_callInspect

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
platformNoWhere the call ran, e.g. "retell", "vapi", "telnyx".
monitorIdYesThe monitor to ingest into.
externalIdNoYour own call id — makes the ingest idempotent.
occurredAtNoISO-8601 timestamp of when the call happened.
transcriptYesFormatted "AGENT: … / CALLER: …" transcript of the finished call.
durationSecNoCall duration in seconds.
list_monitorsInspect

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.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

list_suitesInspect

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.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

list_verified_numbersInspect

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}.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

register_recording_targetInspect

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesA label for this target.
trackNoWhich side to capture (default inbound = the agent).
callbackUrlYesPublic https endpoint that mints a presigned PUT URL per recording.
run_demoInspect

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
goalNoWhat the synthetic caller should try to accomplish.
bargeInNoInject one caller-initiated barge-in.
personaNoOverride the synthetic caller persona.
expectedNoExpected agent lines to pin for word-error-rate.
languageNoBCP-47 language tag, default "en".
run_testInspect

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
goalNoWhat the synthetic caller should accomplish (live mode).
turnsNoPer-turn capture; formatted into a transcript when "transcript" is omitted.
recordNoRecord 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.
bargeInNo
personaNoThe synthetic caller persona (live mode).
suiteIdNoLink this run to a suite (optional).
expectedNo
languageNoBCP-47 language tag, default "en".
transportNoForce a transport (live mode).
assertionsNoExtra pass/fail checks for the judge.
transcriptNoCaptured conversation to score (offline mode).
concurrencyNoNumber of parallel live calls.
targetAgentNoThe 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" }.
scenarioGoalNoWhat the conversation was meant to accomplish (offline mode).
recordTargetIdNoRecord to THIS target (else the most-recent enabled one).
test_flowInspect

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
flowIdYesThe flow id to gate.
verify_number_confirmInspect

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.

ParametersJSON Schema
NameRequiredDescriptionDefault
codeYesThe 6 digits spoken on the call.
labelNoOptional label stored alongside the verified number.
numberYesThe number being verified, in E.164.
verify_number_startInspect

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).

ParametersJSON Schema
NameRequiredDescriptionDefault
numberYesThe number to verify, in E.164 (e.g. "+15045204977").

Discussions

No comments yet. Be the first to start the discussion!

Try in Browser

Your Connectors

Sign in to create a connector for this server.

Resources