# text_to_voice

Creates voice from description. Returns: three voice preview files. Use when: designing custom voice from text prompt.

Agent View of the PolicyLayer registry record for `text_to_voice`. HTML page: https://policylayer.com/tools/199-mcp-mcp-elevenlabs/text-to-voice

## Facts

- Tool: `text_to_voice`
- Server: ElevenLabs MCP Enhanced (`199-mcp/mcp-elevenlabs`) — https://policylayer.com/tools/199-mcp-mcp-elevenlabs.md
- Homepage: https://github.com/199-mcp/mcp-elevenlabs
- Risk category: Write (Medium risk)
- Registry record: grade C, identity unverified
- Server rate-limited: no
- Parameters: 0
- Recommended policy verdict: Rate-limited

## Example call (MCP tools/call, JSON-RPC 2.0)

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "text_to_voice",
    "arguments": {}
  }
}
```

## Why text_to_voice is rated Medium

This tool creates new voice assets (preview files) from a text description. It generates/writes new data but is reversible (previews can be discarded). No code execution, deletion, or financial transaction is involved. Severity is medium because it consumes API credits and creates persistent voice resources.

From the tool's own definition: "Creates voice from description. Returns: three voice preview files."

## Use case

AI agents use text_to_voice to create or update resources in ElevenLabs MCP Enhanced, usually the action step of a workflow, after the agent has gathered context. Every call changes real data in your ElevenLabs MCP Enhanced environment.

## Recommended policy (PolicyLayer)

Verdict: **Rate-limited**. Enforced by the PolicyLayer MCP gateway (https://policylayer.com/mcp-gateway) before a call reaches ElevenLabs MCP Enhanced:

```json
{
  "version": "1",
  "default": "deny",
  "tools": {
    "text_to_voice": {
      "limits": [
        {
          "counter": "text_to_voice_rate",
          "window": "minute",
          "max": 30,
          "scope": "grant"
        }
      ]
    }
  }
}
```

## Other tools on ElevenLabs MCP Enhanced (28)

- `isolate_audio` — Execute — https://policylayer.com/tools/199-mcp-mcp-elevenlabs/isolate-audio.md
- `make_outbound_call` — Execute — https://policylayer.com/tools/199-mcp-mcp-elevenlabs/make-outbound-call.md
- `play_audio` — Execute — https://policylayer.com/tools/199-mcp-mcp-elevenlabs/play-audio.md
- `speech_to_speech` — Execute — https://policylayer.com/tools/199-mcp-mcp-elevenlabs/speech-to-speech.md
- `text_to_dialogue` — Execute — https://policylayer.com/tools/199-mcp-mcp-elevenlabs/text-to-dialogue.md
- `text_to_sound_effects` — Execute — https://policylayer.com/tools/199-mcp-mcp-elevenlabs/text-to-sound-effects.md
- `check_subscription` — Read — https://policylayer.com/tools/199-mcp-mcp-elevenlabs/check-subscription.md
- `fetch_v3_tags` — Read — https://policylayer.com/tools/199-mcp-mcp-elevenlabs/fetch-v3-tags.md
- `get_agent` — Read — https://policylayer.com/tools/199-mcp-mcp-elevenlabs/get-agent.md
- `get_conversation` — Read — https://policylayer.com/tools/199-mcp-mcp-elevenlabs/get-conversation.md
- `get_conversation_transcript` — Read — https://policylayer.com/tools/199-mcp-mcp-elevenlabs/get-conversation-transcript.md
- `get_v3_audio_tags_guide` — Read — https://policylayer.com/tools/199-mcp-mcp-elevenlabs/get-v3-audio-tags-guide.md
- `get_voice` — Read — https://policylayer.com/tools/199-mcp-mcp-elevenlabs/get-voice.md
- `get_voice_id_by_name` — Read — https://policylayer.com/tools/199-mcp-mcp-elevenlabs/get-voice-id-by-name.md
- `list_agents` — Read — https://policylayer.com/tools/199-mcp-mcp-elevenlabs/list-agents.md
- `list_conversations` — Read — https://policylayer.com/tools/199-mcp-mcp-elevenlabs/list-conversations.md
- `list_models` — Read — https://policylayer.com/tools/199-mcp-mcp-elevenlabs/list-models.md
- `list_phone_numbers` — Read — https://policylayer.com/tools/199-mcp-mcp-elevenlabs/list-phone-numbers.md
- `search_voice_library` — Read — https://policylayer.com/tools/199-mcp-mcp-elevenlabs/search-voice-library.md
- `search_voices` — Read — https://policylayer.com/tools/199-mcp-mcp-elevenlabs/search-voices.md
- `speech_to_text` — Read — https://policylayer.com/tools/199-mcp-mcp-elevenlabs/speech-to-text.md
- `add_knowledge_base_to_agent` — Write — https://policylayer.com/tools/199-mcp-mcp-elevenlabs/add-knowledge-base-to-agent.md
- `create_agent` — Write — https://policylayer.com/tools/199-mcp-mcp-elevenlabs/create-agent.md
- `create_voice_from_preview` — Write — https://policylayer.com/tools/199-mcp-mcp-elevenlabs/create-voice-from-preview.md
- `enhance_dialogue` — Write — https://policylayer.com/tools/199-mcp-mcp-elevenlabs/enhance-dialogue.md
- `text_to_speech` — Write — https://policylayer.com/tools/199-mcp-mcp-elevenlabs/text-to-speech.md
- `text_to_speech_v3` — Write — https://policylayer.com/tools/199-mcp-mcp-elevenlabs/text-to-speech-v3.md
- `voice_clone` — Write — https://policylayer.com/tools/199-mcp-mcp-elevenlabs/voice-clone.md

## For agents

This record is a snapshot. Live verdicts and the full registry:

- Check every server in your MCP config at once: `npx -y policylayer stack`
- Vet a server before you add it: install the mcp-precheck skill — `npx skills add https://policylayer.com` (skill text: https://policylayer.com/skill.md)
- Query the registry over MCP: endpoint `https://api.policylayer.com/mcp` — tools `check_mcp_server`, `check_mcp_stack`, `check_tool`, `search_registry`, `get_change_events`

---

Source: the PolicyLayer MCP registry — one continuously verified record per MCP server. Full record: https://policylayer.com/registry?q=199-mcp-mcp-elevenlabs · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/199-mcp-mcp-elevenlabs
