ElevenLabs

ทางการ

เซิร์ฟเวอร์ MCP อย่างเป็นทางการของ ElevenLabs

คุณทำอะไรได้บ้างด้วย Eleven Labs MCP?

  • สร้างเสียงพูดจากข้อความ — แปลงข้อความใดๆ ให้เป็นเสียงพูดโดยใช้เสียงของ ElevenLabs ผ่าน text_to_speech
  • ออกแบบเสียงที่กำหนดเอง — สร้างเสียงสังเคราะห์ใหม่ที่มีลักษณะเฉพาะตัว สำเนียง หรือสไตล์ตามต้องการ โดยใช้ design_voice
  • คัดลอกเสียงจากไฟล์เสียง — อัปโหลดตัวอย่างเสียงบันทึกและสร้างเสียงที่เลียนแบบเสียงนั้นด้วย clone_voice
  • ถอดเสียงเป็นข้อความ — แปลงเสียงพูดให้เป็นข้อความที่เขียน พร้อมระบุผู้พูด ผ่าน transcribe_speech
  • ปรับเปลี่ยนเสียง — เปลี่ยนเสียงบันทึกหนึ่งให้ฟังดูเหมือนผู้พูดหรือตัวละครอื่นด้วย voice_conversion
  • สร้างเอฟเฟกต์เสียง — สร้างบรรยากาศเสียงจากคำอธิบายข้อความ เช่น เสียงสภาพอากาศหรือบรรยากาศรอบข้าง ผ่าน generate_sound_effects

เอกสาร

export

Discord Community Twitter PyPI Tests

เซิร์ฟเวอร์ Model Context Protocol (MCP) อย่างเป็นทางการของ ElevenLabs ที่ช่วยให้สามารถโต้ตอบกับ Text to Speech และ API การประมวลผลเสียงอันทรงพลังได้ เซิร์ฟเวอร์นี้อนุญาตให้ไคลเอนต์ MCP เช่น Claude Desktop, Cursor, Windsurf, OpenAI Agents และอื่นๆ สามารถสร้างเสียงพูด โคลนเสียง ถอดเสียง และอื่นๆ ได้

เริ่มต้นใช้งานกับ Claude Desktop อย่างรวดเร็ว

  1. รับ API key ของคุณจาก ElevenLabs มีแพ็กเกจฟรีที่ให้เครดิต 10k ต่อเดือน
  2. ติดตั้ง uv (ตัวจัดการแพ็กเกจ Python) ติดตั้งด้วย curl -LsSf https://astral.sh/uv/install.sh | sh หรือดู repo ของ uv สำหรับวิธีการติดตั้งเพิ่มเติม
  3. ไปที่ Claude > Settings > Developer > Edit Config > claude_desktop_config.json เพื่อเพิ่มข้อมูลต่อไปนี้:
{
  "mcpServers": {
    "ElevenLabs": {
      "command": "uvx",
      "args": ["elevenlabs-mcp"],
      "env": {
        "ELEVENLABS_API_KEY": "<insert-your-api-key-here>"
      }
    }
  }
}

หากคุณใช้ Windows คุณจะต้องเปิดใช้งาน "Developer Mode" ใน Claude Desktop เพื่อใช้เซิร์ฟเวอร์ MCP คลิก "Help" ในเมนูแฮมเบอร์เกอร์ที่มุมซ้ายบน แล้วเลือก "Enable Developer Mode"

ไคลเอนต์ MCP อื่นๆ

สำหรับไคลเอนต์อื่นๆ เช่น Cursor และ Windsurf ให้รัน:

  1. pip install elevenlabs-mcp
  2. python -m elevenlabs_mcp --api-key={{PUT_YOUR_API_KEY_HERE}} --print เพื่อรับการตั้งค่า วางลงในไดเรกทอรีการตั้งค่าที่เหมาะสมตามที่ไคลเอนต์ MCP ของคุณกำหนด

