Elba
БесплатноНе проверенMCP server for Elba - manage voice AI agents from any AI coding assistant
Описание
MCP server for Elba - manage voice AI agents from any AI coding assistant
README
Elba MCP Server
Manage voice AI agents from Claude Code, Cursor, VS Code, or any MCP-compatible assistant.
[!NOTE] Early preview — This project is under active development. See the roadmap below for planned tools.
Why?
Building voice AI agents usually means clicking through a dashboard. With this MCP server, you can do it all from your editor:
- Create agents with a prompt — describe what you want, your AI assistant builds it
- Iterate fast — change system prompts, swap voices, test — all without leaving your IDE
- Version control — agent configs live in your workflow, not trapped in a dashboard
- Zero context switching — ask Claude or Cursor to manage your agents directly
Elba is a voice AI agent platform by Kolsetu. This MCP server is a thin client that translates MCP tool calls into Elba API requests — all business logic lives in the Elba platform.
Quick Start
1. Get your integration token
Go to Elba Dashboard → Settings → Integrations → Copy your token.
2. Add to your MCP client
Claude Code
claude mcp add elba -- -e ELBA_INTEGRATION_TOKEN=your-token-here npx -y @kolsetu-opensource/elba-mcp-server
Claude Desktop
Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):
{
"mcpServers": {
"elba": {
"command": "npx",
"args": ["-y", "@kolsetu-opensource/elba-mcp-server"],
"env": {
"ELBA_INTEGRATION_TOKEN": "your-token-here"
}
}
}
}
Cursor
Add to .cursor/mcp.json in your project root:
{
"mcpServers": {
"elba": {
"command": "npx",
"args": ["-y", "@kolsetu-opensource/elba-mcp-server"],
"env": {
"ELBA_INTEGRATION_TOKEN": "your-token-here"
}
}
}
}
VS Code
Add to .vscode/settings.json:
{
"mcp": {
"servers": {
"elba": {
"command": "npx",
"args": ["-y", "@kolsetu-opensource/elba-mcp-server"],
"env": {
"ELBA_INTEGRATION_TOKEN": "your-token-here"
}
}
}
}
}
Windsurf
Add to ~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": {
"elba": {
"command": "npx",
"args": ["-y", "@kolsetu-opensource/elba-mcp-server"],
"env": {
"ELBA_INTEGRATION_TOKEN": "your-token-here"
}
}
}
}
3. Start using it
Once connected, ask your AI assistant things like:
- "List all my Elba agents"
- "Create a new voice agent called 'Support Bot' that handles customer billing questions"
- "What voices are available? Switch my agent to use a different voice"
- "Update the system prompt for my agent to be more friendly"
Available Tools
| Tool | Description |
|---|---|
list_agents |
List all agents in your organization — returns ID, name, and status |
list_voices |
Browse available voices — returns ID, name, description, and provider |
upsert_agent |
Create or update a voice AI agent — matches by name or explicit ID |
Architecture
┌─────────────────┐ stdio ┌──────────────────┐ HTTPS ┌──────────────┐
│ MCP Client │◄──────────────►│ Elba MCP Server │◄────────────►│ Elba API │
│ (Claude, Cursor │ │ (this project) │ │ (backend) │
│ VS Code, etc.) │ │ Thin client │ │ │
└─────────────────┘ └──────────────────┘ └──────────────┘
- Thin client — no business logic here; the server translates MCP calls into API requests
- Local execution — runs as a stdio child process, no network exposure
- Org-scoped tokens — each integration token is limited to a single organization
Roadmap
Phase 1 — Core Agent Management ✅
| Tool | Description | Status |
|---|---|---|
list_agents |
List all agents in your organization | ✅ Done |
upsert_agent |
Create or update a voice AI agent | ✅ Done |
list_voices |
Browse available voices with descriptions | ✅ Done |
Phase 2 — Deploy & Test
| Tool | Description | Status |
|---|---|---|
deploy_widget |
Deploy agent as embeddable web widget | Planned |
trigger_test_call |
Trigger a test call to your agent | Planned |
get_call_history |
View recent call history and outcomes | Planned |
get_credits |
Check organization credit balance | Planned |
Phase 3 — IVR & Telephony
| Tool | Description | Status |
|---|---|---|
| Workflow tools | IVR replacement, call routing | Future |
| Phone number management | Twilio BYOC import, number assignment | Future |
Security
This project takes supply chain security seriously:
| Measure | Status |
|---|---|
| OpenSSF Scorecard | OpenSSF Scorecard |
| CodeQL Analysis | Static analysis on every push & PR |
| OSV Scanner | Dependency vulnerability scanning via Google OSV |
| Dependency Review | Block PRs introducing known-vulnerable packages |
| StepSecurity Harden Runner | Audit all outbound network calls in CI |
| Pinned Actions | All GitHub Actions pinned to full SHA commits |
| npm Provenance | Published with npm provenance for verifiable builds |
| Signed Commits | DCO sign-off required on all contributions |
Authentication
- Log in to Elba
- Go to Settings → Integrations
- Generate or copy your integration token
- Set it as
ELBA_INTEGRATION_TOKENin your MCP client config
Tokens are scoped to your organization — they can only access agents and data within your org.
Vulnerability Reporting
Do NOT open public issues for security vulnerabilities. See SECURITY.md for responsible disclosure via GitHub Security Advisories.
Development
# Clone the repo
git clone https://github.com/Kolsetu-Opensource/elba-mcp-server.git
cd elba-mcp-server
# Install dependencies
npm install
# Build
npm run build
# Run tests
npm test
# Type-check
npm run typecheck
# Lint
npm run lint
# Start in dev mode
npm run dev
Requires Node.js ≥ 20 (see .nvmrc).
Project Structure
src/
├── index.ts # CLI entry point
├── server.ts # MCP server init, tool registration
├── config.ts # Environment config
├── auth.ts # Token format validation
├── elba-client.ts # Elba API client
└── tools/
├── list-agents.ts
├── list-voices.ts
└── upsert-agent.ts
__tests__/ # Mirrors src/ structure (vitest)
Troubleshooting
"ELBA_INTEGRATION_TOKEN environment variable is required"
Make sure you've set the token in your MCP client config. See Quick Start for examples.
"Invalid or expired integration token"
Your token may have been revoked or expired. Generate a new one from Elba Dashboard → Settings → Integrations.
Server not starting
- Check you're running Node.js ≥ 20:
node --version - Try running directly:
ELBA_INTEGRATION_TOKEN=your-token npx @kolsetu-opensource/elba-mcp-server - Check your MCP client logs for error messages
Still stuck?
- Open a discussion for questions
- File an issue for bugs
Contributing
Contributions are welcome! See CONTRIBUTING.md for guidelines.
Quick version:
# Make your changes, then:
npm run lint && npm run typecheck && npm test
npx changeset # describe your change
git commit -s # sign-off required (DCO)
License
MIT — see LICENSE for details.
Built by Kolsetu GmbH · Elba
Установка Elba
У этого сервера нет опубликованного пакета — он собирается из исходников. Открой репозиторий и следуй инструкции в README.
▸ github.com/Kolsetu-Opensource/elba-mcp-serverFAQ
Elba MCP бесплатный?
Да, Elba MCP бесплатный — установка в пару кликов через Unyly без оплаты.
Нужен ли API-ключ для Elba?
Нет, Elba работает без API-ключей и переменных окружения.
Elba — hosted или self-hosted?
Self-hosted: сервер запускается локально на твоей машине командой из раздела установки.
Как установить Elba в Claude Desktop, Claude Code или Cursor?
Открой Elba на unyly.org, выбери вкладку своего клиента (Claude Desktop, Claude Code, Cursor) и нажми Install — конфиг сгенерируется автоматически, без правки JSON.
Похожие MCP
Fetch
Web content fetching and conversion for efficient LLM usage.
AWS KB Retrieval
Retrieval from AWS Knowledge Base using Bedrock Agent Runtime.
автор: modelcontextprotocolSpring AI MCP Server
Provides auto-configuration for setting up an MCP server in Spring Boot applications.
llm-analysis-assistant
A very streamlined mcp client that supports calling and monitoring stdio/sse/streamableHttp, and can also view request responses through the /logs page. It also
автор: xuzexin-hzCompare Elba with
Не уверен что выбрать?
Найди свой стек за 60 секунд
Автор?
Embed-бейдж для README
Похожее
Все в категории ai
