https://mcp.rewards.so
Connecting Claude
Claude.ai + Claude Code — simplest
Go to claude.ai → Customize → Connectors and click Add connector. Fill in:
Save. An OAuth popup will ask you to authorize your Rewards account. Once approved, the connector is available in all Claude.ai conversations.
Claude Code bonus: if you’re signed into Claude Code with the same account, connectors you’ve added on claude.ai automatically appear in Claude Code — no extra setup needed.
Claude Code (CLI, alternative)
If you prefer to add it directly from the terminal:Claude Desktop
Claude Desktop uses a separate config file — it does not sync with your claude.ai account. Edit~/Library/Application Support/Claude/claude_desktop_config.json on macOS, or %APPDATA%\Claude\claude_desktop_config.json on Windows:
All clients support OAuth natively via RFC 7591 Dynamic Client Registration — no pre-configured credentials needed.
Connecting other clients (Cursor, etc.)
Clients that don’t support OAuth can authenticate with an API key. Generate one in Account → Integration, then pass it as a Bearer token:read permission enable read-only tools; keys with all permission enable read and write tools.
If your key has access to multiple point systems, add:
Available tools
Every tool takes an optionalpointSystemId, required only if your key covers more than one point system.
Read tools
Write tools
Write tools require anall API key or OAuth with write scope.
All tools accept ENS names (
.eth) in addition to 0x addresses.
What the MCP will never do
Publishing a campaign on-chain, cancelling one, and upgrading the contract all need a wallet signature, so they only exist in the dashboard. The MCP stops at the draft: an agent can prepare a campaign down to the last wallet, but you are the one who signs it.update_reward_draft and delete_reward_draft refuse anything that is no longer a draft or already has an on-chain id.
Example prompts
Audit trail
Every write is recorded in the activity log with the API key or OAuth client ID. All MCP actions are fully auditable from the dashboard, or throughget_activity_log.