Connect Moonto to your tools

Read and write your lists from Claude, ChatGPT, Cursor or your own code. Reading through the MCP server and the REST API is free on every plan, and so are webhooks. Without Premium you get 200 changes to try; after that, writing comes with Premium.

  1. Connect Claude or ChatGPT

    Three steps, nothing to copy but the address:

    1. Copy this address:
      https://api.moonto.app/mcp
    2. Paste it where Claude or ChatGPT adds a connector: a custom connector in Claude, an app in ChatGPT’s developer mode.
    3. Sign in to Moonto with the account you use in the app, and allow. Reading is always on; untick changes if the assistant should only read.

    The connection then shows in the app under Settings, Data, Access tokens, where you can revoke it at any time.

  2. For other tools, make an access token

    In the app, open Settings, then Data, then Access tokens, and tap +. Give the token a name and choose whether it may change your lists; without that switch it can only read. The token is shown once, so copy it before you close the window. You can revoke it at any time.

  3. Use the token over MCP

    Moonto speaks the Model Context Protocol over HTTPS. The address is:

    https://api.moonto.app/mcp

    Send the token as Authorization: Bearer moonto_pat_…. The assistant can list your lists, read and search rows and, with a token that may change lists, add, edit and delete rows.

    Claude Desktop

    After you create the token, tap “Copy Claude Desktop config” in the window that shows it, then paste the result into claude_desktop_config.json (Settings, Developer, Edit config) and restart Claude. It needs Node.js: the configuration starts the mcp-remote helper.

    Cursor

    Tap “Copy Cursor config” and paste the result into ~/.cursor/mcp.json, or into the project’s .cursor/mcp.json.

  4. Or call the REST API

    Lists, rows and search are plain HTTPS and JSON under this base address, with the same bearer token:

    https://api.moonto.app/api/v1
    
    curl -H "Authorization: Bearer moonto_pat_…" \
      https://api.moonto.app/api/v1/lists

    Full description (OpenAPI, JSON)

  5. Get told when something changes

    In Settings, Data, Webhooks, add an https address. Moonto sends a signed request to it whenever a row of your lists is added, changed or deleted. The signature is in the X-Moonto-Signature header; check it with the secret, which is shown once when you create the webhook. Details Moonto fills in by itself in the background (a task's categories, date, duration, place or contact; a shopping item's catalogue link and picture) send no webhook; changes made by you, other members, the assistant or the API do.

Limits

Reading needs no subscription. Without Premium, an account can make 200 changes in total through MCP and the REST API together, to try: each row added, changed or deleted, and each list created, counts as one, for the life of the account. After that a write is refused with integration_writes_require_premium (a 403 on the REST API), the answer says how many changes are left and links to Premium, and a call that would go past what is left changes nothing. Premium writes without that limit. To keep a script from running away, each token is limited to 60 calls a minute, and each account to 2,000 calls and 1,000 written rows a day. Asking Moonto’s assistant to do something in plain words (POST /api/v1/assist) needs Premium or the trial (7 days, or less if you use it a lot).

Send it to Moonto.

Free on iPhone and Android, in 8 languages.