Remote MCP server
Connect an AI assistant to SnapCount with one address and OAuth browser approval. It reads counts and reports and can create counters and live links. It cannot change a count.
Updated
Endpoint and transport
SnapCount runs one remote MCP server for AI assistants. Paste this address into any assistant that can add a remote MCP server with OAuth:
https://api.snapcount.app/mcp- Transport: Streamable HTTP, stateless. Requests are
POSTwith JSON responses.GETandDELETEanswer405. - The assistant acts as the signed-in user who approved it, with the same roles, organizations and per-counter access as in the app.
- There is no public write API. The MCP server cannot change, reset, undo or set a count, delete or archive counters, remove members, change roles, or touch billing.
Step-by-step setup for Claude, ChatGPT, Cursor, VS Code, Codex, Antigravity, Lovable, Replit, Warp, Zed, OpenCode, Hermes and Grok is on the AI assistants page.
Plans
The connection is part of Pro and Enterprise, including the Event Pass and lifetime plans. It is not in the trial or the free plan.
- Any signed-in user can open the consent screen. Approving needs at least one organization on Pro and Enterprise. Otherwise the decision answers
403withPLAN_REQUIREDand the request stays open, so the user can upgrade and approve it. - Every tool refuses an organization that is not on Pro and Enterprise: the result has
isError: true, the codePLAN_REQUIRED, and anupgrade_urltohttps://snapcount.app/pricing.list_organizationsmarks each organization withassistant_access. - Within those plans each tool keeps the rule of the app screen it mirrors: busiest times, by person and timestamped events need Enterprise, and starting a live link needs an owner or admin.
Scopes
| Scope | Consent screen text |
|---|---|
counters:read | See your organizations, counters, live totals, reports and live links |
counters:write | Create counters and start live counting links |
A client that asks for no scope gets both. The consent screen always lists what is granted.
Tools
Six tools. The names are stable. They answer for organizations on Pro and Enterprise, and each keeps the plan and role rule of the screen it mirrors in the app.
| Tool | Scope | Annotations | What it does | Plan and role |
|---|---|---|---|---|
list_organizations | counters:read | Read-only | Your organizations, your role in each, the plan, and how many counters and groups each one has. | Any member. It says which organizations are on Pro or Enterprise, the only ones the other tools answer for. |
list_counters | counters:read | Read-only | Every counter you can see with its live count, goal and lock, grouped by store or worker, with each group's total. | Any member of a Pro or Enterprise organization. |
get_report | counters:read | Read-only | A snapshot, the daily report (high, low, end of day, events, top counter per day), busiest times, counts by person, or each count with its time, for up to 90 days, in your time zone. | Snapshot and daily: Pro or Enterprise. Busiest times, by person and timestamped events: Enterprise. |
list_live_links | counters:read | Read-only | The live counting links that are running, their counters, the link, and how many devices are connected. | Pro or Enterprise. |
create_counters | counters:write | Writes, not destructive, not idempotent | One new group with up to 50 named counters, one per store, door or worker, added up by default. | Needs write access, on Pro or Enterprise. |
start_live_link | counters:write | Writes, not destructive, idempotent | Starts a live link for up to 30 counters, or hands back the one already running: a link and a QR code anyone can count on without an account. | An owner or admin, on Pro or Enterprise. |
Live links have the shape https://snapcount.app/guest/SESSION_ID. Anyone with the link or its QR code can count on it without an account.
Prompts
Assistants that list prompts show these. A prompt gives the assistant the steps; the tools above still apply their own rules.
| Prompt | Optional arguments | What it does |
|---|---|---|
daily_report | organization, date | Each store's or worker's count for the day, next to the same weekday a week earlier, with any unit that has no counts flagged. Ready to send up the chain. |
weekly_review | organization, weeks | Totals per unit per week, the best and worst units, and the trend. |
set_up_counting | what, units | Proposes counters, creates them once you agree, then starts a live link and hands back the link for the team. |
Errors
A tool that cannot do what was asked returns a result with isError: true and a message the assistant can act on: which plan or role is needed, which organization name did not match, or which limit was reached. The assistant reads it and tells the user what to do. An organization that is not on Pro and Enterprise gets PLAN_REQUIRED.
| Status | When |
|---|---|
401 | No valid access token: never approved, expired, or disconnected. The assistant signs in again. |
403 | On the consent decision only: PLAN_REQUIRED, the user has no organization on Pro and Enterprise. |
405 | A GET or DELETE on the MCP address. |
429 | Over 300 tool calls in an hour. Wait for the number of seconds in Retry-After. |
Limits and records
- 300 tool calls an hour per user, across every assistant they connect.
- Reports cover a date range of up to 90 days, in the user's time zone.
create_countersmakes one group with up to 50 counters.start_live_linktakes up to 30 counters.- Every tool call is recorded for 90 days: the tool, whether it worked, the client, the organization, and how long it took.
Disconnect an assistant
Signed-in users see each connected assistant and its recent activity in Settings, Developers, AI assistants, and can disconnect any one. The next call from that assistant fails with 401. Clients can also revoke their own tokens at https://api.snapcount.app/oauth/revoke.
Test with MCP Inspector
Try the server before wiring it into an assistant with the MCP Inspector:
npx @modelcontextprotocol/inspector- Set the transport to Streamable HTTP and the URL to
https://api.snapcount.app/mcp. - Connect. The Inspector runs the OAuth flow, and your browser opens the SnapCount consent screen.
- List the tools and prompts, then call
list_organizationsto see what your account can reach.
Was this page helpful?
Connect SnapCount to your stack
Create an API key or a webhook endpoint in Settings. The public API and webhooks come with Pro and Enterprise.