Authorize OAuth + MCP

Connect an agent through OAuth and MCP

Authorize a compatible MCP client to use your GroundControl instance. Follow the shared setup and the ChatGPT example below.

YOU WILL FINISH WITH

Your agent can list a granted deployment, inspect it and return a health result.

On this page

Choose your MCP client

GroundControl exposes its agent tools through MCP and authorizes clients through OAuth. Choose a client that supports remote HTTP MCP connections, OAuth discovery and browser sign-in. Each client receives its own grant with selected capabilities and deployments.

Connection settingUse this
Server URLYour GroundControl HTTPS origin followed by /mcp
AuthenticationOAuth, using the instance’s discovery metadata
AuthorizationSign in to GroundControl and select the workloads
First checkList deployments, then inspect one and check its health

The walkthrough uses ChatGPT as a tested client. For another compatible client, add the same endpoint in its MCP server settings and complete the GroundControl consent flow. The endpoint, deployment scope and operation records belong to your instance.

Before you connect

  • You have claimed GroundControl and can sign in as its administrator.
  • Your instance has a reachable HTTPS address and passing OAuth discovery.
  • At least one application is enrolled as a deployment.
  • Your client or workspace permits custom MCP connections. Availability and approval requirements depend on the client and workspace policy.

For a self-hosted instance, the connection starts from its MCP URL. OAuth is built into GroundControl; there is no separate OAuth package to install on the VPS. Add your instance as a remote MCP server in the client you use.

1. Copy your MCP endpoint

In GroundControl, open Agents. Under MCP endpoint, choose Copy. The URL ends in /mcp. Use your instance’s domain, not this documentation site or the example operator’s domain.

Enter your instance address. This only formats the URL in your browser; it does not connect or send data.

MCP server URL
https://gc.example.com/mcp
Example only. Replace gc.example.com with your own hostname.
GroundControl Agents workspace with the MCP endpoint and an active ChatGPT grant
Agents workspace, 22 September 2026. This instance has a ChatGPT grant; each connected client appears with its own scope.Enlarge ↗︎

2. Add the connection in ChatGPT

This example uses ChatGPT on the web. Your account or workspace must allow custom MCP connections.

  1. In ChatGPT on the web, open Settings → Security and login and enable Developer mode, if available.
  2. Open Plugins and select the + button to add a connection.
  3. Name it GroundControl and add a description such as “Operate my approved deployments.”
  4. Under Connection, enter the copied HTTPS MCP server URL, including /mcp.
  5. Create the connection and review the discovered tools. Use OAuth when asked to choose authentication.
Connection fieldValue
NameGroundControl
MCP server URLhttps://YOUR-GROUNDCONTROL-HOST/mcp
Authentication, if shownOAuth
Infrastructure credentialsNever paste SSH keys or registry credentials here

ChatGPT navigation was checked against OpenAI’s connection guide on 22 September 2026. Older interfaces may call this Apps or Connectors. If custom connections are unavailable, check account and workspace policy.

4. Make the first read-only call

Open a new session with the GroundControl connection enabled. In ChatGPT, select it from the conversation’s tools menu. Send this first:

First agent request
Use GroundControl to list the deployments available to you. Do not change anything.

Then replace YOUR_DEPLOYMENT_SLUG with a slug returned by that call:

Health-check prompt
Inspect YOUR_DEPLOYMENT_SLUG and check its health through GroundControl. Report the recorded source revision, container states and public HTTP result. Do not redeploy.
Check before continuing

Your agent should call GroundControl and report tool evidence. If it only explains how you could run Docker yourself, check that the plugin is enabled in this conversation. A configured public URL should produce an explicit public check; a skipped check is not proof of HTTP health.

Compare with the recorded RentAWeekend result, then use the first redeploy walkthrough.

5. Reconnect or revoke access

If the client reports an expired or missing refresh token, use its reconnect/sign-in action and complete OAuth again. GroundControl supports rotating refresh tokens when the client requests offline_access. A grant reduces repeated credential handoffs; it does not remove client confirmation rules or the need to reauthenticate when access expires.

To end access, open GroundControl → Agents → Authorized clients → Revoke for the intended client. This revokes current tokens and cancels queued operations that have not started. An operation already executing continues recording its outcome rather than being force-killed.