เท่านี้ก็เรียบร้อย ไคลเอนต์ MCP ของคุณสามารถโต้ตอบกับ ElevenLabs ผ่านเครื่องมือเหล่านี้ได้แล้ว:

ตัวอย่างการใช้งาน

⚠️ คำเตือน: จำเป็นต้องใช้เครดิตของ ElevenLabs เพื่อใช้เครื่องมือเหล่านี้

ลองถาม Claude ว่า:

  • "สร้างเอเจนต์ AI ที่พูดเหมือนนักสืบฟิล์มนัวร์และสามารถตอบคำถามเกี่ยวกับภาพยนตร์คลาสสิกได้"
  • "สร้างเสียงสามรูปแบบสำหรับตัวละครมังกรโบราณที่ชาญฉลาด จากนั้นฉันจะเลือกเสียงที่ชอบที่สุดเพื่อเพิ่มลงในคลังเสียงของฉัน"
  • "แปลงไฟล์บันทึกเสียงของฉันให้ฟังดูเหมือนอัศวินยุคกลาง"
  • "สร้างภาพเสียงของพายุฝนฟ้าคะนองในป่าทึบที่มีสัตว์ต่างๆ ตอบสนองต่อสภาพอากาศ"
  • "แปลงเสียงพูดนี้เป็นข้อความ ระบุผู้พูดที่แตกต่างกัน แล้วแปลงกลับโดยใช้เสียงที่เป็นเอกลักษณ์สำหรับแต่ละคน"

ฟีเจอร์เสริม

การตั้งค่าการส่งออกไฟล์

คุณสามารถกำหนดค่าวิธีที่เซิร์ฟเวอร์ MCP จัดการการส่งออกไฟล์ได้โดยใช้ตัวแปรสภาพแวดล้อมเหล่านี้ใน claude_desktop_config.json ของคุณ:

  • ELEVENLABS_MCP_BASE_PATH: ระบุพาธฐานสำหรับการดำเนินการไฟล์ด้วยพาธสัมพัทธ์ (ค่าเริ่มต้น: ~/Desktop)
  • ELEVENLABS_MCP_OUTPUT_MODE: ควบคุมวิธีการส่งคืนไฟล์ที่สร้างขึ้น (ค่าเริ่มต้น: files)

โหมดการส่งออก

ตัวแปรสภาพแวดล้อม ELEVENLABS_MCP_OUTPUT_MODE รองรับสามโหมด:

  1. files (ค่าเริ่มต้น): บันทึกไฟล์ลงดิสก์และส่งคืนพาธไฟล์

    "env": {
      "ELEVENLABS_API_KEY": "your-api-key",
      "ELEVENLABS_MCP_OUTPUT_MODE": "files"
    }
    
  2. resources: ส่งคืนไฟล์เป็นทรัพยากร MCP; ข้อมูลไบนารีถูกเข้ารหัส base64, ข้อความถูกส่งคืนเป็นข้อความ UTF-8

    "env": {
      "ELEVENLABS_API_KEY": "your-api-key",
      "ELEVENLABS_MCP_OUTPUT_MODE": "resources"
    }
    
  3. both: บันทึกไฟล์ลงดิสก์ และส่งคืนเป็นทรัพยากร MCP

    "env": {
      "ELEVENLABS_API_KEY": "your-api-key",
      "ELEVENLABS_MCP_OUTPUT_MODE": "both"
    }
    

ประโยชน์ของโหมดทรัพยากร:

  • ไฟล์ถูกส่งคืนโดยตรงในการตอบสนอง MCP เป็นข้อมูลที่เข้ารหัส base64
  • ไม่ต้องใช้ดิสก์ I/O - มีประโยชน์สำหรับสภาพแวดล้อมแบบคอนเทนเนอร์หรือไร้เซิร์ฟเวอร์
  • ไคลเอนต์ MCP สามารถเข้าถึงเนื้อหาไฟล์ได้ทันทีโดยไม่ต้องเข้าถึงระบบไฟล์
  • ในโหมด both ทรัพยากรสามารถถูกดึงมาใช้ภายหลังได้โดยใช้รูปแบบ URI elevenlabs://filename

