GitHub
Before you begin, obtain:
- Administrative access to the GitHub Enterprise Cloud organization that will own the OAuth app.
- Standard GitHub.com hosting for the target organization. This Setup Guide does not cover GitHub Enterprise Cloud with data residency or GitHub Enterprise Server.
- The organization-approved public URL for this connection from the application or cloud security owner.
- If the target organization restricts OAuth apps, access to an organization owner who can grant access — see Connect your credentials.
- A valid organization SSO session if the target organization protects resources with SSO enforcement.
Sign in at https://github.com.
Open organization developer settings
- Click your profile picture in the upper-right corner.
- Click Your organizations.
- To the right of the organization that should own the app, click Settings.
- In the left sidebar, click Developer settings.
- Click OAuth apps.
Register the OAuth app
GitHub makes OAuth app registration details public. Do not put internal URLs or sensitive details in the registration fields.
If the page shows New OAuth App, click it. If the page instead shows Register a new application, click it.
- In Application name, enter a recognizable public name, such as
Speakeasy AI Control Plane – GitHub MCP. - In Homepage URL, enter the full organization-approved public URL.
- Optionally, enter a public-safe Application description.
- In Authorization callback URL, enter
https://app.getgram.ai/mcp/remote_login_callback. - Leave Enable Device Flow off.
- Click Register application. This opens the app’s settings page.
If the target organization restricts OAuth apps, complete the organization approval flow after attaching credentials in Connect your credentials.
Generate the OAuth credentials
- On the app’s settings page, copy the value next to Client ID into an approved password manager.
- Under Client secrets, click Generate a new client secret.
- Copy the generated client secret into the approved password manager. Do not put it in source control or this Guide.
If no usable secret is available before the first connection, return to this page and click Generate a new client secret.
Add the server in Speakeasy
In the Speakeasy AI Control Plane sidebar, under Connect, select Sources, then click Add Source.
- If GitHub is in the catalog: choose 3rd-party server. On the MCP Catalog page, find GitHub (the search box reads Search MCP servers…), open its entry with View, and click Add. In the Add to Project dialog, click Add to Project.
- If it is not: choose Custom remote server. On the Add a custom remote MCP server page, paste
https://api.githubcopilot.com/mcp/into Remote MCP server URL and click Add server.
Either path creates the hosted MCP server and opens its Overview page.
Connect your credentials
From the server’s Overview, open Settings.
If Use Discovered is offered under Authentication, click it. Otherwise, click Configure Manually.
- In Attach Remote Identity Provider, set Client Type to Manual.
- Confirm that Redirect URI matches the
https://app.getgram.ai/mcp/remote_login_callbackvalue entered in Register the OAuth app. - Paste the Client ID saved in Generate the OAuth credentials into Client ID.
- Paste the saved client secret into Client Secret (optional) — although the field is labeled optional, this OAuth connection requires it.
- Click Attach Identity Provider.
If the target organization restricts OAuth apps, have a user authorize the connection, then complete the following:
- Have the user click their profile picture.
- Have the user click Settings.
- Under Integrations, have the user click Applications.
- Have the user click Authorized OAuth Apps.
- Have the user open this OAuth app.
- Next to the target organization, have the user click Request access.
- Have the user click Request approval from owners.
Then have an organization owner approve the pending request:
- Click the profile picture.
- Click Organizations.
- Select the target organization.
- Under the organization name, click Settings.
- Under Third-party Access, click OAuth app policy.
- Next to the app, click Review.
- Click Grant access.
If the user’s first authorization attempt was blocked before approval, have the user retry it after access is granted.
This guide covers setup only. For anything beyond it — billing, tool behavior, limits — see GitHub’s MCP documentation at https://github.com/github/github-mcp-server/blob/main/docs/remote-server.md.