Connect your agent
Connect UnifAPI to Claude, ChatGPT, Cursor, Codex, Claude Code, OpenClaw, Hermes, and other MCP clients. Paste one prompt or add a web connector — read-only, OAuth, no API key. Optional skills bundle and advanced manual MCP-server and API-key bearer setup are also covered.
Connect the public-data MCP server to your agent — read-only, OAuth, no API key. The open-source agents and skills live at github.com/unifapi-agent/agents.
For most clients you do not need to touch a config file or paste a token. Add the server (a pasted prompt or a web connector), then run an agent or skill and sign in with OAuth when the agent first needs live data.
OAuth is the recommended path. UnifAPI is read-only and public-data scoped: OAuth authorizes your UnifAPI workspace and credits, not a user's private source accounts. No API key is required to connect.
Connect your agent
Choose the path for your client. Each one wires the hosted MCP server (https://mcp.unifapi.com) for live data; add the agent skills with npx skills add unifapi-agent/agents.
Paste one prompt
Claude Code, Codex, Cursor, OpenClaw, Goose, Hermes — any agent that manages its own MCP servers. Drop this in and it adds the server and runs the OAuth sign-in:
Install the UnifAPI MCP server for me, then confirm it connected. It's a remote
(streamable HTTP) MCP server at https://mcp.unifapi.com. UnifAPI uses OAuth — open
the browser sign-in when prompted. It's read-only public data, no API key to paste.Web connector (Claude, ChatGPT, Perplexity, Grok)
Add a custom connector pointed at https://mcp.unifapi.com and authorize over OAuth. ChatGPT needs Developer Mode (Plus, Pro, Team, Enterprise):
Settings -> Connectors -> Advanced -> enable Developer Mode
Connectors -> Create
MCP server URL: https://mcp.unifapi.com
Authentication: OAuthCodex
Codex wires MCP and skills separately. Add the MCP server in ~/.codex/config.toml:
[mcp_servers.unifapi]
url = "https://mcp.unifapi.com"Then log in and add the skills:
codex mcp login unifapi
npx skills add unifapi-agent/agentsClaude-compatible plugin hosts
Claude Code, Claude Desktop, and OpenClaw can install the skills and the MCP server together in one shot:
/plugin marketplace add unifapi-agent/agents
/plugin install unifapi@unifapiRun an agent or skill afterward and complete the OAuth sign-in when prompted.
Any other MCP client
Add the skills, then point the client at the hosted MCP server for live data:
npx skills add unifapi-agent/agentsMCP server URL: https://mcp.unifapi.comRun it
After installing, start a new chat or thread and ask for a task result. The agent skills discover and call public-data operations through MCP as needed:
Analyze these Twitter/X KOLs for an AI developer-tool campaign: @vercel, @shadcn, @rauchg.
Use UnifAPI public data and return price ranges, evidence, confidence, and follow-up questions.OAuth opens only when the agent first needs to call UnifAPI tools or spend workspace credits, so you can browse and start a task before signing in. See Skills for the workflow model.
What your agent can do
Connecting gives an agent access to the live public-data operations behind UnifAPI. It is useful for work such as:
- Twitter/X KOL analysis and influencer shortlists
- creator discovery across TikTok, YouTube, Instagram, Reddit, and other supported platforms
- competitor monitoring from public posts, profiles, comments, and trends
- market research from public social signals
- lead and company enrichment from public LinkedIn-style data
The agent should usually return a brief, table, shortlist, pricing range, or follow-up plan — not raw API dumps.
Tools exposed over MCP
UnifAPI exposes three MCP tools. It does not register one separate MCP tool for every API endpoint.
| Tool | Use it for |
|---|---|
list_operations | Search live public-data operations by platform/keyword. |
get_operation | Inspect parameters, schemas, and call examples. |
call_api | Call a concrete operation and return data plus billing info. |
Typical agent flow:
Discover operations. Use list_operations when the agent does not know the exact API path.
Inspect before calling. Use get_operation to read parameters, request body shape, and
examples.
Call public data. Use call_api with a concrete path such as /x/tweets/search/recent or
/tiktok/videos/{id} after placeholders are filled.
Advanced: MCP server URL & API-key bearer
The paths above cover most clients. Use this section if you wire MCP by hand, build on the HTTP MCP transport, or productize the connection for a client that needs explicit config.
UnifAPI exposes its public-data layer through a hosted MCP server:
https://mcp.unifapi.comManual MCP setup
If your client takes a raw connector URL instead of the plugin, add the hosted server directly.
Claude / Claude Desktop custom connector:
Customize -> Connectors -> + -> Add custom connector
Name: UnifAPI
URL: https://mcp.unifapi.com
Connect -> complete OAuthFor Team and Enterprise plans, an Owner adds the connector from Organization settings -> Connectors
first; members then connect it from Customize -> Connectors. For older local-only Claude Desktop
setups, mcp-remote can bridge the hosted server through claude_desktop_config.json:
{
"mcpServers": {
"unifapi": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://mcp.unifapi.com"]
}
}
}Claude Code CLI:
claude mcp add \
--transport http \
unifapi \
https://mcp.unifapi.comCodex CLI:
codex mcp add unifapi \
--url https://mcp.unifapi.comOpenClaw remote Streamable HTTP server:
openclaw mcp add unifapi \
--url https://mcp.unifapi.com \
--transport streamable-http \
--auth oauth
openclaw mcp login unifapi
openclaw mcp doctor unifapi --probeHermes ~/.hermes/config.yaml:
mcp_servers:
unifapi:
url: "https://mcp.unifapi.com"
auth: oauthhermes mcp login unifapiCursor .cursor/mcp.json:
{
"mcpServers": {
"unifapi": {
"url": "https://mcp.unifapi.com"
}
}
}VS Code .vscode/mcp.json:
{
"servers": {
"unifapi": {
"type": "http",
"url": "https://mcp.unifapi.com"
}
}
}Other MCP clients — use Streamable HTTP with the canonical server URL:
{
"mcpServers": {
"unifapi": {
"url": "https://mcp.unifapi.com"
}
}
}OAuth details
UnifAPI's MCP server is an OAuth protected resource.
| Field | Value |
|---|---|
| MCP server URL | https://mcp.unifapi.com |
| Protected resource metadata | https://mcp.unifapi.com/.well-known/oauth-protected-resource |
| Authorization server | https://api.unifapi.com/api/auth |
| Required MCP scope | unifapi:mcp |
| Transport | Streamable HTTP |
The protected resource metadata tells a compatible client where to authorize and which scope is needed. The OAuth token includes a workspace claim, so tool calls spend the same workspace credits as direct HTTP API calls. OAuth authorizes UnifAPI; it does not grant access to a user's private source accounts.
Do not add custom scope fields to client config unless your MCP client explicitly supports them. A compatible client should discover the protected resource metadata and request the required scope.
API-key bearer fallback
Use this only when a client cannot complete OAuth or explicitly asks for a bearer token/header. The OAuth paths above do not need an API key.
- Sign in to the UnifAPI dashboard.
- Create an API key.
- Configure your MCP client to send it as an authorization header:
Authorization: Bearer YOUR_UNIFAPI_KEYCursor-style JSON example:
{
"mcpServers": {
"unifapi": {
"url": "https://mcp.unifapi.com",
"headers": {
"Authorization": "Bearer YOUR_UNIFAPI_KEY"
}
}
}
}UnifAPI also accepts X-API-Key and X-UnifAPI-Key headers for clients that cannot set Authorization, but Authorization: Bearer ... is preferred.
Billing and credits
MCP calls use the same billing model as HTTP calls.
- Connecting the MCP server (and adding the skills) is free.
call_apispends workspace credits when it calls a public-data operation.- Billing metadata is returned in the tool result when the operation response includes it.
- If a workspace has no credits left, calls fail with
insufficient_credits.
See Rate limits for request limits and Errors for the public error vocabulary.
Troubleshooting
The client asks for an API key
Use the API-key bearer fallback above. This usually means the client does not support OAuth protected-resource discovery yet.
OAuth succeeds but tool calls fail
Check whether the OAuth flow requested the MCP resource and scope:
- Resource/audience:
https://mcp.unifapi.com/ - Scope:
unifapi:mcp
If a client does not send the resource/audience during token exchange, it may receive a token that cannot be verified by the MCP protected resource.
401 unauthorized
The MCP request is missing a valid token, the OAuth token is invalid for this resource, or the API key fallback token was revoked or mistyped.
insufficient_credits
The workspace connected to the OAuth token or API key does not have enough credits. Top up credits in the dashboard and retry.
Tool list appears stale
Restart or reload the MCP client. Some clients cache server sessions and tool lists.