ringcentral-mcp
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@ringcentral-mcpwhat is the current presence of extension 102?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
ringcentral-mcp
RingCentral MCP Service — a stateless HTTP MCP server wrapping the RingCentral REST API, covering account info, extensions, phone numbers, presence, call queues, contacts, and call logs/recordings.
Tech stack: Python 3.12 + uv + FastMCP (Starlette/Uvicorn)
Scope
13 tools, aligned to MSPbots' historical usage categories (Account Info, Extension, Phone Numbers, Presence, Queues, Queue Members, Internal Contacts, External Contacts, Company Call Log Records, User Call Log Records, Call Recording).
Related MCP server: Sentinel Core Agent
Authentication
RingCentral's REST API uses the JWT bearer flow — a server-to-server grant with no user browser redirect. A JWT credential is generated in the RingCentral admin console for a dedicated "service user" (Roles & Permissions → the service user's JWT credential), then exchanged for a short-lived access token:
POST https://platform.ringcentral.com/restapi/oauth/token
Authorization: Basic base64(client_id:client_secret)
Content-Type: application/x-www-form-urlencoded
grant_type=urn:ietf:params:oauth:grant-type:jwt-bearer&assertion=<jwt>The response includes both an access token and a refresh token, but since re-exchanging the JWT itself is cheap and this service must stay stateless, it re-authenticates on every call rather than caching/refreshing.
Quick Start
cd D:\claude\project\ringcentral-mcp
uv sync
$env:RINGCENTRAL_CLIENT_ID="your_app_client_id"
$env:RINGCENTRAL_CLIENT_SECRET="your_app_client_secret"
$env:RINGCENTRAL_JWT="your_service_user_jwt_credential"
uv run ringcentral-mcpConfiguration
Copy .env.example to .env and fill in your values:
Variable | Default | Description |
| — | RingCentral app's client ID |
| — | RingCentral app's client secret |
| — | JWT credential issued to a service user |
|
|
|
|
|
|
|
| HTTP server port |
HEADER 授权参数说明
Header | 类型 | 是否必填 | 默认值 | 枚举值 | 字段描述 | Example |
| string | 是 | 无 | 无 | RingCentral App 的 Client ID |
|
| string | 是 | 无 | 无 | RingCentral App 的 Client Secret |
|
| string | 是 | 无 | 无 | 绑定在某个 Service User 上的 JWT 凭据(RingCentral 后台 Roles & Permissions 生成),本服务用其换 access token |
|
Claude Desktop Setup
{
"mcpServers": {
"ringcentral": {
"command": "uv",
"args": ["run", "--directory", "D:/claude/project/ringcentral-mcp", "ringcentral-mcp"],
"env": {
"RINGCENTRAL_CLIENT_ID": "your_app_client_id",
"RINGCENTRAL_CLIENT_SECRET": "your_app_client_secret",
"RINGCENTRAL_JWT": "your_service_user_jwt_credential"
}
}
}
}Transport Modes
stdio
$env:RINGCENTRAL_CLIENT_ID="your_app_client_id"
$env:RINGCENTRAL_CLIENT_SECRET="your_app_client_secret"
$env:RINGCENTRAL_JWT="your_service_user_jwt_credential"
uv run ringcentral-mcpHTTP — single-tenant
$env:RINGCENTRAL_CLIENT_ID="your_app_client_id"
$env:RINGCENTRAL_CLIENT_SECRET="your_app_client_secret"
$env:RINGCENTRAL_JWT="your_service_user_jwt_credential"
$env:MCP_TRANSPORT="http"
$env:AUTH_MODE="env"
uv run ringcentral-mcpHTTP — gateway / multi-tenant
$env:MCP_TRANSPORT="http"
$env:AUTH_MODE="gateway"
uv run ringcentral-mcp
# Each request must include: X-RingCentral-Client-Id, X-RingCentral-Client-Secret, X-RingCentral-Jwt headersAvailable Tools (13)
Tool | Description | API |
| Get company/account info |
|
| List extensions |
|
| Get one extension's details |
|
| List company + extension phone numbers |
|
| Get an extension's presence/DND status |
|
| List call queues |
|
| List a call queue's members |
|
| List company directory entries |
|
| List an extension's personal address book |
|
| Account-wide call log |
|
| Call log for one extension |
|
| Get a recording's metadata |
|
| Get a recording's media metadata (size/content-type only — binary audio isn't representable as MCP tool output) |
|
Known Gaps
⚠️ Not yet tested against a live RingCentral account. All 13 tools have been checked structurally only (MCP handshake, tools-list, schema validity,
/health, gateway 401 credential-gating). Per the parent ClickUp task, this is currently blocked at the business/procurement level — MSPbots has never purchased a RingCentral service (no paid user seat), and a JWT credential can only be bound to a real service user account, so no test credentials are available yet.Endpoints verified directly against RingCentral's official OpenAPI spec (
assets-developers.ringcentral.com/dpw/api-reference/specs/public/office/rc-platform.yml, linked from the developer docs site) — not guessed.ringcentral_get_call_recording/ringcentral_download_call_recording: there is no standalone "list all recordings" endpoint — recording IDs must come from a call-log entry'srecording.idfield (query call logs withrecordingType/withRecordingparams to surface them)."Queues" have no separate
/call-queueresource type in RingCentral's model — they're extensions with type Department/Call Queue, exposed at the dedicated/call-queuespaths used here.Scope is limited to the 13 operations above, not RingCentral's full API surface (which also includes messaging/SMS, meetings, fax, call control/RingOut, and account provisioning).
API Reference
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- Alicense-qualityDmaintenanceEnables AI agents to interact with Genesys Cloud platform through MCP tools, resources, and prompts, supporting queues, conversations, users, presence, and analytics with production-ready features like Streamable HTTP and per-request authentication.Last updated1MIT
- Flicense-qualityDmaintenanceEnables file system operations, web scraping, and AI-powered search through MCP tools for use by LLM agents.Last updated1
- Flicense-qualityBmaintenanceEnables interaction with Salesforce data and services via custom MCP tools, including account analytics, opportunity queries, case creation, and AI agent invocation.Last updated4
- Flicense-qualityBmaintenanceEnables Eesa AI agents to interact with Dialpad cloud phone system via MCP tools, including user management, call logs, transcripts, and SMS sending, with multi-tenant support.Last updated
Related MCP Connectors
Official MCP server for OmniDimension. Drive voice agents, dispatch calls, and run bulk campaigns.
34 production API tools over one hosted MCP endpoint.
Phone, SMS & email for AI agents — one remote MCP endpoint, OAuth login, zero install.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/MSPbotsAI/ringcentral-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server