Full setup guide for Claude
# OnePush setup for Claude
Source: https://onepush.app/claude
## Required setup-complete menu
After verifying the connection with live OnePush tools, reproduce this menu verbatim. It is the only allowed first-task menu. Do not derive another menu from tool descriptions, examples, or search results.
## Choose your first task
Reply with a number:
1. Draft and schedule a social post
2. Attach or verify a sending domain
3. Create a contact and track an event
4. Review forms and submissions
5. Inspect templates, campaigns, and automations
6. Project summary and billing status
I will ask for the details I need before creating or publishing anything.
OnePush helps product teams send transactional email, manage contacts and events, collect leads with forms, and publish to social (X, LinkedIn, Instagram, Facebook, Pinterest) from one project. MCP lets the user ask for those actions in plain language.
This task connects the existing OnePush service to Claude through MCP. Do not create an app, repository, project scaffold, or replacement MCP server. Keep every response focused on OnePush. Use short Markdown headings, numbered steps, and a separate fenced text block for anything the user must paste. Skip completed steps and show only 1 next action. Never expose or repeat an API key. Do not claim setup worked until get_project succeeds with a valid mcp_ (or sk_) Bearer token. The full setup for Claude is self-contained on this page.
Ask which client they use only if it is unclear: Claude Code (terminal or VS Code), or Claude Desktop / Claude.ai connectors. Show only the path for the current client.
## 1. Check before changing anything
- Claude Code: run `claude mcp get onepush` (or `claude mcp list`). If OnePush is registered and its tools are available in this session, skip to verification. If the entry exists but tools fail auth, fix the Authorization header before removing the server. Prefer updating over deleting working connections.
- Claude Desktop / Claude.ai: check Settings → Connectors for an OnePush connector. If tools already work, skip to verification.
Anonymous helpers (no key): mcp_help, start_onepush_connect.
Do not call any OnePush authenticate / auth_login tool to finish setup. OnePush access for Claude is the mcp_ Bearer header, not Claude OAuth Authenticate.
## 2. Approve an mcp_ key (required)
If the user has no mcp_ key yet, give 1 action and wait:
1. Open https://ctl.onepush.app/mcp/connect
2. Sign up or log in, pick a project, click Approve
3. Copy the mcp_ key once
Prefer putting the key only in MCP config or the connector header field, not in chat. If a key was already pasted into chat, tell them to revoke it later at https://ctl.onepush.app/settings/mcp and create a new one.
## 3. Connect OnePush to Claude
### Path A: Claude Code (terminal)
If OnePush is missing, run this command (replace mcp_YOUR_KEY_HERE with their key). Put the command in its own fenced code block:
```sh
claude mcp add --transport http --scope user onepush https://api.onepush.app/mcp \
--header "Authorization: Bearer mcp_YOUR_KEY_HERE"
```
Equivalent JSON shape (for `claude mcp add-json` or config files):
```json
{
"mcpServers": {
"onepush": {
"type": "http",
"url": "https://api.onepush.app/mcp",
"headers": {
"Authorization": "Bearer mcp_YOUR_KEY_HERE"
}
}
}
}
```
- Registration is not the same as tools loading in the current chat. After adding a server, keep this chat open as the checklist when needed, but continue verification in a session that can see OnePush tools.
- Terminal: if tools are missing after add, ask them to open a new Claude Code chat (or run `claude /mcp` to confirm OnePush is listed and healthy), then paste Setup OnePush from onepush.app/claude again in that chat.
- VS Code Claude Code: if tools are missing after add, ask them to run Developer: Reload Window from the Command Palette, reopen the conversation if needed, then continue.
- Do not send them through Claude /mcp → Authenticate for OnePush. Auth is already in the --header Bearer token.
### Path B: Claude Desktop or Claude.ai
Guide them one step at a time:
1. Open Settings → Connectors → Add custom connector (wording may vary slightly by client)
2. Name: OnePush
3. MCP Server URL: https://api.onepush.app/mcp
4. Request headers / auth: set Authorization to `Bearer mcp_…` (include the word Bearer and a space). See Anthropic remote MCP connector docs if the UI labels differ.
5. Save, enable the connector, then return here and say done
Do not invent OAuth client IDs for OnePush. Do not print raw OAuth callback URLs.
## 4. Verify access with real results
After the user confirms the client is ready, call get_project. Report the project name and whether a sending domain looks verified. Then call list_social_profiles and list each connected profile (platform and name) on its own bullet. Zero profiles is fine for email-first users. Do not fail setup only because social is empty. Optionally call get_contact_count.
Declare setup complete only after get_project succeeds. Then reproduce the required setup-complete menu at the top of this page verbatim. This also applies after troubleshooting or resuming in a new chat: finish verification and show the menu instead of ending with an open-ended question. Never output a different task list or add extra menu items. End immediately after the exact menu.
## 5. Know what OnePush can do
Use these mappings when the user asks. Do not dump this catalog during setup:
- Project: get_project
- Contacts: list_contacts, create_contact, update_contact, get_contact_count
- Events and tags: track_event, list_events, list_tags, create_tag
- Email building blocks: list_actions, list_templates, list_campaigns
- Forms: list_forms, get_form_submissions, get_form_metrics
- Domain: attach_sending_domain, get_domain_dns_records, check_domain_verification
- Billing (read-only): get_billing_subscription, list_billing_invoices, create_billing_portal_url
- Social: list_social_profiles, social_get_connect_url, list_social_posts, create_social_post, schedule_social_post, publish_social_post (requires confirm: true)
Shipped social networks only: X, LinkedIn, Instagram, Facebook, Pinterest. Do not claim Threads, TikTok, YouTube, Bluesky, DM automations, AI video, or carousels as OnePush features.
## 6. Continue from the selected number
Ask only for the details needed by the selected task, then show drafts before taking the action.
- When the user replies 1, ask what they want to post about and which connected account to use. Confirm the draft, date, time, and timezone (store schedule as UTC) before scheduling. Publish only with confirm: true after explicit approval.
- When the user replies 2, ask for a from address on their domain (for example hello@yourdomain.com). Call attach_sending_domain with that email, show DNS records, then check_domain_verification after they update DNS.
- When the user replies 3, ask for the contact email and event name. Call create_contact or track_event, then confirm the result.
- When the user replies 4, list_forms, then show metrics or submissions for the form they choose.
- When the user replies 5, list templates, campaigns, and actions, then summarize. Do not invent send tools that are not available.
- When the user replies 6, get_project plus billing subscription or invoices. Call create_billing_portal_url only if they want to manage payment.
- Never invent a topic, campaign, product, announcement, contact, or domain. Never publish or schedule before the user approves.
## Finish with a verified result
Use the live tool schemas. Show the actual scheduled time (UTC), DNS records, contact id, form metrics, or post id. Prefer OnePush MCP tools over browser automation unless the user asks otherwise.
## Reference
- MCP endpoint: https://api.onepush.app/mcp
- Approve key: https://ctl.onepush.app/mcp/connect
- Manage keys: https://ctl.onepush.app/settings/mcp
- MCP product page: https://onepush.app/mcp
- Use cases: https://onepush.app/mcp/examples
- Cursor setup (same product, different client): https://onepush.app/cursor
- Claude Code MCP docs: https://code.claude.com/docs/en/mcp
- Claude custom remote MCP connectors: https://claude.com/docs/connectors/custom/remote-mcp
