---
title: "Clara MCP server · Official developer resources"
description: "Official developer documentation for Clara, the AI receptionist: connect through the Clara MCP server, OAuth 2.1, and a verified catalog of read and write tools."
canonical: "https://heyitsclara.com/developers/"
last_updated: "2026-08-28"
---

# Clara MCP server and developer resources

> These are the official developer resources for Clara, the AI receptionist from heyitsclara.com. AI assistants and agents connect to a Clara account through one MCP endpoint, OAuth 2.1, and a documented set of read and write tools.

Source: https://heyitsclara.com/developers/

## Clara MCP server

- Endpoint: `https://mcp.heyitsclara.com/mcp`
- Transport: Streamable HTTP (Model Context Protocol)
- Protocol revision verified: 2025-06-18
- Health and live tool list: https://mcp.heyitsclara.com/health
- Included with: Clara Pro

Clara has no public REST API. The MCP server is the supported way for an AI assistant or agent to work with a Clara account.

## Authorization

Clara uses OAuth 2.1 with PKCE. Clara is both the protected resource and its own authorization server, and registers clients dynamically, so there is no manual app registration and no client secret to store.

| Item | Value |
| --- | --- |
| Issuer | https://mcp.heyitsclara.com |
| Authorization endpoint | https://mcp.heyitsclara.com/authorize |
| Token endpoint | https://mcp.heyitsclara.com/token |
| Dynamic client registration | https://mcp.heyitsclara.com/register |
| Grant types | authorization_code, refresh_token |
| PKCE | S256 (required) |
| Client authentication | none (public clients) |
| Authorization server metadata | https://mcp.heyitsclara.com/.well-known/oauth-authorization-server |
| Protected resource metadata | https://mcp.heyitsclara.com/.well-known/oauth-protected-resource |

An unauthenticated request returns `401` with a `WWW-Authenticate: Bearer resource_metadata="https://mcp.heyitsclara.com/.well-known/oauth-protected-resource"` challenge, so a client can discover the authorization server from the resource itself (RFC 9728).

People sign in with the Clara account they already use, and approve the connection before any token is issued.

## What a connection can do

- Every request carries the individual Clara user's own credential. There is no cross-tenant key and no shared service account.
- A connection can only reach the businesses on the account that authorized it. Clara's backend enforces tenancy on every call, not the MCP layer.
- Write tools change a live receptionist, so MCP clients ask the person to confirm each call before it runs.
- Access ends when the person disconnects Clara in their assistant or revokes the connection from the Clara web app. Nothing keeps working on its own afterwards.
- Per-user rate limits, a global concurrency cap, request timeouts, and a circuit breaker protect the Clara backend behind the MCP server.
- No OAuth scope vocabulary is issued yet, so a client cannot currently request read-only access at the token level. Least-privilege today means connecting only the account that needs it and confirming writes.

## Tools

14 read tools and 17 write tools. Read tools never change Clara data. Write tools change a live receptionist or send a message, and MCP clients confirm each one with the person first.

### Read

| Tool | Access | What it does |
| --- | --- | --- |
| `get_account` | read | The signed-in Clara account |
| `list_businesses` | read | Businesses on the account |
| `get_business` | read | One business and its receptionist setup |
| `list_inquiries` | read | Inquiries captured from calls and texts |
| `get_inquiry` | read | One inquiry in full |
| `list_calls` | read | Answered calls with summaries |
| `get_call_statistics` | read | Call volume and outcome totals |
| `list_customers` | read | Callers Clara has spoken to |
| `get_customer` | read | One customer and their history |
| `get_recording` | read | A call recording and transcript |
| `search` | read | Search across calls, messages, and customers |
| `list_voices` | read | Voices the receptionist can use |
| `preview_receptionist_voice` | read | Hear a voice before switching |
| `list_receptionist_rules` | read | Instructions, follow-ups, transfer rules |

### Write

| Tool | Access | What it does |
| --- | --- | --- |
| `update_business` | write | Edit business details |
| `update_receptionist` | write | Edit greeting, voice, and intake fields |
| `update_customer` | write | Edit a customer record |
| `mark_inquiry_read` | write | Mark an inquiry read |
| `set_inquiry_status` | write | Change an inquiry status |
| `add_special_instruction` | write | Add a receptionist instruction |
| `update_special_instruction` | write | Edit a receptionist instruction |
| `remove_special_instruction` | write | Delete a receptionist instruction |
| `add_followup_text` | write | Add an automated follow-up text |
| `update_followup_text` | write | Edit an automated follow-up text |
| `remove_followup_text` | write | Delete an automated follow-up text |
| `test_followup_text` | write | Send yourself a test follow-up text |
| `add_transfer_rule` | write | Add a live call transfer rule |
| `update_transfer_rule` | write | Edit a live call transfer rule |
| `remove_transfer_rule` | write | Delete a live call transfer rule |
| `reply_to_customer` | write | Send a text reply to a customer |
| `mark_sms_read` | write | Mark a text conversation read |

## Machine-readable descriptors

- OpenAPI 3.1: https://heyitsclara.com/openapi.json
- API catalog (RFC 9727): https://heyitsclara.com/.well-known/api-catalog
- Agent login instructions: https://heyitsclara.com/auth.md
- Site summary for LLMs: https://heyitsclara.com/llms.txt
- Full site content for LLMs: https://heyitsclara.com/llms-full.txt
- Sitemap: https://heyitsclara.com/sitemap-index.xml

## Markdown for agents

Locale-free paths are served by the Worker and negotiate content: send `Accept: text/markdown` to `https://heyitsclara.com/`, `/pricing`, `/blog`, `/support/<article>` and the rest of the top-level sections, and you get markdown instead of HTML. Locale-prefixed pages (`/us/...`, `/gb/...`) are static files and always return HTML.

## Setup guides

- What Clara integrations are: https://heyitsclara.com/us/support/what-are-clara-integrations/
- Connecting Clara to Claude: https://heyitsclara.com/us/support/connecting-clara-to-claude/
- Connecting Clara to ChatGPT: https://heyitsclara.com/us/support/connecting-clara-to-chatgpt/

## Terms and privacy

- Terms: https://heyitsclara.com/us/terms/
- Privacy: https://heyitsclara.com/us/privacy/

Questions about connecting an agent to Clara: support@heyitsclara.com