กรณีการใช้งาน:

  • files: เวิร์กโฟลว์แบบไฟล์ดั้งเดิม, การพัฒนาในเครื่อง
  • resources: สภาพแวดล้อมคลาวด์, ไคลเอนต์ MCP ที่ไม่มีการเข้าถึงระบบไฟล์
  • both: ความยืดหยุ่นสูงสุด, การแคช, และสถานการณ์การแบ่งปันทรัพยากร

คีย์ที่ตั้งข้อมูล

คุณสามารถระบุภูมิภาคที่ตั้งข้อมูลได้ด้วยตัวแปรสภาพแวดล้อม ELEVENLABS_API_RESIDENCY ค่าเริ่มต้นคือ "us"

หมายเหตุ: ที่ตั้งข้อมูลเป็นฟีเจอร์สำหรับองค์กรเท่านั้น ดู เอกสาร สำหรับรายละเอียดเพิ่มเติม

การมีส่วนร่วม

หากคุณต้องการมีส่วนร่วมหรือรันจากซอร์ส:

  1. โคลนที่เก็บ:
git clone https://github.com/elevenlabs/elevenlabs-mcp
cd elevenlabs-mcp
  1. สร้างสภาพแวดล้อมเสมือนและติดตั้งการพึ่งพา โดยใช้ uv:
uv venv
source .venv/bin/activate
uv pip install -e ".[dev]"
  1. คัดลอก .env.example ไปยัง .env และเพิ่ม ElevenLabs API key ของคุณ:
cp .env.example .env
# Edit .env and add your API key
  1. รันการทดสอบเพื่อให้แน่ใจว่าทุกอย่างทำงานได้:
./scripts/test.sh
# Or with options
./scripts/test.sh --verbose --fail-fast
  1. ติดตั้งเซิร์ฟเวอร์ใน Claude Desktop: mcp install elevenlabs_mcp/server.py

  2. ดีบักและทดสอบในเครื่องด้วย MCP Inspector: mcp dev elevenlabs_mcp/server.py

การแก้ไขปัญหา

บันทึกเมื่อรันกับ Claude Desktop สามารถดูได้ที่:

  • Windows: %APPDATA%\Claude\logs\mcp-server-elevenlabs.log
  • macOS: ~/Library/Logs/Claude/mcp-server-elevenlabs.log

การหมดเวลาเมื่อใช้เครื่องมือบางอย่าง

การดำเนินการ API บางอย่างของ ElevenLabs เช่น การออกแบบเสียงและการแยกเสียง อาจใช้เวลานานในการดำเนินการ เมื่อใช้ MCP inspector ในโหมด dev คุณอาจพบข้อผิดพลาดการหมดเวลาแม้ว่าเครื่องมือจะทำงานเสร็จตามที่ตั้งใจไว้

สิ่งนี้ไม่ควรเกิดขึ้นเมื่อใช้ไคลเอนต์อย่าง Claude

MCP ElevenLabs: spawn uvx ENOENT

หากคุณพบข้อผิดพลาด "MCP ElevenLabs: spawn uvx ENOENT" ให้ยืนยันพาธสัมบูรณ์โดยรันคำสั่งนี้ในเทอร์มินัลของคุณ:

which uvx

เมื่อคุณได้รับพาธสัมบูรณ์ (เช่น /usr/local/bin/uvx) ให้อัปเดตการตั้งค่าของคุณเพื่อใช้พาธนั้น (เช่น "command": "/usr/local/bin/uvx") สิ่งนี้จะช่วยให้แน่ใจว่ามีการอ้างอิงถึงไฟล์ปฏิบัติการที่ถูกต้อง