Skip to content
Docs section: Connect your agent

Connect your agent

Any agent that supports remote MCP servers with OAuth sign-in can connect. You set it up once per agent installation.

Before you start

  • A StrongLog account. Access is by invitation.
  • An agent or MCP client that supports Streamable HTTP servers and OAuth with PKCE as a public client.

Connection details

Server URLhttps://<your-stronglog-host>/api/agent/v1/mcp
TransportStreamable HTTP
Sign-inOAuth with PKCE (S256), public client. Your agent opens a browser for you to sign in.
Client IDIssued for your agent installation during setup (step 2 below).

Choose permissions

Ask only for what you need. Permissions are checked on every call.

ScopeAllows
training.readRead programmes, sessions, progression and history. Every tool needs this.
training.plan.writeSave programmes, workouts and exercises, and reschedule, swap or skip planned sessions.
training.log.writeRecord, correct or remove sessions, and answer follow-up questions about them.
garmin_context.readRead stored Garmin recovery context, if you use Garmin.

Also request openid, plus offline_access if your agent should stay signed in between conversations. The permissions you tick in StrongLog and the scopes your agent requests must both include an action for it to be allowed.

Steps

  1. Create a connection in StrongLog. Open Settings, then Agent connections. Name it after the agent and device, for example “Laptop agent”, and tick the permissions it should have.
  2. Ask for a client ID. Linking an agent to your connection is currently a one-time step done by the operator. Tell them the connection name and which agent you use, and you will get a client ID for that installation.
  3. Add StrongLog to your agent. Add a remote MCP server with the URL and client ID, mark it as a public OAuth client, and list the scopes you chose.
  4. Sign in. The first time your agent calls StrongLog it opens a browser. Sign in with your normal StrongLog account.
  5. Check it works. Ask: “What does my training look like right now?” The agent should call stronglog_training_context and answer from your data.

Example configuration

Every agent has its own config format, but most look close to this. This example is for the GitHub Copilot CLI, in ~/.copilot/mcp-config.json.

{
  "mcpServers": {
    "stronglog": {
      "type": "http",
      "url": "https://<your-stronglog-host>/api/agent/v1/mcp",
      "oauthClientId": "<client-id-you-were-given>",
      "oauthPublicClient": true,
      "oauthScopes": [
        "openid",
        "offline_access",
        "training.read",
        "training.plan.write"
      ]
    }
  }
}

Never put passwords, tokens or secrets in an agent config. The client ID is not a secret; your browser sign-in does the rest.

Revoking access

Revoke the connection in Settings, then Agent connections. It stops working straight away, including tokens the agent has already renewed. Recent agent activity is listed on the same screen.