> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.getdial.ai/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.getdial.ai/_mcp/server.

# Smithery

> Install Dial from Smithery — the remote MCP server, or the CLI skill — no manual config.

Dial is on [Smithery](https://smithery.ai), the registry for AI-agent MCP servers and skills, in two forms:

* **[`getdial-ai/dial`](https://smithery.ai/servers/getdial-ai/dial)** — the hosted **[Remote MCP](/integrations/tools/mcp)** server. Connect any MCP client to Dial over the network and authorize in the browser.
* **[`getdial-ai/cli`](https://smithery.ai/skills/getdial-ai/cli)** — the **[CLI skill](/integrations/tools/cli-skill)**, a content-only `SKILL.md` that teaches a local agent to drive the `dial` CLI.

Pick the **MCP server** when your client speaks MCP and you want zero install; pick the **skill** when your agent shells out to the `dial` CLI.

## MCP server

Install the Dial MCP server into an MCP client straight from Smithery:

```bash title="Smithery CLI"
npx -y @smithery/cli install getdial-ai/dial --client <client>
```

```bash title="From the page"
# Or open the server page and use "Connect":
# https://smithery.ai/servers/getdial-ai/dial
```

`<client>` is your MCP client (e.g. `claude`, `cursor`). Smithery writes the connection to that client's MCP config, pointing at Dial's hosted server (`https://getdial.ai/mcp`). On first use the client opens a browser to authorize — no API key to copy. The available tools (`send_message`, `place_call`, `wait_for_event`, …) and the OAuth flow are covered on the [MCP](/integrations/tools/mcp) page.

For a local, on-machine alternative that reuses your saved CLI key instead of OAuth, see [Local MCP](/integrations/tools/mcp#connect) (`npx @getdial/cli mcp`).

## CLI skill

Install the **`getdial-ai/cli`** skill into a local agent with a single command — no JSON config, no file copies. The skill that lands is the same `SKILL.md` shipped in [`GetDial-AI/cli`](https://github.com/GetDial-AI/cli) and bundled with the `@getdial/cli` npm package.

```bash title="Smithery CLI"
smithery skill add getdial-ai/cli --agent <agent_name>
```

```bash title="No install (npx)"
npx -y @smithery/cli skill add getdial-ai/cli --agent <agent_name>
```

`<agent_name>` is the slug of the local agent the skill should be wired into — one of `claude-code`, `cursor`, `codex`, `opencode`, `pi`, `openclaw`, `nanoclaw`, `hermes`. The Smithery CLI resolves the agent's standard skills directory and writes `dial-cli/SKILL.md` into it; nothing else is touched.

If you don't yet have the Smithery CLI, install it once:

```bash
npm install -g @smithery/cli
```

### What the skill does

The skill describes the `dial` CLI — its command tree, the `--json` convention, the onboarding flow, and the docs-lookup pattern — packaged in the [skills.sh](https://skills.sh) layout. Once installed:

* The agent loads the skill on demand whenever a Dial-shaped task comes up.
* If the `dial` CLI isn't yet on the machine, the skill walks the agent through running [`getdial.ai/skills.md`](https://getdial.ai/skills.md) to install it.
* The skill itself is content-only — installing it does **not** sign you up, write any auth, or run anything on the network.

## Use it

Once connected (server) or installed (skill), ask the agent in plain language:

> Send an SMS to +14155550123 with the body "running late, ETA 10 min".

The agent calls the matching MCP tool or `dial` command and runs it. See [Using Dial from an agent](/documentation/get-started/using-dial-from-an-agent) for more examples and a CLI-vs-MCP-vs-SDK comparison.

## Resources

* [Smithery — `getdial-ai/dial` MCP server](https://smithery.ai/servers/getdial-ai/dial)
* [Smithery — `getdial-ai/cli` skill](https://smithery.ai/skills/getdial-ai/cli)
* [Smithery CLI documentation](https://smithery.ai/docs/concepts/cli)
* [MCP — Remote & Local](/integrations/tools/mcp) · [CLI Skill](/integrations/tools/cli-skill)