Title MCP Server

Connect your AI agent to the Title platform over the Model Context Protocol — and turn any RCS for Business messaging idea into reality — in minutes.

Streamable HTTPOAuth 2.1 + PKCE16 tools
Overview

One endpoint for your whole messaging stack

Any MCP-compatible client or agent can manage RCS messaging through natural language. Here’s the shape of the server.

Endpoint
https://mcp.titlebm.com/mcp
Transport
Streamable HTTP (MCP)
Auth
OAuth 2.1 + PKCE
Session scope
One brand, fixed at connect time
Tools
16 built-in + connected-integration tools
Resources
3 (contacts, flows, campaigns)
Prompts
3 templates
Connect

Add the server to your client

Pick whichever your client supports — paste the remote URL, or drop the bridge config into your config file. Then sign in once.

Option A — Remote URL (for clients with built-in MCP connectors)
https://mcp.titlebm.com/mcp
Option B — Config file (stdio clients, via the mcp-remote bridge)
mcp client config
{
  "mcpServers": {
    "title": {
      "command": "npx",
      "args": ["-y", "mcp-remote", "https://mcp.titlebm.com/mcp"]
    }
  }
}
On first use your client opens a Title sign-in (OAuth 2.1 + PKCE). Single-brand orgs are selected automatically; multi-brand orgs pick a brand, and the session stays locked to it.
Tools

16 built-in tools

Each connected integration adds its own tools to the same session — e.g. a HubSpot connection exposes hubspot.* tools alongside these.

Contacts & audiences· 6
query_contacts()Search and filter contacts by tag, list, consent state, and more.
get_contact()Fetch a single contact's full profile, tags, and custom fields.
create_contact()Add a new contact to the connected brand.
update_contact()Update a contact's fields, tags, consent, and custom data.
get_tags()List every tag in use across the brand’s contacts.
get_sublists()List the brand’s contact sublists (segments).
Messaging· 4
send_message()Send an RCS message — text, rich card, carousel, or media — to a contact.
check_rcs_capability()Check whether a phone number can receive RCS before sending.
get_conversation_history()Retrieve the full message thread for a conversation.
upload_media()Upload an image or video from a URL for use inside messages.
Flows & campaigns· 5
build_message_flow()Describe a flow in plain language and have Title construct it.
get_flow()Fetch a single message flow or list all flows for the brand.
trigger_flow()Start a saved message flow for a specific contact.
create_campaign()Create and launch a campaign to an audience.
list_campaigns()List the brand’s campaigns and their status.
Analytics· 1
get_analytics()Pull engagement, delivery, contact, campaign, and flow analytics.
Resources

Browsable data

Read-only MCP resources let an agent page through data without a tool call. URI templates accept pagination params.

title://contactsBrowse contacts. Supports ?limit and ?offset pagination.
title://flowsBrowse the brand’s saved message flows.
title://campaignsBrowse campaigns and their current status.
Prompts

Ready-made playbooks

Pre-built prompt templates that steer the agent toward the right sequence of tools for common jobs.

send-booking-confirmationSends a polished booking confirmation message.
run-reengagementRe-engages a segment of inactive contacts.
build-demo-flowSpins up a demo message flow to customize and trigger.
Authentication

OAuth 2.1, brand-scoped

The server is a spec-compliant OAuth 2.1 resource. Clients hit the endpoint, get a 401 with discovery metadata, then register and authorize — no manual key management.

discovery handshake
$ curl -i https://mcp.titlebm.com/mcp

HTTP/1.1 401 Unauthorized
WWW-Authenticate: Bearer resource_metadata=
  "https://mcp.titlebm.com/.well-known/oauth-protected-resource"
OAuth 2.1 + PKCE
Authorization-code flow with PKCE — the client never sees your Title credentials.
Brand-scoped sessions
Brand is fixed at connect time and immutable for the session. No cross-brand reads or writes.
Dynamic discovery & registration
Clients fetch the protected-resource metadata and register automatically. Just paste the URL.
Rate limits

Per-organization limits

Enforced per organization. Exceeding a limit returns a RATE_LIMITED error code so your agent can back off.

LIMIT
DEFAULT
APPLIES TO
Tool calls
60 / min
All tool calls in a session
Message sends
1,000 / min
send_message, create_campaign, build_message_flow
Ready to connect your agent?
Paste the endpoint, sign in, and start messaging.
https://mcp.titlebm.com/mcp