Remote MCP

Connect MoveMate to any MCP client

Updated November 7, 2026

Most MCP clients need only the server URL. Paste it, and the client discovers the sign-in on its own through OAuth. The rest of this page is for setup screens that ask for more, and for people building their own client.

Before you start

  • A client that supports remote MCP over Streamable HTTP. MoveMate doesn't offer the older HTTP+SSE transport.
  • OAuth sign-in in the client. MoveMate has no API keys or device-code flow, so every client signs in through a browser once and then renews access with a refresh token.
  • A MoveMate account. No account yet? One is created when you sign in for the first time.
  1. 1

    Add the server URL

    Add a remote MCP server named MoveMate with this URL. If the client asks, pick Streamable HTTP and OAuth.

    MoveMate MCP server URL

  2. 2

    Fill in OAuth by hand, only if asked

    Clients that don't read the discovery documents can use these values. Discovery lives at /.well-known/oauth-authorization-server and /.well-known/oauth-protected-resource on api.movemate.app.

    OAuth settings
    Server URL         https://api.movemate.app/mcp
    Transport          Streamable HTTP
    Authorization URL  https://api.movemate.app/oauth/authorize
    Token URL          https://api.movemate.app/oauth/token
    Registration URL   https://api.movemate.app/oauth/register
    Revocation URL     https://api.movemate.app/oauth/revoke
    PKCE               required, S256
    Client auth        none (public client)
    Scopes             profile:read stats:read library:read workouts:write
  3. 3

    Register a client, only if asked for a client ID

    Registration is open (RFC 7591), so you don't need anything from us. Use the exact redirect URL your setup screen shows instead of the example. Include refresh_token in grant_types, or the client can't renew its one-hour access token. Native apps with a custom URL scheme register with "application_type": "native".

    Terminal
    curl -sX POST https://api.movemate.app/oauth/register \
      -H "Content-Type: application/json" \
      -d '{"client_name":"My client","redirect_uris":["https://example.com/callback"],"grant_types":["authorization_code","refresh_token"],"token_endpoint_auth_method":"none"}'
  4. 4

    Sign in and ask

    The client opens MoveMate's sign-in page. Sign in and approve. A connected client can read your profile, stats, exercise progress and personal records, search the exercise library, save and schedule workouts, and log finished ones. Tool details are in openapi.json and llms.txt.

Manage access

  • Removing the server from the client stops it from calling MoveMate.
  • A client can end its connection itself by revoking its token at the revocation URL (RFC 7009).
  • The MoveMate app lists Claude and ChatGPT connections under AI settings. Other clients don't show up there yet, so to revoke one on our side, email support and name the client.

If setup doesn't work

  • 406 Not Acceptable: send Accept: application/json, text/event-stream on every POST to https://api.movemate.app/mcp.
  • invalid_client after a long break: register again. Clients that never completed a sign-in are removed after 30 days.
  • invalid_target: leave resource out, or set it to https://api.movemate.app/mcp exactly.
  • unauthorized_client on refresh: the client was registered without refresh_token in grant_types. Register a new one.

Still stuck? Send the exact error text (never a code or token) to support@movemate.app

More setup guides

← All ways to connect MoveMate

Privacy PolicyTerms of UseMoveMate plugin for ChatGPTOpenAPIllms.txt

Product names and logos belong to their owners. MoveMate is an independent app and isn't affiliated with or endorsed by OpenAI, Anthropic, Google, xAI, Meta or the other companies mentioned here.