Updated
Fastest: Add to Claude
Claude on the web, Desktop or mobile: opens Claude's Add custom connector dialog with uprank's MCP server filled in. Click Add, then approve uprank's consent screen as a workspace owner. No token to copy.
1. Get a token
A workspace owner issues a credential at /mcp. Start with read-only scopes: article:read, brand:read, campaign:read. Export it in your shell profile:
export UPRANK_MCP_TOKEN="<your token>"
2. Register the server
One command
Endpoint https://uprank.devino.ca/api/mcp, streamable HTTP with a bearer header read from UPRANK_MCP_TOKEN.
claude mcp add --transport http --scope user uprank https://uprank.devino.ca/api/mcp --header 'Authorization: Bearer ${UPRANK_MCP_TOKEN}'Check that Claude Code loaded the server
Run claude mcp list: uprank shows ✔ Connected once Claude Code has reached the server. claude mcp get uprank shows that one entry, and /mcp inside a session lists it with its tool count.
claude mcp list claude mcp get uprank
3. Verify
article_list with { "pageSize": 1 }. A JSON result with items and nextCursor means the connection and scopes are good. A 401 means the token is missing, revoked, expired, or a dev: credential used against production.4. Next steps
Ask Claude Code in plain language; it picks the tool. These work with the read-only token.
List my five most recent uprank articles with their status.
article_list
Summarize my site's uprank brand profile: voice, audience and proof points.
brand_get
Which of my uprank articles have an expired claim or no current quality score?
refresh_list
Ready for drafts? Issue a second token that adds research:run, article:write, quality:run and ask for the create_quality_article prompt with a site id and either a campaign id and a topic to research or an existing topic opportunity id. It researches, drafts and scores an article against the quality gates and stops before publishing.
Troubleshooting Claude Code
- Why does claude mcp list warn that UPRANK_MCP_TOKEN is missing?
- Claude Code expands ${UPRANK_MCP_TOKEN} from its own environment when it loads the server. If the variable is not set there, it warns and sends the reference unexpanded, which uprank rejects with a 401. Export UPRANK_MCP_TOKEN in your shell profile, open a new terminal, and start claude from it.
- Why does uprank work in one project but not in another?
- Without --scope, claude mcp add saves the server in local scope, which loads only in the project where you ran it. The command in this guide uses --scope user, which loads it in all your projects. Run it again, then remove the local copy with claude mcp remove uprank --scope local.
- What does ✘ Failed to connect mean for uprank in Claude Code?
- Run claude mcp get uprank: recent versions show the HTTP status on its Issue: line. A 401 means the token is missing, revoked, expired, or a dev: credential used against production; issue a fresh one at https://uprank.devino.ca/mcp and export it again.
No workspace yet?
Tokens belong to a workspace. Create one, then come back to step 1.