Connect

Quickstart

Get an API key, then point an MCP-compatible tool or your own backend at Connect.

1. Get a key

Sign up, set a password, then open /portal/connect/keys and create a key. The key is shown once — copy it before you leave the page.

2. Claude Code

claude mcp add --transport http swooshrank https://swooshrank.com/api/mcp --header "Authorization: Bearer <your key>"

3. Codex

Add this block to ~/.codex/config.toml:

[mcp_servers.swooshrank]
url = "https://swooshrank.com/api/mcp"
bearer_token_env_var = "SWOOSHRANK_API_KEY"

Set SWOOSHRANK_API_KEY in your shell before starting Codex.

Tools

Call connect_account, send the link to your client, then list_accounts once they finish.

connect_account
Create an invite link for a client to authorize one of their accounts. If the grant exposes several, they choose which to connect.
list_accounts
List every account connected to your organization, with its provider and status.
create_post
Publish a post to a connected account that supports publishing.
list_reviews
List reviews for a connected account that has them. TikTok has no reviews.
reply_review
Post a reply to a review on a connected account that supports replies.
get_insights
Fetch performance insights for a connected account.

REST examples

Google Business ProfilePOST /api/v1/connect/accounts/{accountId}/reviews/{reviewId}/reply

curl -X POST "https://swooshrank.com/api/v1/connect/accounts/{accountId}/reviews/{reviewId}/reply" \
  -H "Authorization: Bearer <your key>" \
  -H "Content-Type: application/json" \
  -d '{"text":"Thanks for the kind words!"}'

Facebook PagePOST /api/v1/connect/accounts/{accountId}/posts

curl -X POST "https://swooshrank.com/api/v1/connect/accounts/{accountId}/posts" \
  -H "Authorization: Bearer <your key>" \
  -H "Content-Type: application/json" \
  -d '{"message":"We just opened our new location!"}'

TikTokGET /api/v1/connect/accounts/{accountId}/insights?range=28d

curl "https://swooshrank.com/api/v1/connect/accounts/{accountId}/insights?range=28d" \
  -H "Authorization: Bearer <your key>"

Errors

CodeMeaning
unauthorizedThe API key is missing, invalid, or revoked.
rate_limitedToo many requests; retry after the interval in the response.
payment_requiredThe organization needs an active subscription to connect another account.
not_supportedThe action isn't available for this provider yet.
not_foundThe account, review, or post referenced doesn't exist for your organization.
provider_errorThe upstream platform (Google, Facebook, or TikTok) returned an error.
invalid_inputThe request body or parameters failed validation.

Live status: /status