Connect AI assistants like Claude Desktop, Claude Code, Cursor, and ChatGPT directly to your
Rovlin marketing account. Manage campaigns, audiences, leads, email templates, and images — without leaving
your AI assistant.
ℹ️
The Rovlin MCP Server uses OAuth 2.0 Dynamic Client Registration. When an AI
tool connects for the first time, it registers itself automatically, opens your browser for login, and
requests authorization to access your account.
The Rovlin MCP server gives AI tools a standardized way to:
Access account and profile information
List, create, and analyze marketing campaigns
Manage customer audiences and audience segments
Create, update, and delete lead profiles
Upload images via URL or direct file upload to Rovlin CDN
Create and retrieve email templates
📋Prerequisites
1
A Rovlin account
You need an active Rovlin account at app.rovlin.com. Your existing login credentials are used for OAuth authorization.
Obtain the MCP server URL from your Rovlin workspace settings. It takes the form
https://<your-deployment>.rovlin.com.
⚡What You Can Do
Once connected, your AI assistant can perform actions across six functional areas:
👤
Account
Retrieve your account details and profile information using natural language.
📣
Campaigns
List campaigns, view stats and analytics, and create new campaigns with a subject,
template, and audience group.
👥
Audiences
Browse all audience groups, inspect individual segments, and list campaign
recipients.
🗂️
Leads & Profiles
Full CRUD on customer profiles — get, create, update, and delete leads with contact
details.
🖼️
Images
Upload images to Rovlin CDN by URL or base64 file. Returns a hosted image URL ready
for templates.
✉️
Email Templates
Create branded HTML email templates with name, category tag, HTML content, and
optional thumbnail.
🔐OAuth 2.0 Authentication
The Rovlin MCP server uses OAuth 2.0 with PKCE (Proof Key for Code Exchange) backed by AWS Cognito. MCP
clients that support OAuth Dynamic Client Registration handle this flow automatically.
✅
Modern MCP clients handle this automatically. Claude Desktop, Claude Code,
and ChatGPT will prompt you to log in via your browser — no manual token management needed.
How it works
1
Client Registration
The AI client calls POST /register to register itself. The server returns
a client_id and redirect URI.
2
Authorization
The client redirects you to GET /authorize, which forwards to your AWS
Cognito hosted UI. You log in with your Rovlin credentials and approve access.
3
Token Exchange
After approval, the client exchanges the authorization code at
POST /token using PKCE — no client secret needed. You receive an access token and refresh
token.
4
Authenticated MCP Calls
The client sends Authorization: Bearer <token> with every request
to /mcp or /sse.
Streamable HTTP is the recommended transport for all modern MCP clients.
POST/mcpStreamable HTTP — primary MCP endpoint
ℹ️
Every request to /mcp must include a valid bearer token in the
Authorization header. The server validates it against AWS Cognito before processing any tool
calls.
HTTP Request
POST /mcp HTTP/1.1
Host: https://hcjmts3qxy.us-west-2.awsapprunner.com/
Authorization: Bearer <access_token>
Content-Type: application/json
📡SSE Transport (Legacy)
Available for clients that do not yet support Streamable HTTP.
GET/sseServer-Sent Events — legacy transport
⚠️
Use HTTP transport when possible. SSE transport is maintained for backwards
compatibility. New integrations should use /mcp.
🖥️Connect Claude Desktop
Add the Rovlin MCP server to Claude Desktop by editing its configuration file.
1
Open Claude Desktop settings
Go to Claude → Settings → Developer and click Edit
Config to open claude_desktop_config.json.
Cursor will open your browser to log in to Rovlin. Approve access to complete the
OAuth flow.
4
Start using Rovlin tools
Open a new Cursor chat session. Try: "List my Rovlin campaigns" or
"Upload this image to Rovlin CDN."
💡
Cursor shows a green dot next to connected MCP servers. If the dot is red, check your URL and
try reconnecting.
🤖Connect ChatGPT
ChatGPT supports MCP servers through ChatGPT Connectors, available on Plus, Team, and
Enterprise plans. Once connected, you can manage Rovlin campaigns, leads, and templates through natural
language.
⚠️
ChatGPT MCP support is rolling out gradually. As of 2025, Connectors are
available in the ChatGPT desktop app (macOS) and expanding to web. Check help.openai.com to confirm availability on your plan.
1
Open ChatGPT Settings
Go to Settings → Connectors (or Settings → Beta Features →
Connectors depending on your version).
2
Add a custom MCP server
Click + Add Server and select MCP as the server
type.
3
Enter the Rovlin MCP URL
Paste your server URL. ChatGPT auto-discovers OAuth config from
/.well-known/oauth-authorization-server.
MCP Server URL
https://hcjmts3qxy.us-west-2.awsapprunner.com
4
Authorize via browser popup
ChatGPT opens your Rovlin login page. Sign in and click Allow to
grant access.
5
Start a new conversation
Open a fresh chat. Try: "Show me my Rovlin campaigns" or "Create a lead
named Jane Doe in my Newsletter group."
💡
Tip: Include IDs when you have them. "Get stats for campaign ID
abc123" is more reliable than "How is my latest campaign?"
Troubleshooting
Issue
Fix
Server not found
Confirm the MCP URL is correct and the server is running. Test that /health
returns 200.
OAuth popup does not open
Disable popup blockers for ChatGPT, or switch to the desktop app.
Authorized but no tools appear
Start a completely new conversation — ChatGPT loads tools at session start only.
Token expired mid-session
ChatGPT auto-refreshes tokens. If it fails, disconnect and reconnect in Settings.
👤Account Tools
1 tool
get_account_details
Retrieve your Rovlin account details and profile information.
▶
Returns the full account profile associated with the authenticated user, including name, plan, and
configuration details.
Parameters
Parameter
Type
Required
Description
No parameters required.
Example prompt
Natural Language
"Show me my Rovlin account details"
📣Campaign Tools
4 tools
get_campaigns
List all marketing campaigns for your account, paginated, ordered newest first.
▶
Parameter
Type
Required
Description
page_number
string
required
Page to retrieve. Must be "1" or higher.
get_campaign_stats
Get delivery, open, bounce, spam, and reject rate statistics for a campaign.
Missing or invalid bearer token. Re-authenticate the client.
400
invalid_request
Missing required parameters in the request body or query string.
400
unsupported_grant_type
grant_type must be authorization_code or
refresh_token.
400
invalid_token
Token signature verification failed or the token has expired.
500
server_error
Unexpected server error. Contact Rovlin support if this persists.
Tool
Missing Authorization token
MCP tool called without a valid session. Re-authenticate.
Tool
Page number must be 1 or higher
Paginated tools require page_number as a string "1" or greater.
📝Changelog
🚀
Initial Release Launched Rovlin MCP Server with OAuth 2.0 + PKCE via AWS
Cognito, Streamable HTTP and SSE transports, and 18 tools across Account, Campaigns, Audiences, Profiles,
Images, and Email Templates.