# Get Extension Presence

`ringcentral_get-extension-presence` · RingCentral MCP tool · Identity

Fetch the presence status (available/busy/offline, DnD, active calls) of a RingCentral extension by ID. Requires the RingCentral 'ReadPresence' app permission — a 403 (forbidden) response is expected/acceptable when that permission is not granted.

## RingCentral Frequently Asked Questions

**What does the Get Extension Presence tool do?**

This page documents the Get Extension Presence tool (`ringcentral_get-extension-presence`). Fetch the presence status (available/busy/offline, DnD, active calls) of a RingCentral extension by ID. Requires the RingCentral 'ReadPresence' app permission, a 403 (forbidden) response is expected/acceptable when that permission is not granted. It is one of the RingCentral Identity tools, invoked through your firm's Weave MCP connection and available to members whose access level permits it.

**What is the RingCentral integration?**

The RingCentral integration connects your firm's RingCentral account to Weave. RingCentral (RingEX) is a cloud phone/UCaaS platform. This integration exposes read-only call log, call analytics, recordings, directory, extension, and account diagnostics data as governed MCP tools, scoped per member by access level. It groups 17 tools into 5 categories, exposed through your firm's Weave MCP connection and filtered per member by access level.

## Input

- **id** `string` (required, min length: 1) — Internal identifier of the extension to fetch presence for (or '~' for the currently authorized extension).

## Output

- **uri** `string` — Canonical URI of the presence info resource.
- **allowSeeMyPresence** `boolean` — Whether other extensions can see this extension's presence status.
- **callerIdVisibility** `string` (enum: "All", "None", "PermittedUsers") — Who can see this extension's presence when `allowSeeMyPresence` is true.
- **dndStatus** `string` (enum: "TakeAllCalls", "DoNotAcceptAnyCalls", "DoNotAcceptDepartmentCalls", "TakeDepartmentCallsOnly") — Extended Do-Not-Disturb status.
- **extension** `object` — The extension this presence data is returned for.
  - **id** `integer` — Internal identifier of the extension.
  - **uri** `string` — Canonical URI of the extension.
  - **extensionNumber** `string` — Extension number (usually 3 or 4 digits).
- **message** `string` — Custom status message, as previously published.
- **pickUpCallsOnHold** `boolean` — Whether the extension user can pick up a monitored line on hold.
- **presenceStatus** `string` (enum: "Offline", "Busy", "Available") — Aggregated presence status, calculated from a number of sources.
- **ringOnMonitoredCall** `boolean` — Whether to ring this extension's phone when a monitored user is ringing.
- **telephonyStatus** `string` (enum: "NoCall", "CallConnected", "Ringing", "OnHold", "ParkedCall") — Telephony presence status.
- **userStatus** `string` (enum: "Offline", "Busy", "Available") — User-defined presence status, as previously published.
- **meetingStatus** `string` (enum: "Connected", "Disconnected") — RingCentral Meetings presence.
- **activeCalls** `array` — Information on the extension's active calls.
  - **[]** `object`
    - **id** `string` — Internal identifier of the active call.
    - **direction** `string` (enum: "Inbound", "Outbound") — Call direction.
    - **queueCall** `boolean` — Whether the call belongs to a call queue.
    - **from** `string` — Phone number or extension number of the caller.
    - **fromName** `string` — Name of the caller.
    - **to** `string` — Phone number or extension number of the callee.
    - **toName** `string` — Name of the callee.
    - **startTime** `string` — When the call actually started, ISO 8601.
    - **telephonyStatus** `string` (enum: "NoCall", "CallConnected", "Ringing", "OnHold", "ParkedCall") — Telephony presence status of the call.
    - **sipData** `object` — SIP session details (only when requested).
      - **callId** `string` — SIP call identifier.
      - **toTag** `string` — SIP 'To' tag.
      - **fromTag** `string` — SIP 'From' tag.
      - **remoteUri** `string` — SIP remote URI.
      - **localUri** `string` — SIP local URI.
      - **rcSessionId** `string` — RingCentral session identifier.
    - **sessionId** `string` — Call session identifier.
    - **telephonySessionId** `string` — Telephony identifier of the call session.
    - **onBehalfOf** `string` — Extension ID of the call owner on whose behalf the call is performed.
    - **partyId** `string` — Internal identifier of the call party.
    - **terminationType** `string` — How the call was terminated.
    - **callInfo** `object` — Call Queue session line information.
      - **primary** `object` — Primary call session information (Call Queues only).
        - **type** `string` (enum: "PhoneNumberLabel", "PhoneNumber", "QueueExtension", "QueueName", "CallerIdName", "CallerIdNumber", "None") — Which call information this line displays.
        - **value** `string` — The call information value for this line.
      - **additional** `object` — Additional call session information (Call Queues only).
        - **type** `string` (enum: "PhoneNumberLabel", "PhoneNumber", "QueueExtension", "QueueName", "CallerIdName", "CallerIdNumber", "None") — Which call information this line displays.
        - **value** `string` — The call information value for this line.
- **dndStatusPersonal** `string` — Personal DnD status (live-observed, undocumented field).
- **acceptCallQueueCalls** `boolean` — Whether this extension accepts call queue calls (live-observed, undocumented field).
- **cxTelephonyStatus** `string` — CX telephony status (live-observed, undocumented field).
- **aggregatedTelephonyStatus** `string` — Aggregated telephony status (live-observed, undocumented field).
