ElevenLabs
chính thứcMáy chủ MCP chính thức của ElevenLabs
Bạn có thể làm gì với Eleven Labs MCP?
- Tạo giọng nói từ văn bản — Chuyển đổi bất kỳ văn bản nào thành âm thanh giọng nói bằng giọng ElevenLabs thông qua
text_to_speech. - Thiết kế giọng nói tùy chỉnh — Tạo giọng nói tổng hợp mới với các đặc điểm tính cách, giọng vùng miền hoặc phong cách cụ thể bằng
design_voice. - Nhân bản giọng nói từ tệp âm thanh — Tải lên một bản ghi âm mẫu và tạo giọng nói bắt chước nó bằng
clone_voice. - Phiên âm âm thanh thành văn bản — Chuyển đổi bản ghi âm giọng nói thành bản ghi chép văn bản, có phân biệt người nói, bằng
transcribe_speech. - Áp dụng chuyển đổi giọng nói — Biến đổi một bản ghi âm giọng nói để nghe giống như một người nói hoặc nhân vật khác bằng
voice_conversion. - Tạo hiệu ứng âm thanh — Sản xuất các khung cảnh âm thanh từ mô tả văn bản, chẳng hạn như thời tiết hoặc cảnh nền, qua
generate_sound_effects.
Tài liệu
Máy chủ chính thức Model Context Protocol (MCP) của ElevenLabs cho phép tương tác với các API Chuyển văn bản thành giọng nói và xử lý âm thanh mạnh mẽ. Máy chủ này cho phép các ứng dụng khách MCP như Claude Desktop, Cursor, Windsurf, OpenAI Agents và các ứng dụng khác tạo giọng nói, sao chép giọng, chuyển đổi âm thanh thành văn bản, v.v.
Bắt đầu nhanh với Claude Desktop
- Lấy khóa API của bạn từ ElevenLabs. Có gói miễn phí với 10k credit mỗi tháng.
- Cài đặt
uv(trình quản lý gói Python), cài đặt bằngcurl -LsSf https://astral.sh/uv/install.sh | shhoặc xem repouvđể biết các phương thức cài đặt khác. - Vào Claude > Settings > Developer > Edit Config > claude_desktop_config.json và thêm nội dung sau:
{
"mcpServers": {
"ElevenLabs": {
"command": "uvx",
"args": ["elevenlabs-mcp"],
"env": {
"ELEVENLABS_API_KEY": "<insert-your-api-key-here>"
}
}
}
}
Nếu bạn dùng Windows, bạn cần bật "Developer Mode" trong Claude Desktop để sử dụng máy chủ MCP. Nhấp "Help" trong menu hamburger ở góc trên bên trái và chọn "Enable Developer Mode".
Các ứng dụng khách MCP khác
Đối với các ứng dụng khách khác như Cursor và Windsurf, chạy:
pip install elevenlabs-mcppython -m elevenlabs_mcp --api-key={{PUT_YOUR_API_KEY_HERE}} --printđể lấy cấu hình. Dán nó vào thư mục cấu hình thích hợp do ứng dụng khách MCP của bạn chỉ định.
Vậy là xong. Ứng dụng khách MCP của bạn giờ đây có thể tương tác với ElevenLabs thông qua các công cụ sau:
Ví dụ sử dụng
⚠️ Cảnh báo: Cần có credit ElevenLabs để sử dụng các công cụ này.
Hãy thử hỏi Claude:
- "Tạo một tác nhân AI nói giống như thám tử phim noir và có thể trả lời câu hỏi về phim cổ điển"
- "Tạo ba biến thể giọng nói cho nhân vật rồng cổ đại thông thái, sau đó tôi sẽ chọn giọng yêu thích để thêm vào thư viện giọng nói của mình"
- "Chuyển đổi bản ghi âm giọng nói của tôi thành giọng của một hiệp sĩ thời trung cổ"
- "Tạo khung cảnh âm thanh của một cơn giông bão trong rừng rậm với các loài động vật phản ứng với thời tiết"
- "Chuyển lời nói này thành văn bản, xác định các người nói khác nhau, sau đó chuyển ngược lại bằng các giọng nói riêng cho từng người"
Các tính năng tùy chọn
Cấu hình đầu ra tệp
Bạn có thể cấu hình cách máy chủ MCP xử lý đầu ra tệp bằng các biến môi trường sau trong claude_desktop_config.json của bạn:
ELEVENLABS_MCP_BASE_PATH: Chỉ định đường dẫn cơ sở cho các thao tác tệp với đường dẫn tương đối (mặc định:~/Desktop)ELEVENLABS_MCP_OUTPUT_MODE: Kiểm soát cách các tệp được tạo ra được trả về (mặc định:files)
Các chế độ đầu ra
Biến môi trường ELEVENLABS_MCP_OUTPUT_MODE hỗ trợ ba chế độ:
-
files(mặc định): Lưu tệp vào đĩa và trả về đường dẫn tệp"env": { "ELEVENLABS_API_KEY": "your-api-key", "ELEVENLABS_MCP_OUTPUT_MODE": "files" } -
resources: Trả về tệp dưới dạng tài nguyên MCP; dữ liệu nhị phân được mã hóa base64, văn bản được trả về dưới dạng văn bản UTF-8"env": { "ELEVENLABS_API_KEY": "your-api-key", "ELEVENLABS_MCP_OUTPUT_MODE": "resources" } -
both: Lưu tệp vào đĩa VÀ trả về dưới dạng tài nguyên MCP"env": { "ELEVENLABS_API_KEY": "your-api-key", "ELEVENLABS_MCP_OUTPUT_MODE": "both" }
Lợi ích của Chế độ Tài nguyên:
- Tệp được trả về trực tiếp trong phản hồi MCP dưới dạng dữ liệu mã hóa base64
- Không cần I/O đĩa - hữu ích cho môi trường container hoặc serverless
- Ứng dụng khách MCP có thể truy cập nội dung tệp ngay lập tức mà không cần truy cập hệ thống tệp
- Trong chế độ
both, tài nguyên có thể được tìm nạp sau bằng mẫu URIelevenlabs://filename
Các trường hợp sử dụng:
files: Quy trình làm việc dựa trên tệp truyền thống, phát triển cục bộresources: Môi trường đám mây, ứng dụng khách MCP không có quyền truy cập hệ thống tệpboth: Tính linh hoạt tối đa, bộ nhớ đệm và các kịch bản chia sẻ tài nguyên
Khóa cư trú dữ liệu
Bạn có thể chỉ định khu vực cư trú dữ liệu bằng biến môi trường ELEVENLABS_API_RESIDENCY. Mặc định là "us".
Lưu ý: Cư trú dữ liệu chỉ là tính năng dành cho doanh nghiệp. Xem tài liệu để biết thêm chi tiết.
Đóng góp
Nếu bạn muốn đóng góp hoặc chạy từ mã nguồn:
- Sao chép kho lưu trữ:
git clone https://github.com/elevenlabs/elevenlabs-mcp
cd elevenlabs-mcp
- Tạo môi trường ảo và cài đặt các phụ thuộc bằng uv:
uv venv
source .venv/bin/activate
uv pip install -e ".[dev]"
- Sao chép
.env.examplesang.envvà thêm khóa API ElevenLabs của bạn:
cp .env.example .env
# Edit .env and add your API key
- Chạy các bài kiểm tra để đảm bảo mọi thứ hoạt động:
./scripts/test.sh
# Or with options
./scripts/test.sh --verbose --fail-fast
-
Cài đặt máy chủ trong Claude Desktop:
mcp install elevenlabs_mcp/server.py -
Gỡ lỗi và kiểm tra cục bộ với MCP Inspector:
mcp dev elevenlabs_mcp/server.py
Khắc phục sự cố
Nhật ký khi chạy với Claude Desktop có thể được tìm thấy tại:
- Windows:
%APPDATA%\Claude\logs\mcp-server-elevenlabs.log - macOS:
~/Library/Logs/Claude/mcp-server-elevenlabs.log
Hết thời gian chờ khi sử dụng một số công cụ nhất định
Một số thao tác API của ElevenLabs, như thiết kế giọng nói và cách ly âm thanh, có thể mất nhiều thời gian để hoàn thành. Khi sử dụng MCP inspector ở chế độ phát triển, bạn có thể gặp lỗi hết thời gian chờ mặc dù công cụ đã hoàn thành tác vụ dự định.
Điều này sẽ không xảy ra khi sử dụng ứng dụng khách như Claude.
MCP ElevenLabs: spawn uvx ENOENT
Nếu bạn gặp lỗi "MCP ElevenLabs: spawn uvx ENOENT", hãy xác nhận đường dẫn tuyệt đối của nó bằng cách chạy lệnh này trong terminal của bạn:
which uvx
Khi bạn có được đường dẫn tuyệt đối (ví dụ: /usr/local/bin/uvx), hãy cập nhật cấu hình của bạn để sử dụng đường dẫn đó (ví dụ: "command": "/usr/local/bin/uvx"). Điều này đảm bảo rằng tệp thực thi chính xác được tham chiếu.