Connecting
The server speaks HTTP transport at https://0bull.net/mcp and authenticates with
OAuth. Every client below follows the same shape: you give it the URL, it discovers the
OAuth endpoints, and a browser window asks you to authorize with your
0bull.net account. There is no token to copy or paste.
You authorize as yourself, so the tools see exactly the accounts and phones your own account can reach — no more.
Claude Code
Code
Then, inside Claude Code:
Code
Pick 0bull and authenticate. A browser opens for the OAuth flow; once you approve, the
24 tools are available.
Add --scope user to make the server available across all your projects rather than only
the current one (the default scope is local).
Claude Desktop
Edit your claude_desktop_config.json:
- macOS —
~/Library/Application Support/Claude/claude_desktop_config.json - Windows —
%APPDATA%\Claude\claude_desktop_config.json
Code
Restart Claude Desktop. It will prompt you to authenticate on first use.
Cursor
Edit .cursor/mcp.json in your project (or ~/.cursor/mcp.json for every project):
Code
Cursor picks the server up and prompts for OAuth in Settings → MCP.
Codex
Code
That one command is all it takes — Codex detects OAuth support and starts the flow itself:
Code
Open the URL and approve. There is no separate login command to run afterwards.
The server is written to ~/.codex/config.toml:
Code
Run codex mcp list to check it — the Auth column tells you whether you are logged in.
If authorization ever lapses, codex mcp login 0bull re-runs the flow without re-adding
the server.
OpenCode
Add the server to opencode.json in your project root:
Code
type and url are all the server needs — OpenCode auto-detects OAuth and prompts you to
authorize on first use. OpenCode also reads a global config file if you would rather have
the server in every project; see its configuration docs for the location.
Verifying
Ask your client to list the tools. You should see 24, starting with list-accounts-tool.
A quick end-to-end check that touches no phone:
List my posting accounts.
That calls list-accounts-tool, which is a synchronous read — it answers immediately and
returns every platform merged, TikTok, Instagram and YouTube alike. If you get an empty
list rather than an error, you are connected and authorized.
Troubleshooting
The browser never opens / authorization fails. Check that you used the full
https://0bull.net/mcp path and not the bare host — the trailing /mcp is what your
client discovers the OAuth endpoints from. If the browser opens but authorization fails,
sign in at 0bull.net first, then retry.
Tools return "not found" for records you know exist. That is scoping, not a bug — you are authenticated as a user without access to them. See scoping.
Calls start failing in bursts. The rate limit is 60/min.

