Link repositories
Build from commits
Preview pull requests
Keep source access separate
When to use GitHub
Use the GitHub integration when the server source lives in GitHub and FastMCP Gateway should build, deploy, and update a hosted Python MCP or FastMCP server from that source. GitHub works well when:- A repository should become a hosted FastMCP Gateway server.
- Default branch pushes should create new production-ready builds.
- Pull requests should create preview builds before changes merge into the tracked production branch.
- Operators need the build list to show branch, commit, pull request, and repository context.
- Repository permissions should stay in GitHub while FastMCP Gateway manages the deployed MCP endpoint.
Integration contract
Connect GitHub
You can connect GitHub from onboarding or from organization settings.Open the GitHub connection flow
Authorize or choose an existing installation
Choose repository access
Return to FastMCP Gateway
Repository picker
The repository picker shows repositories from every GitHub installation linked to the active FastMCP Gateway organization. Repositories are sorted by recent update time, include public or private visibility, and show the repository default branch. When you select a repository, FastMCP Gateway carries this information into the hosted server setup form:- repository full name
- repository visibility
- GitHub installation ID
- default branch
- suggested server name
Create a hosted server
After selecting a repository, FastMCP Gateway asks for the server configuration that turns the repository into a hosted MCP endpoint.Fetch repository metadata and default branch
Resolve the default branch to a commit
Create the server record
Create a default branch record
Queue the first build
Create the first deployment record
Run the build in the background
What GitHub events do
FastMCP Gateway processes GitHub events only when they match a linked installation and a repository already tracked by a hosted server.Production and preview behavior
Default branch builds and pull request builds use different deployment contexts.Repository access and missing source
Repository access can change outside FastMCP Gateway. The most common symptoms are a missing repository in the picker, a build that cannot read source, or a private repository build that cannot start.The repository is missing from the picker
The repository is missing from the picker
The entrypoint or dependency file cannot be verified
The entrypoint or dependency file cannot be verified
server.py:object_name or
server.ts:object_name.A pull request did not create a preview
A pull request did not create a preview
A build uses an older commit than the branch tip
A build uses an older commit than the branch tip
A connected installation shows no repositories
A connected installation shows no repositories
Repositories from an installation disappeared
Repositories from an installation disappeared
Security boundary
GitHub source access is separate from FastMCP Gateway endpoint access.- GitHub permissions decide which repositories FastMCP Gateway can discover and build.
- GitHub installation administration decides who can link an installation: the account owner for a personal account, or an organization admin for a GitHub organization.
- FastMCP Gateway organization membership decides who can start the integration flow in FastMCP Gateway.
- Server access and capability policies decide who can use the deployed MCP endpoint.
- Build-time repository access is not returned to MCP clients.
- Environment variables and secrets are scoped through FastMCP Gateway deployment settings, not through GitHub repository visibility.