Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
作者による説明(英語の原文)
Lets Claude, Cursor or any MCP client build voice agents and place real phone calls.
この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。
このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。
使っているAIアプリを選んで、設定をコピーしてください。
WIXZEL_API_KEY「秘密」と表示された値は、あなたのアカウントの鍵です。絶対に人に教えたり、チャットに貼り付けたりしないでください。
必要なもの
どのアプリを使っていますか?
上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。
ウェブ、デスクトップ、モバイルのClaudeで使えます:
https://mcp.voice.wixzel.com/mcpClaude Desktop → Settings → Developer → Edit Config を開き、claude_desktop_config.json にこれを貼り付けます
{
"mcpServers": {
"voice": {
"command": "npx",
"args": [
"-y",
"wixzel-voice-mcp"
],
"env": {
"WIXZEL_API_KEY": "your-value"
}
}
}
}ターミナルでこれを実行します
claude mcp add --transport http voice https://mcp.voice.wixzel.com/mcpclaude mcp add voice --env WIXZEL_API_KEY=your-value -- npx -y wixzel-voice-mcp動かす前に、空欄の値を入力してください。
プロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます
{
"mcpServers": {
"voice": {
"url": "https://mcp.voice.wixzel.com/mcp"
}
}
}プロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます
{
"mcpServers": {
"voice": {
"command": "npx",
"args": [
"-y",
"wixzel-voice-mcp"
],
"env": {
"WIXZEL_API_KEY": "your-value"
}
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
プロジェクトの .vscode/mcp.json に貼り付けます
{
"servers": {
"voice": {
"type": "http",
"url": "https://mcp.voice.wixzel.com/mcp"
}
}
}プロジェクトの .vscode/mcp.json に貼り付けます
{
"servers": {
"voice": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"wixzel-voice-mcp"
],
"env": {
"WIXZEL_API_KEY": "your-value"
}
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
ChatGPTがつなげるのは、インターネット上のサーバーだけです:
https://mcp.voice.wixzel.com/mcpメニューの名前は、プランや時期によって少し違うことがあります。
選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。
この設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。
このサーバーは、ツール一覧を表示する前にサインインを求めます。
誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月6日にチェック
レジストリ名はドメイン wixzel.com で確認済みです(レジストリがドメインの所有を確認しています)
このリポジトリはまだGitHubから読み取っていません
このリポジトリはまだGitHubから読み取っていません
652ミリ秒で応答(HTTP 401)
OAuthでのサインインに対応しているため、AIアプリがログイン画面へ案内してくれます
まだチェックしていません。エンドポイントをチェックするときにツール一覧を読み取ります
レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。
当てはまる基本チェック3項目のうち3項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。
入力が必要なもの:WIXZEL_API_KEY
どちらでも使えます。パソコンにインストールしても、クラウド版につないでもかまいません。
GitHubリポジトリの最終更新は–、最新バージョン(0.12.0)がレジストリに届いたのは4 日前です。
Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。URLでつながるので、リモートMCPサーバーに対応したアプリ(開発者モードのChatGPTなど)でも使えます。
同じカテゴリには:Spec Driven Development, Remote Desktop Commander, Recta
同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。
カードの見方:★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Cheaper cross-chain stablecoin routes for AI agents; 5 % of the verified saving, nothing if none.
作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。
Wixzel Voice for AI agents. A Model Context Protocol server that lets Claude Code, claude.ai, Claude Desktop, Cursor, and any other MCP client create voice agents, connect a carrier, place calls, run campaigns, and read what it all cost, using the Wixzel Voice API.
Wixzel Voice: APIs for AI voice agents. One API key, one balance, every voice engine.
One tool per API operation, 56 in all, each annotated so a client knows which are read-only, which delete, and which spend money or make a real phone ring. Three prompts (quickstart, diagnose_call, spend_report) package the common workflows.
Published as wixzel-phone-mcp up to 0.3.0, while the product was briefly called Wixzel Phone. Those releases keep working: api.phone.wixzel.com and mcp.phone.wixzel.com keep serving.
Two ways to run it:
| Where | Auth | |
|---|---|---|
Hosted, https://mcp.voice.wixzel.com/mcp | Wixzel's servers | OAuth sign-in from the client, or a bearer key |
Local, npx -y wixzel-voice-mcp | Your machine, stdio | WIXZEL_API_KEY in the environment |
The console's AI clients page at voice.wixzel.com/connect generates every command below with a key filled in.
# hosted: sign in with your Wixzel account when Claude Code asks (/mcp → Authenticate)
claude mcp add --transport http wixzel-voice https://mcp.voice.wixzel.com/mcp
claude mcp add wixzel-voice -e WIXZEL_API_KEY=wv_live_... -- npx -y wixzel-voice-mcp
Or commit a .mcp.json so every collaborator gets it:
{
"mcpServers": { "wixzel-voice": { "command": "npx", "args": ["-y", "wixzel-voice-mcp"], "env": { "WIXZEL_API_KEY": "${WIXZEL_API_KEY}" } } } }
Then:
/mcp__wixzel-voice__quickstart
Settings → Connectors → Add custom connector → https://mcp.voice.wixzel.com/mcp → Connect. You sign in to the console, tick what the client may do, and it receives a scoped key of its own. Disconnect it from the console's AI clients page at any time.
Same shape as .mcp.json above: command npx, args ["-y", "wixzel-voice-mcp"], env WIXZEL_API_KEY. Clients that connect over HTTP but cannot do OAuth send the key as Authorization: Bearer wv_live_....
| Family | Tools |
|---|---|
| Engines | list_engines |
| Agents | list_agents get_agent create_agent update_agent delete_agent |
| Calls | place_call list_calls get_call get_call_transcript hangup_call delete_call |
| Callers | list_callers get_caller update_caller |
| Meetings | connect_meeting_integration get_meeting_integration delete_meeting_integration join_meeting list_meetings get_meeting leave_meeting |
| SIP trunks | list_sip_trunks get_sip_trunk create_sip_trunk update_sip_trunk delete_sip_trunk check_sip_trunk_status test_sip_trunk get_sip_trunk_logs |
| Phone numbers | list_phone_numbers get_phone_number create_phone_number update_phone_number delete_phone_number |
| Leads | list_leads get_lead create_lead update_lead delete_lead import_leads |
| Campaigns | list_campaigns get_campaign create_campaign start_campaign pause_campaign delete_campaign |
| Knowledge bases | list_knowledge_bases get_knowledge_base create_knowledge_base import_knowledge_base import_knowledge_file update_knowledge_base delete_knowledge_base list_knowledge_files add_knowledge_file get_knowledge_file delete_knowledge_file |
| MCP servers | list_mcp_servers get_mcp_server create_mcp_server update_mcp_server delete_mcp_server refresh_mcp_server connect_mcp_server_oauth |
| Tools | list_tools get_tool create_tool update_tool delete_tool test_tool |
| Voices | list_voices get_voice preview_voice create_voice_clone update_voice delete_voice |
| Appointments | list_appointments get_appointment create_appointment update_appointment delete_appointment |
| Billing & usage | get_balance list_ledger_entries create_topup get_usage_summary list_usage_events |
| API keys | list_api_keys create_api_key rotate_api_key revoke_api_key |
Prompts: quickstart (connect a carrier, register a number, build an agent, place a first call), diagnose_call (why did call X fail), spend_report (what did this month cost, and where).
Resources: wixzel://guide (the operating guide the server also sends as its instructions) and wixzel://connection (base URL and whether the key is live or test; never the key itself).
place_call, start_campaign, create_topup and create_voice_clone are annotated openWorldHint: true and their descriptions tell the model to confirm with the user first. Clients that gate on annotations will ask before running them.Idempotency-Key; the server generates one per call and accepts an explicit idempotency_key for deliberate retries, so a network timeout never turns into two calls.code, the request_id, and a hint that says what to do: which scope is missing, that the balance is short, that a cursor was mangled.429 is retried after Retry-After up to twice before the model sees it. Those requests are never charged.npx wixzel-voice-mcp --http 3939
| Variable | Purpose |
|---|---|
MCP_PORT | Port. Default 3939; --http overrides. |
MCP_BIND | Interface. Default 127.0.0.1; terminate TLS in front rather than binding wider. |
MCP_PUBLIC_URL | The URL clients use, e.g. https://mcp.voice.wixzel.com/mcp. Advertised as the OAuth resource. |
WIXZEL_API_BASE_URL | The API, which is also the OAuth authorization server. Default https://api.voice.wixzel.com. |
WIXZEL_API_VERSION | Optional Wixzel-Version date pin. |
WIXZEL_API_KEY | Stdio mode: the key. HTTP mode: a fallback for requests without a bearer, accepted only when `MCP_PUBLIC_URL` is a loopback address. |
Each request's bearer becomes the API key for a fresh, throwaway MCP server; nothing is shared between requests. A request without a bearer gets a 401 with WWW-Authenticate: Bearer resource_metadata="…", and /.well-known/oauth-protected-resource names the API as the authorization server, which is how connectors discover sign-in on their own. GET /healthz reports liveness.
The source is mirrored at wixzel-voice-sdks; it is developed in the private monorepo that also holds the API, so a change to an endpoint and the change to its tool land together.
npm install # at the repo root
npm test -w apps/mcp # offline: a fake API behind in-memory and HTTP transports, plus a spec-coverage check npm run build -w apps/mcp npm run inspect -w apps/mcp # MCP Inspector against the built server
Tool schemas are hand-written zod. The spec-coverage test compares them against the API's OpenAPI document (docs/openapi.json) in both directions, so an endpoint added to the API fails the build here until it gets a tool.
This server is for AI agents. Application code should use the SDKs: wixzel-voice on npm and wixzel_voice on pub.dev.
MIT. Wixzel Voice itself is a hosted service; see voice.wixzel.com for terms.