Polly MCP Server for Claude
Polly runs an MCPserver, so Claude can create, manage, and check results on pollys directly from a conversation — no switching to Slack or the Polly dashboard.
Connecting Polly to Claude via MCP
✏️Note: this is different from using Polly through Slackbot's own AI features inside Slack — see [Polly MCP Server for Slack] for that lane. This doc covers connecting an external AI assistant like Claude directly to Polly.
What Claude can do
| Scope | Tools | Lets Claude... |
|---|---|---|
mcp:read |
list_pollys, get_polly, get_draft, search_templates |
Look up pollys, drafts, and templates |
mcp:write |
draft_polly, create_polly, update_polly, close_polly, reopen_polly, cancel_draft, send_reminder |
Create, edit, send, close, reopen, and remind on pollys |
mcp:results:read |
get_polly_results |
Pull vote counts and result breakdowns |
Authoring is always two steps: draft_polly builds a preview and sends nothing, then create_polly publishes it — only once you've approved.
✏️Note: Not supported over MCP: recurring pollys, quizzes, Q&A, and trivia. Claude can only create and manage one-off polls and surveys.
Connecting
Connect it as a custom connector for now:
- In Claude, go to Settings → Connectors → Add custom connector
- Paste the server URL:
https://mcp.polly.ai - Leave Client ID and Secret blank — Polly registers the client automatically
- Click Add — you'll be redirected to log in with your Polly/Slack account
- Approve the scopes on the consent screen (
mcp:read+mcp:writeto author; addmcp:results:readif you want Claude reading results too) - Polly shows as connected ✓
Claude Code (CLI):
claude mcp add --transport http polly https://mcp.polly.ai/mcp
💡Tip: Access tokens last 12 hours; most clients refresh silently, but you may occasionally need to reconnect.
Audience targeting
- Channels — exact name match (
#optional). No match returns up to 5 close suggestions. Archived channels, or private ones Polly hasn't been added to, are refused —/invite @Pollyfirst. - People — email or Slack user ID resolve exactly; matching by display name returns candidates to choose from if there's more than one match.
- If anything in the request can't be resolved, the whole send stops — Claude won't guess or partially send.
Example prompts
- "Send a quick pulse survey to #product-team asking how confident they feel about the Q3 roadmap, 1–5 scale."
- "Create an anonymous yes/no poll in #general asking if people want the holiday party on a Friday or Saturday, close it in 3 days."
- "What are the results so far on the lunch preferences polly I sent yesterday?"
Troubleshooting
| What you see | Cause | Fix |
|---|---|---|
mcp-unavailable |
Plan doesn't include MCP (Enterprise/Custom) | Contact a Polly Admin or connect with the Polly team at contact@polly.ai |
mcp-disabled |
Admin toggle is off | Turn on under Admin → Settings → AI Features |
| Results tools missing | Connected without mcp:results:read |
Reconnect and approve the results scope |
| Asked to sign in again | 12-hour token expired | Reconnect — normal for clients that don't auto-refresh |
invalid_redirect_uri |
Callback URL mismatch | Check for trailing slash / http vs https mismatch |