# Setup

> Connect Claude Code to the Voicenter MCP server using OAuth authentication

- **Type:** Skill
- **Install:** `agentstack add skill-voicenterteam-claude-marketplace-setup`
- **Verified:** Yes — security-reviewed for prompt injection and unsafe behavior
- **Seller:** [VoicenterTeam](https://agentstack.voostack.com/s/voicenterteam)
- **Installs:** 0
- **Category:** [Security](https://agentstack.voostack.com/c/security)
- **Latest version:** 0.1.0
- **License:** MIT
- **Upstream author:** [VoicenterTeam](https://github.com/VoicenterTeam)
- **Source:** https://github.com/VoicenterTeam/claude-marketplace/tree/main/plugins/voicenter-mcp/skills/setup

## Install

```sh
agentstack add skill-voicenterteam-claude-marketplace-setup
```

Requires the [AgentStack CLI](https://agentstack.voostack.com/docs/cli). Works with Claude Code, Cursor, and any MCP-compatible agent.

## About

> **Language.** Reply in the user's language: detect what they write — Hebrew→Hebrew, English→English — and mirror it, switching if they switch mid-conversation. This shapes your prose, your questions, and your `AskUserQuestion` option labels only. It does **not** change the artifacts you produce — identifiers, JSON keys, BCP-47 language codes, API field names, and other data stay exactly as specified.

> **Opening.** Your first message greets bilingually so the user knows both languages are available — e.g. *"נוכל להמשיך בעברית או באנגלית — מה נוח לך? / We can continue in Hebrew or English — whichever you prefer."* Then mirror whatever language the user replies in.

> **One question per turn.** Ask exactly one question per message and wait for the answer before asking the next — never present multiple questions in a single turn. When the answer is a closed set (pick-one / yes-no / pick-from-list), use the `AskUserQuestion` tool rather than plain text; it automatically adds an "Other" free-text escape, so don't hand-roll one. Reserve plain free-text questions for genuinely open inputs (names, descriptions, URLs, numbers).

Help the developer connect Claude Code to the **Voicenter MCP server** at `mcp01.voicenter.co/mcp`.

## How authentication works

The Voicenter MCP server uses **OAuth** — not a static API token or environment variable. You do not need to configure any credentials manually. Claude Code handles the entire OAuth flow for you automatically when you first connect.

There is nothing to set in `.env` files, shell profiles, or environment variables. The `voicenter-mcp` plugin only needs the server URL, which is already configured in `plugin.json`.

## Step 1 — Install the plugin

In Claude Code:

```
/plugin install voicenter-mcp@voicenter
```

## Step 2 — Connect and authenticate

The first time Claude Code tries to use the Voicenter MCP server, it will detect that authentication is required and launch the OAuth flow automatically. You will be prompted to:

1. Open a browser window (or have it opened for you automatically).
2. Log in to your Voicenter account at the authorization page.
3. Grant Claude Code permission to access the Voicenter API on your behalf.
4. Return to Claude Code — the connection is established.

Claude Code stores the OAuth token securely and refreshes it automatically. You will only need to go through this flow once per device (or when your session expires).

## Step 3 — Verify the connection

Once authenticated, ask Claude:

```
List all my Voicenter extensions
```

Claude will call the MCP server live. If it responds with your extension list, you are connected.

## What you can do once connected

| Prompt | What happens |
|---|---|
| "Initiate a click2call from extension SIPSIP to 0501234567" | Calls the Click2Call API |
| "Show me all calls from the last 7 days" | Queries the Call Log API |
| "Add 0501234567 to the blacklist" | Calls the Blacklist API |
| "List all active campaigns in the dialer" | Calls the Dialer GetCampaignList API |
| "Log in agent user 123456 on extension SIPSIP" | Calls the Login/Logout API |
| "What calls are active right now?" | Calls the Active Calls API |

## Re-authenticating

If your OAuth session expires or you switch Voicenter accounts, Claude Code will prompt you to authenticate again the next time it tries to use the MCP server. This is handled automatically — you do not need to clear any tokens manually.

## Troubleshooting

**Claude does not launch the OAuth flow** — Try explicitly asking Claude to use a Voicenter tool (e.g. "list my extensions"). This triggers the connection attempt and the OAuth prompt.

**Authorization page shows an error** — Make sure your Voicenter account has API / MCP access enabled. Contact [api@voicenter.com](mailto:api@voicenter.com) if it does not.

**Connection works but Claude cannot perform an action** — The OAuth scope granted may not include the required permission. Disconnect and re-authenticate to get a fresh token with the correct scopes.

## Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

- **Author:** [VoicenterTeam](https://github.com/VoicenterTeam)
- **Source:** [VoicenterTeam/claude-marketplace](https://github.com/VoicenterTeam/claude-marketplace)
- **License:** MIT

Install and usage instructions live in the source repository linked above.

## Pricing

- **Free** — Free

## Security capabilities

Automated source analysis of v0.1.0 — what this tool can access:

- **Network access:** no
- **Filesystem access:** no
- **Shell / process execution:** no
- **Environment & secrets:** yes
- **Dynamic code execution:** no

*"Yes" means the capability is present in the source — more access means more to trust, not that it is unsafe.*


## Versions

- **0.1.0** — security scan: passed — Imported from the upstream source.

## Links

- Listing page: https://agentstack.voostack.com/l/skill-voicenterteam-claude-marketplace-setup
- Seller: https://agentstack.voostack.com/s/voicenterteam
- Browse the marketplace: https://agentstack.voostack.com/browse

---
Listed on AgentStack — the marketplace for AI agent skills and MCP servers. Every listing is security-reviewed. Creators keep 70%.
