RingCentral ACTION
Send SMS
Creates and sends a new text message. See the API docs here
- Action
- Writes data
- OAuth
- SDK
- MCP
IMPLEMENTATION
Call this tool
Connect a user's RingCentral account once, then configure and run Send SMS from your backend or agent.
import { PipedreamClient } from "@pipedream/sdk"
const pd = new PipedreamClient({
projectId: process.env.PIPEDREAM_PROJECT_ID!,
clientId: process.env.PIPEDREAM_CLIENT_ID!,
clientSecret: process.env.PIPEDREAM_CLIENT_SECRET!,
projectEnvironment: "production",
})
const result = await pd.actions.run({
id: "ringcentral-send-sms",
externalUserId: "{external_user_id}", // any stable ID for this user in your system
configuredProps: {
ringcentral: { authProvisionId: "apn_xxxxxxx" },
accountId: "Account ID",
extensionId: ["Extensions"],
},
})
console.log(result)curl -X POST https://api.pipedream.com/v1/connect/{project_id}/actions/run \
-H "Content-Type: application/json" \
-H "X-PD-Environment: production" \
-H "Authorization: Bearer {access_token}" \
-d '{
"external_user_id": "{external_user_id}",
"id": "ringcentral-send-sms",
"configured_props": {
"ringcentral": { "authProvisionId": "apn_xxxxxxx" },
"accountId": "Account ID",
"extensionId": ["Extensions"]
}
}'// accessToken: mint a short-lived token with the Connect SDK — see the MCP guide
const transport = new StreamableHTTPClientTransport(
new URL("https://remote.mcp.pipedream.net/v3"),
{
requestInit: {
headers: {
Authorization: `Bearer ${accessToken}`,
"x-pd-project-id": "{project_id}",
"x-pd-environment": "production",
"x-pd-external-user-id": "{external_user_id}", // any stable ID for this user in your system
"x-pd-app-slug": "ringcentral",
},
},
},
)
const mcp = new Client({ name: "my-agent", version: "1.0.0" })
await mcp.connect(transport)
const { tools } = await mcp.listTools()
// listTools() hands your model this tool's input schema, so it can
// fill the arguments itself:
const result = await mcp.callTool({
name: "ringcentral-send-sms",
arguments: {
accountId: "Account ID",
extensionId: ["Extensions"],
},
})SCHEMA
Inputs
Pipedream supplies the connected account. Your application provides the operation-specific values below. Dynamic inputs are resolved against that user's account.
| Property | Type | Description |
|---|---|---|
accountId Account ID | string | Internal identifier of a RingCentral account or tilde ( ~) to indicate the account logged-in within the current session. Required |
extensionId Extensions | string[] | Internal identifier of an extension. Required Dynamic |
fromPhoneNumber Phone Number | string | The phoneNumber for the sender of an SMS message. Property must be filled to correspond to one of the account phone numbers which is allowed to send SMS. Phone number in E.164 format e.g. +16502223366. Required |
toPhoneNumbers To Phone Numbers | string[] | Phone number of receiver(s) of an SMS message. Phone number in E.164 format e.g. +16502223366. Required |
text Text | string | Text of a message. Max length is 1000 symbols (2-byte UTF-16 encoded). If a character is encoded in 4 bytes in UTF-16 it is treated as 2 characters, thus restricting the maximum message length to 500 symbols. Required |
countryId Country ID | string | Internal ID of a country. Optional Dynamic |
REFERENCE
Tool details
Behavior hints are published with the component in the Pipedream registry and surface as MCP tool annotations, so an agent can reason about a tool before it calls it.
- Registry key
- ringcentral-send-sms
- Version
- 0.5.3
- App
- RingCentral
- Authentication
- OAuth
- Read-only
- No
- Destructive
- No
- Open world
- Yes
- Source
- View on GitHub ↗