Setting Up the RingCentral Connector

Wire RingCentral into Wazzi via JWT credentials — voice, SMS, fax, meetings, call queues, and more.

April 25, 2026
5 min read

Path: Connectors → RingCentral → Configuration

What this connector does

The RingCentral connector exposes the full RingCentral Connect Platform to Wazzi as MCP tools — voice calls, SMS / MMS, fax, video meetings, call queues, IVR, phone numbers, team messaging. There are 300+ tools available; permissions decide which any given user can invoke.

Wazzi authenticates via JWT credentials. RingCentral's developer console issues a JWT that Wazzi exchanges for short-lived OAuth access tokens (~2 hour lifetime, auto-refreshed and cached). One JWT, no per-user OAuth flows.

Before you start — getting your JWT credentials

You'll need:

  • A RingCentral account (production or developer sandbox).
  • Admin permissions on that account.
  1. Go to developers.ringcentral.com and sign in.
  2. Click Console → Apps → Create App.
  3. Configure the app:
    • App name: Wazzi MCP (or similar).
    • App type: Server-only (No UI).
    • Auth type: JWT auth flow.
    • Permissions: pick the scopes your team needs — common picks are Read Messages, Send SMS, Read Call Log, Edit Call Handling Rules, Meetings. You can update later.
  4. Once created, the app's Credentials page shows your Client ID and Client Secret. Copy both.
  5. In the same console, navigate to Credentials (your account-level credentials, not the app's) and create a JWT credential. Pick the production environment, give it a label like "Wazzi MCP JWT", and tie it to the app you just created.
  6. Copy the JWT token. You can't view it again after closing the dialog — if you lose it, regenerate.

Reference: RingCentral's official guide is at developers.ringcentral.com → JWT Flow.

Sandbox note: RingCentral's sandbox host (platform.devtest.ringcentral.com) was discontinued on January 1, 2025. Both development and production traffic now use platform.ringcentral.com. If you need a separate test environment, use a separate RingCentral Developer Environment account.

What this connector unlocks for your team

Once configured, members with the right MCP permissions can ask Claude / ChatGPT / Cursor things like:

  • "Send a SMS to +1-555-0100 saying we'll be 10 minutes late."
  • "List my missed calls from yesterday."
  • "Schedule a video meeting with the engineering team for tomorrow at 2pm."
  • "Show me the call queue stats for support."

The exact set of available actions depends on which MCP toggles you've flipped on for the user's group — see Managing Permissions.

Steps — configuring RingCentral in Wazzi

1. From the Connectors catalog, click Configure on the RingCentral tile.

You'll land on RingCentral's Configuration tab:

RingCentral connector Configuration tab

2. Fill in the fields.

  • Client ID — from your app's Credentials page in the RingCentral Developer Console.
  • Client Secret — same page. This will be encrypted at rest.
  • JWT — the JWT token you generated. Long string starting with eyJ.... Treat as a password.

3. Click Test Connection.

Wazzi exchanges the JWT for an access token, then calls a lightweight RingCentral endpoint (your account's extension info). Success returns the account name; failure shows the auth error.

4. Click Save Configuration.

RingCentral moves to the Active section of the catalog and the dot turns green.

Troubleshooting

  • "Test Connection failed: invalid_client" or "Invalid client_id." Client ID or secret is wrong. Re-copy from the app's Credentials page in RingCentral Developer Console — surrounding whitespace is the usual culprit.
  • "Test Connection failed: invalid_grant" or "JWT signature verification failed." The JWT doesn't match the app you tied it to (or the JWT has been revoked). Generate a fresh JWT in RingCentral, ensuring it's tied to the correct app.
  • "Insufficient permissions" / 403 when calling a specific tool. Your RingCentral app doesn't have the scope that action requires. Open the app in the Developer Console → Permissions → add the missing scope. Wait ~1 minute for the change to propagate.
  • JWT expired. JWTs themselves don't expire by default but can be revoked. If your test stops working months in, generate a new JWT in RingCentral and update the field in Wazzi.
  • "Token expired" mid-call. Wazzi auto-refreshes access tokens with a 5-minute safety buffer. If you see this, your clock is severely off — sync the system clock and retry.

Best practices

  • Scope-minimize the RingCentral app. Only request the permissions your team will use. Adding more later is one click.
  • Use production credentials, not sandbox. The sandbox is discontinued; the only real path is production. Test in production using a low-risk extension.
  • Rotate the JWT periodically. RingCentral JWTs don't expire, but rotating quarterly limits the blast radius of a leak.
  • Restrict who can invoke create/send actions. SMS and outbound calls cost money and have legal compliance implications. Only grant create permissions to groups that need them — see Managing Permissions.

Frequently asked questions

Does Wazzi store my credentials in plaintext?
No. Client Secret and JWT are encrypted at rest with per-org keys.

Can I run multiple RingCentral accounts?
RingCentral is a single-instance connector. If you have multiple accounts, pick one. For full multi-instance, file a feature request.

Will SMS sent via this connector show up in my call log?
Yes — RingCentral's normal logs and recordings still apply. Wazzi adds nothing on top; everything still flows through your RingCentral account.

What about TCPA / SMS compliance?
That's your responsibility. Don't grant send SMS permissions broadly without a clear policy.

What's next

Was this article helpful?