Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
作者による説明(英語の原文)
Let AI agents place real phone calls from your verified number, with transcripts and recordings.
この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。
このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。
使っているAIアプリを選んで、設定をコピーしてください。
必要なもの
どのアプリを使っていますか?
上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。
ウェブ、デスクトップ、モバイルのClaudeで使えます:
https://mcp.dialmcp.com/mcpClaude Desktop → Settings → Developer → Edit Config を開き、claude_desktop_config.json にこれを貼り付けます
{
"mcpServers": {
"dialmcp": {
"command": "npx",
"args": [
"-y",
"dialmcp-connector"
]
}
}
}ターミナルでこれを実行します
claude mcp add --transport http dialmcp https://mcp.dialmcp.com/mcpclaude mcp add dialmcp -- npx -y dialmcp-connectorプロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます
{
"mcpServers": {
"dialmcp": {
"url": "https://mcp.dialmcp.com/mcp"
}
}
}プロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます
{
"mcpServers": {
"dialmcp": {
"command": "npx",
"args": [
"-y",
"dialmcp-connector"
]
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
プロジェクトの .vscode/mcp.json に貼り付けます
{
"servers": {
"dialmcp": {
"type": "http",
"url": "https://mcp.dialmcp.com/mcp"
}
}
}プロジェクトの .vscode/mcp.json に貼り付けます
{
"servers": {
"dialmcp": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"dialmcp-connector"
]
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
ChatGPTがつなげるのは、インターネット上のサーバーだけです:
https://mcp.dialmcp.com/mcpメニューの名前は、プランや時期によって少し違うことがあります。
選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。
この設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。
このサーバーのツール一覧はまだ読み取っていません。エンドポイントは順番にチェックしています。
誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月6日にチェック
レジストリ名はドメイン dialmcp.com で確認済みです(レジストリがドメインの所有を確認しています)
このリポジトリはまだGitHubから読み取っていません
このリポジトリはまだGitHubから読み取っていません
まだチェックしていません。エンドポイントは順番にチェックしています
まだチェックしていません。エンドポイントは順番にチェックしています
まだチェックしていません。エンドポイントをチェックするときにツール一覧を読み取ります
レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。
当てはまる基本チェック1項目のうち1項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。
レジストリには必須のキーは載っていません。ただし、最初に使うときにサインインを求めるサーバーもあります。
どちらでも使えます。パソコンにインストールしても、クラウド版につないでもかまいません。
GitHubリポジトリの最終更新は–、最新バージョン(0.1.0)がレジストリに届いたのは3 か月前です。
Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。URLでつながるので、リモートMCPサーバーに対応したアプリ(開発者モードのChatGPTなど)でも使えます。
同じカテゴリには:Spec Driven Development, Remote Desktop Commander, LickityClick
同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。
カードの見方:★ 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.
Create, edit and track LickityClick short links, campaigns and click stats from your AI assistant.
作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。
DialMCP Connector
Give your AI agent a phone.
Open-source connector for DialMCP — the hosted MCP server that lets AI agents place real phone calls from your own verified number.
DialMCP is a remote MCP server at https://mcp.dialmcp.com/mcp. Any client that speaks Streamable HTTP with OAuth can connect to it directly — no install, no API keys. You do not need this package for those clients.
This repository exists for two reasons:
dialmcp-connector launches a local stdio server that proxies to the hosted endpoint and handles the OAuth browser flow for you.server.json registry manifest, and the safety model — in one auditable place.The hosted calling service itself is closed-source. This connector is MIT-licensed and contains no proprietary logic: it is a thin transport shim over a public endpoint.
If your client supports remote MCP servers, skip this package entirely:
URL: https://mcp.dialmcp.com/mcp
Transport: Streamable HTTP Auth: OAuth 2.1 (sign in with your phone number)
Claude Code
claude mcp add --transport http dialmcp https://mcp.dialmcp.com/mcp
</details>
Codex — ~/.codex/config.toml
[mcp_servers.dialmcp]
url = "https://mcp.dialmcp.com/mcp"
</details>
claude.ai / Claude Desktop
Settings → Connectors → Add custom connector → paste https://mcp.dialmcp.com/mcp.
Gamut
Settings → Connectors → Add MCP server → paste the URL (HTTP / OAuth) → complete SMS verification.
On first connect a browser window opens for sign-in. Verify your phone number with an SMS code — that number becomes your caller ID.
npx dialmcp-connector
Or in an MCP client config:
{
"mcpServers": { "dialmcp": { "command": "npx", "args": ["-y", "dialmcp-connector"] } } }
See examples/ for ready-to-paste configs.
| Tool | Description |
|---|---|
place_call | Start an outbound phone call to a US or Canadian number with a stated objective. Returns immediately with a call ID — the call runs asynchronously. |
get_call | Fetch the current state of a call: status, live progress, and once finished the transcript, recording link, and structured resolution. Poll this after place_call. |
end_call | Hang up an in-progress call immediately. |
list_calls | List recent calls for the authenticated user with their statuses and outcomes. |
The API is async by design: place_call returns instantly with a call ID and your agent polls get_call, so a multi-minute call never trips a client's tool timeout.
When a call completes, get_call returns a structured resolution — achieved, partially_achieved, or not_achieved — with a summary, any commitments the other party made, suggested follow-ups, a turn-by-turn transcript, and a signed link to the audio recording.
During the call the service presses keys through automated phone trees, waits silently through hold music, and detects voicemail — hanging up rather than leaving a message.
Every protection is enforced server-side, not as model instructions the agent could talk itself out of.
Full detail: https://dialmcp.com/safety.html
Every release publishes to two places: npm (dialmcp-connector) and the official MCP Registry (com.dialmcp/dialmcp). Both are automated by .github/workflows/release.yml.
version in both package.json and server.json — npm run validate:manifest fails if they disagree, and CI runs it on every push.main.dry_run left checked) and let it go green. This packs the tarball and validates server.json against the live registry schema without publishing anything.vX.Y.Z. The tag must match package.json or the workflow stops before publishing.Step 3 is worth the two minutes: registry versions are immutable and cannot be unpublished. A bad version can only be superseded by a higher one or marked deprecated.
| Job | Runs on | Steps |
|---|---|---|
publish | releases and manual dry runs | typecheck → validate manifest → build → smoke test → tag/version match → npm publish --provenance → mcp-publisher validate |
registry | releases only | wait for npm propagation → mcp-publisher login dns → mcp-publisher publish |
--provenance attaches a signed attestation linking the tarball back to the commit and workflow run that built it, which is why the job needs id-token: write.
The registry publish is a separate job for two reasons. It has to wait for npm: the registry proves ownership by fetching the freshly published version and reading its mcpName field, which 404s until npm propagates (the job retries for ~2.5 minutes). And it holds the signing key, which is scoped to the whole com.dialmcp namespace rather than this one package — so it lives in a protected environment. Keeping that environment off the publish job is deliberate: its branch policy only admits v* tags, and applying it job-wide would block manual dry runs from main outright.
| What | Where | Why |
|---|---|---|
NPM_TOKEN | repository secret | automation token with publish rights on dialmcp-connector |
MCP_REGISTRY_PRIVATE_KEY | secret on the release environment | Ed25519 key, base64; authenticates the registry publish |
release environment | deployment branch policy → tags → v* | keeps the namespace key off untagged runs |
v=MCPv1; k=ed25519; p= | TXT record on the apex of dialmcp.com | how the registry verifies domain ownership |
The TXT record goes on the bare domain, SPF-style — a _mcp. selector is not read and fails with an opaque signature error. Signatures carry a ±15s timestamp window, so the runner's clock must be accurate.
Issues and pull requests are welcome for the connector, docs, and client configs. Bugs in the hosted service itself are best sent to . Please read SECURITY.md before reporting anything security-related.
MIT © Datawizz Inc. See LICENSE.