What is an MCP server?
MCP (Model Context Protocol) is an open standard for connecting AI applications to external tools and data. It gives your AI agent structured access to APIs so it can take actions on your behalf — like creating a campaign or pulling its results — using natural language.What can the Heyoo MCP server do?
The Heyoo MCP server gives your AI agent native access to your workspace through a single integration. You can discover the workspaces you belong to, browse the building blocks of a campaign, create, update, or archive campaigns, and check what’s scheduled — all using natural language.- Workspaces — list the workspaces you can act in, so the agent knows where to work
- Campaigns — list campaigns, fetch a single campaign with its tags, groups, resources, and content pillar, and create, update, or archive campaigns
- Posts — list posts in a date range with their status, plus engagement totals (reactions, comments, shares, clicks) for posts that are already live, so you can answer questions like “which days in July does Dwight have posts scheduled, and what status are they in?” You see your own posts by default; workspace admins can look up specific colleagues, or pull every member’s posts in a single call
- Analytics — pull a workspace’s performance for a date range: headline KPIs (engagement, followers gained, engagement rate, posts published, active contributors, reactions, comments, earned media value), each compared against the immediately preceding period, with an optional per-day series, posting heatmap, and weekday breakdown. Members see their own numbers; admins can scope to the whole workspace, a single member, or an employee group
- Members — list a workspace’s members to find who to look up posts for (workspace-admin access only)
- Reference data — list the tags, employee groups, and content pillars in a workspace to wire them into a campaign
How authentication works
Unlike the REST API, the MCP server does not use anhey_ API key. It authenticates over OAuth 2.1: the first time your client connects, it opens a browser window where you sign in to Heyoo and approve access. Your client then stores the resulting token and refreshes it automatically — there’s no key to copy or paste.
The server advertises OAuth discovery metadata and supports Dynamic Client Registration, so any compliant MCP client can register itself and complete the flow without manual setup. Every tool call is authorized against your live workspace role, so the agent can never exceed what you’re allowed to do in the app. The agent is only offered the tools your role can use, so non-admins don’t see the admin-only tools (creating, updating, or archiving campaigns, listing members, or looking up other members’ posts).
How to use the MCP server
Heyoo’s MCP server runs over streamable HTTP at:mcp-remote bridges to the remote endpoint and handles the OAuth handshake.
MCP client integrations
- Claude (web & desktop)
- Claude Code
- Cursor
- mcp-remote
Open Settings → Connectors → Add custom connector, then paste the Heyoo MCP URL:Claude opens a browser window to sign in to Heyoo and approve access. Once connected, the Heyoo tools appear in the connectors menu.
Working across multiple workspaces
When you belong to a single workspace, the agent acts there automatically. If you belong to several, the workspace-scoped tools (campaigns, posts, members, and reference data) accept an optionalworkspace argument (a workspace slug or name). Omit it and the tool returns the list of your workspaces so the agent can ask which one you mean — or just tell it up front: “in the Acme workspace, list the active campaigns.”
Available tools
| Tool | Description |
|---|---|
list_workspaces | List the workspaces the authenticated user can act in. |
list_tags | List a workspace’s tags (id, name, color) for use in campaigns. |
list_groups | List a workspace’s employee groups, to target a campaign at specific groups. |
list_content_pillars | List a workspace’s content pillars (id, title, color). |
list_campaigns | List campaigns in a workspace, optionally including archived ones. |
get_campaign | Fetch a single campaign with its tags, groups, resources, and content pillar. |
create_campaign | Create a campaign. Defaults to a draft; only a name and destination URL are required. |
update_campaign | Update a campaign’s fields or its tag and group assignments. |
archive_campaign | Archive a campaign so it’s hidden by default. |
list_members | List a workspace’s members (id, name, email, role). Workspace-admin access only. |
get_analytics | Get a workspace’s performance KPIs for a date range (engagement, followers gained, engagement rate, posts published, active contributors, reactions, comments, earned media value), each with period-over-period deltas. Defaults to the last 30 days; pass month or from/to. Members see their own numbers; admins can narrow to a single user or an employee groupId. Set includeBreakdown for the per-day series, posting heatmap, and weekday distribution. |
list_posts | List posts in a date range with their status, plus engagement totals (reactions, comments, shares, clicks) for posts that are already live. Defaults to your own posts; admins can pass user (one or more members’ name, email, or id) to look up colleagues, or allMembers to pull everyone’s posts in a single call. Filter by month or from/to and status. |
Looking for direct HTTP access instead of an AI agent? See the REST API reference and API Keys.

