Skip to main content
Glama
vm542

TonePerfect MCP server

by vm542

Assess pronunciation

assess_pronunciation
Idempotent

Scores pronunciation from an audio recording against a reference text and returns sentence, word, and sound-level feedback with expected-versus-heard details.

Instructions

Score a recording of someone reading a known reference text (POST /v1/assess). Give the audio as a local file path, base64, or an http(s) URL (WAV, MP3, M4A, Ogg or WebM; 0.15-30 s; max 10 MB), plus the reference text and locale. Returns a short summary and the full JSON (sentence, word and sound scores, expected vs heard, timings, billing). Uses the API key in TONEPERFECT_API_KEY; 1 credit per started 15 s of assessable audio.

Input Schema

NameRequiredDescriptionDefault
taskNogeneral (default), connected_speech (enables Mandarin component correction decisions) or isolated_word.general
textNoThe expected words the speaker read. Required unless pinyin is given (Mandarin only). Numbers written as words.
pinyinNoMandarin only: numbered-tone pinyin, one syllable per character, e.g. "ni3 hao3".
filenameNoOptional filename sent with the upload (helps format detection).
languageNoLocale: zh-CN, en-US, fr-FR, es-419, de-DE, it-IT, pt-BR, ru-RU, ko-KR (beta), ja-JP (beta).zh-CN
audio_urlNohttp(s) URL to download the audio from.
audio_pathNoPath to a local audio file (~ is expanded).
audio_base64NoAudio bytes as base64 (a data: URL prefix is accepted).
idempotency_keyNoOptional. Defaults to a hash of the audio and fields, so repeating the identical call within 24 h returns the stored result without charging again.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond annotations, the description discloses important operational context: API key via TONEPERFECT_API_KEY, 1 credit per started 15 s of assessable audio, accepted audio sources and formats, duration and size limits, and the shape of the return value. It does not cover rate limits or failure behavior, but it is substantially more informative than the annotations alone.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is dense but front-loaded: the action and endpoint come first, followed by input requirements, constraints, return shape, auth, and cost. Every sentence adds practical information, with no filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given nine parameters, no output schema, and annotations that only cover safety and idempotency, the description is complete enough for an agent to call the tool correctly. It explains audio input modes, format/size/duration limits, reference text and locale requirements, return contents, auth, and billing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3, but the description adds material constraints not present in the schema: accepted audio sources, supported formats, 0.15-30 s duration, and 10 MB maximum. It also ties the reference text and locale to the task, though it does not elaborate on task/pinyin/idempotency semantics beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: score a recording of someone reading a known reference text, and names the endpoint POST /v1/assess. It is clearly distinct in substance from list_languages and explain_result, but it never explicitly differentiates itself from those siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description makes the core use case clear: assessing a recording against a known reference text, with input constraints and supported formats. However, it gives no explicit when-to-use vs alternatives guidance, does not mention list_languages or explain_result, and leaves the agent to infer when this tool is preferable.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Deploy Server

Other Tools