Servidor MCP

oruk Speech

ai.oruk/speech
Medios y contenido Público y accesible MCP 2025-11-25

Qué hace este MCP

Provides hosted speech-to-text transcription and speech emotion or tone analysis.

oruk_analyze_speech
Analyze speech (transcript + tone)
Transcribe English audio AND score how it was said in one call: transcript, tagged transcript, selected scores from 15 emotion and 16 speaking-style labels, and time-local segments. Use this when the user cares about both the words and the delivery — meetings, support calls, interviews, voice notes. Accepts wav/flac/mp3/m4a/ogg/webm. Up to 30 MB via audio_url or 8 MiB decoded via audio_base64; up to 60 minutes of English speech. Returns compact summaries by default. For words only use oruk_transcribe_audio; for tone only use oruk_analyze_tone.
Solo lectura Acceso externo
Esquema de entrada
{'type': 'object', 'properties': {'model': {'enum': ['oruk-resonance', 'oruk-fourier'], 'type': 'string', 'description': 'oruk-resonance (full local pipeline: transcription, emotion, style, affect, analysis) or oruk-fourier (parallel transcript and native 15-label emotion, with the shared 16-label style model). Resonance is the default.'}, 'detail': {'enum': ['compact', 'full'], 'type': 'string', 'description': 'compact (default) returns top label scores and condensed segments; full preserves all returned labels, segments, and word-level timings, subject to response-size limits. It does not expose unreturned label scores.'}, 'api_key': {'type': 'string', 'maxLength': 200, 'description': 'Only for temporary keys from oruk_create_trial_key. Permanent keys belong in your MCP client config as an "Authorization: Bearer <key>" header, never in tool arguments.'}, 'diarize': {'type': 'boolean', 'description': 'Label speakers (oruk-resonance only; the model is switched to oruk-resonance automatically). Speaker diarization locates turns, then Resonance scores each turn with its own text, emotions, and styles. Use for calls, meetings, and interviews. Included in subscription plan minutes. Processing details: https://oruk.ai/security#processing.'}, 'filename': {'type': 'string', 'maxLength': 160, 'description': 'Original filename including extension (e.g. call.wav). Helps decoding when audio_base64 is used.'}, 'audio_url': {'type': 'string', 'format': 'uri', 'maxLength': 2000, 'description': 'Publicly fetchable audio file URL (wav, flac, mp3, m4a, ogg, webm; up to 30 MB / 60 minutes of English speech).'}, 'audio_base64': {'type': 'string', 'maxLength': 11500000, 'description': 'Base64-encoded audio bytes for local files (up to 8 MiB decoded). Prefer audio_url for anything larger.'}}, 'additionalProperties': False}
oruk_analyze_tone
Analyze vocal tone and emotion
Score how speech sounds without transcribing it: selected emotion (happy, frustrated, worried, …) and speaking-style (sarcastic, confident, hesitant, warm, …) scores per acoustic segment. Runs the Resonance encoder and affect head only — the transcription decoder is never invoked, so nothing is transcribed and it consumes the same subscription audio minutes as unified analysis. Use this when the user asks about mood, delivery, sentiment, sarcasm, or emotional dynamics in audio. Up to 30 MB via audio_url or 8 MiB decoded via audio_base64; up to 60 minutes of English speech. Labels use model-specific thresholds; the highest-scoring emotion is returned if none passes, and styles can be empty. Outputs describe delivery, not probabilities of inner state. Need the words too? Use oruk_analyze_speech.
Solo lectura Acceso externo
Esquema de entrada
{'type': 'object', 'properties': {'model': {'enum': ['oruk-resonance', 'oruk-fourier'], 'type': 'string', 'description': 'oruk-resonance (full local pipeline: transcription, emotion, style, affect, analysis) or oruk-fourier (parallel transcript and native 15-label emotion, with the shared 16-label style model). Resonance is the default.'}, 'detail': {'enum': ['compact', 'full'], 'type': 'string', 'description': 'compact (default) returns top label scores and condensed segments; full preserves all returned labels, segments, and word-level timings, subject to response-size limits. It does not expose unreturned label scores.'}, 'api_key': {'type': 'string', 'maxLength': 200, 'description': 'Only for temporary keys from oruk_create_trial_key. Permanent keys belong in your MCP client config as an "Authorization: Bearer <key>" header, never in tool arguments.'}, 'diarize': {'type': 'boolean', 'description': 'Label speakers (oruk-resonance only; the model is switched to oruk-resonance automatically). Speaker diarization locates turns, then Resonance scores each turn with its own text, emotions, and styles. Use for calls, meetings, and interviews. Included in subscription plan minutes. Processing details: https://oruk.ai/security#processing.'}, 'filename': {'type': 'string', 'maxLength': 160, 'description': 'Original filename including extension (e.g. call.wav). Helps decoding when audio_base64 is used.'}, 'audio_url': {'type': 'string', 'format': 'uri', 'maxLength': 2000, 'description': 'Publicly fetchable audio file URL (wav, flac, mp3, m4a, ogg, webm; up to 30 MB / 60 minutes of English speech).'}, 'audio_base64': {'type': 'string', 'maxLength': 11500000, 'description': 'Base64-encoded audio bytes for local files (up to 8 MiB decoded). Prefer audio_url for anything larger.'}}, 'additionalProperties': False}
oruk_check_usage
Check API key, subscription, and usage
Verify that an Oruk API key works and report the subscription, remaining audio minutes, and recent API usage. Use this after setup or to diagnose access and usage limits. Requires the Authorization header from your MCP config or a temporary api_key.
Solo lectura Acceso externo
Esquema de entrada
{'type': 'object', 'properties': {'api_key': {'type': 'string', 'maxLength': 200, 'description': 'Only for temporary keys from oruk_create_trial_key. Permanent keys belong in the Authorization header of your MCP client config.'}}, 'additionalProperties': False}
oruk_create_trial_key
Create a free trial API key
Mint a real, temporary oruk API key with no account required: 3 requests, expires in 30 minutes, spends from a capped shared budget. Use this when no Authorization header is configured and the user wants to try transcription or tone analysis right now. Pass the returned key as the api_key argument of the audio tools. Share the signup link with the user so they can keep using oruk afterwards (7-day free trial on self-serve plans).
Acceso externo
Esquema de entrada
{'type': 'object', 'properties': {}, 'additionalProperties': False}
oruk_get_started
Get started with oruk
Quickstart for the oruk Speech API and this MCP server: how to get an API key, per-client MCP configuration snippets, SDK install commands, and an optional routing rule the user can add to their agent instructions. No API key required. Use this when setting oruk up for the first time or when the user asks how oruk works.
Solo lectura Acceso externo
Esquema de entrada
{'type': 'object', 'properties': {}, 'additionalProperties': False}
oruk_list_models
List models, pricing, and labels
List oruk’s speech models with lifecycle, current subscription plans, and explicitly labeled legacy reference rates, the five API tasks, the 15 emotion and 16 speaking-style labels, and audio limits. No API key required. Use this to choose a model, estimate cost before analyzing long audio, or see which labels exist.
Solo lectura Acceso externo
Esquema de entrada
{'type': 'object', 'properties': {}, 'additionalProperties': False}
oruk_transcribe_audio
Transcribe audio
Transcribe prerecorded English audio to text with time-ordered segments and word timings. Use this when only the words matter. Accepts wav/flac/mp3/m4a/ogg/webm. Up to 30 MB via audio_url or 8 MiB decoded via audio_base64; up to 60 minutes of English speech. Does not score emotion or tone — use oruk_analyze_speech for transcript + tone together, or oruk_analyze_tone for tone alone.
Solo lectura Acceso externo
Esquema de entrada
{'type': 'object', 'properties': {'model': {'enum': ['oruk-resonance', 'oruk-fourier'], 'type': 'string', 'description': 'oruk-resonance (full local pipeline: transcription, emotion, style, affect, analysis) or oruk-fourier (parallel transcript and native 15-label emotion, with the shared 16-label style model). Resonance is the default.'}, 'detail': {'enum': ['compact', 'full'], 'type': 'string', 'description': 'compact (default) returns top label scores and condensed segments; full preserves all returned labels, segments, and word-level timings, subject to response-size limits. It does not expose unreturned label scores.'}, 'api_key': {'type': 'string', 'maxLength': 200, 'description': 'Only for temporary keys from oruk_create_trial_key. Permanent keys belong in your MCP client config as an "Authorization: Bearer <key>" header, never in tool arguments.'}, 'diarize': {'type': 'boolean', 'description': 'Label speakers (oruk-resonance only; the model is switched to oruk-resonance automatically). Speaker diarization locates turns, then Resonance scores each turn with its own text, emotions, and styles. Use for calls, meetings, and interviews. Included in subscription plan minutes. Processing details: https://oruk.ai/security#processing.'}, 'filename': {'type': 'string', 'maxLength': 160, 'description': 'Original filename including extension (e.g. call.wav). Helps decoding when audio_base64 is used.'}, 'audio_url': {'type': 'string', 'format': 'uri', 'maxLength': 2000, 'description': 'Publicly fetchable audio file URL (wav, flac, mp3, m4a, ogg, webm; up to 30 MB / 60 minutes of English speech).'}, 'audio_base64': {'type': 'string', 'maxLength': 11500000, 'description': 'Base64-encoded audio bytes for local files (up to 8 MiB decoded). Prefer audio_url for anything larger.'}}, 'additionalProperties': False}
Añadido
oruk_get_started
17 de September de 2026 a las 07:57
Añadido
oruk_list_models
17 de September de 2026 a las 07:57
Añadido
oruk_create_trial_key
17 de September de 2026 a las 07:57
Añadido
oruk_check_usage
17 de September de 2026 a las 07:57
Añadido
oruk_analyze_tone
17 de September de 2026 a las 07:57
Añadido
oruk_transcribe_audio
17 de September de 2026 a las 07:57
Añadido
oruk_analyze_speech
17 de September de 2026 a las 07:57