Atlas connects to GitHub Actions through the official GitHub MCP server. There is no standalone GitHub Actions MCP server: the Actions tools live inside the official GitHub MCP server and are off by default, because the defaults are repos, issues, and pull_requests only. Set GITHUB_TOOLSETS=actions when you add the server and Atlas gains get_workflow_run_logs, which hands it the real failing step instead of a guess. If you would rather run no server at all, the gh CLI is a complete fallback.
What the Atlas and GitHub Actions integration actually is
Atlas works with GitHub Actions through the official GitHub MCP server, which ships Actions tools that are off by default. Enabling the actions toolset in 2026 gives Atlas real workflow-run logs through get_workflow_run_logs, so it reads the failing step instead of guessing at it.
The value of the pairing is grounding. A terminal agent that cannot see your CI output will hypothesize about why a job went red, and its hypothesis costs you a push to test. With the actions toolset enabled, Atlas pulls get_workflow_run_logs, finds the step that actually failed, and edits the workflow YAML or the source file that broke it. GitHub Actions stays exactly what it was: the runner. Atlas is the client that reads the runner's output and turns it into a patch you can review in the terminal before it lands.
Why the GitHub Actions tools are off by default
There is no standalone GitHub Actions MCP server in 2026. The Actions tools live inside the official GitHub MCP server, whose defaults are repos, issues, and pull_requests only, so the actions toolset stays dark until you set GITHUB_TOOLSETS=actions when Atlas adds the server.
GitHub ships the server with a conservative default toolset, so a fresh install gives an agent repository, issue, and pull request access and nothing else. That is a sensible baseline, but it means an agent asked to debug a red build has no build data at all. GITHUB_TOOLSETS=actions is the single switch that changes this. Pass it as an environment variable at the moment you register the server with Atlas, not afterwards, and Atlas will see the workflow-run tools on its first tool listing rather than after a restart and a confused round trip.
Adding the GitHub MCP server locally with Docker
Run the GitHub MCP server locally in Docker with 1 Atlas command: atlas mcp add github-actions --env GITHUB_PERSONAL_ACCESS_TOKEN=$GITHUB_PERSONAL_ACCESS_TOKEN --env GITHUB_TOOLSETS=actions -- docker run -i --rm -e GITHUB_PERSONAL_ACCESS_TOKEN -e GITHUB_TOOLSETS ghcr.io/github/github-mcp-server. Both environment variables matter, because the token authenticates and the toolset flag turns the workflow-run tools on.
The two --env flags on the Atlas side are forwarded into the container by the matching -e flags on the docker run side, which is why both appear. GITHUB_PERSONAL_ACCESS_TOKEN authenticates against the repositories you want Atlas to inspect. GITHUB_TOOLSETS=actions widens the tool surface beyond the repos, issues, and pull_requests default. The image is ghcr.io/github/github-mcp-server, pulled from GitHub's own container registry. The -i flag keeps stdin open, which the stdio transport needs, and --rm removes the container when the session ends, so nothing accumulates on the host.
Using the hosted GitHub MCP server instead
Atlas can use GitHub's hosted MCP server instead of Docker. Run atlas mcp add github-actions --url https://api.githubcopilot.com/mcp/ and then atlas mcp auth github-actions to authenticate. Nothing runs on your laptop, which suits a 2026 container or sandbox where Docker inside Docker is unavailable.
The hosted route trades local control for zero infrastructure. There is no image to pull, no daemon to keep alive, and no personal access token to rotate on disk, because atlas mcp auth github-actions walks the authentication flow for you. Pick the hosted server when Atlas itself runs inside a container, when your laptop has no Docker daemon, or when you simply do not want to maintain an image. Pick the local Docker server when your organization requires that traffic to GitHub originate from your own machine with your own token.
The zero-server fallback: driving GitHub Actions with the gh CLI
The zero-server fallback for Atlas and GitHub Actions is the gh CLI, where 2 commands cover most debugging: gh run list --json databaseId,status,conclusion finds the red run, and gh run view RUN_ID --log-failed prints only the failing step's output for Atlas to read directly.
Atlas runs shell commands, so the gh CLI is already an integration even with no MCP server registered. gh run list --json databaseId,status,conclusion gives Atlas a machine-readable list of runs with their identifiers and conclusions, which is enough to pick the one that broke. gh run view RUN_ID --log-failed then narrows the output to the failing step, which keeps the context window on the error rather than on thousands of lines of green output. Use this path when you cannot install a server, or as a sanity check while you configure one.
The daily loop: taking a GitHub Actions job from red to green
The daily loop with Atlas and GitHub Actions has three moves in 2026: ask Atlas to read the red job, let it patch the workflow YAML, then re-trigger the run with gh workflow run. The actions toolset supplies get_workflow_run_logs so the patch targets the real failure.
Start by naming the run rather than describing the symptom. Ask Atlas to read the red job and report the failing step, and it will call get_workflow_run_logs and quote the error back to you. Then have Atlas patch the workflow YAML, or the source file the step exercised, and read the diff in the terminal before you accept it. Finally, re-trigger with gh workflow run and watch the next run. Because the loop closes inside one terminal session, Atlas keeps the prior failure in context and does not relitigate a fix it already tried.
Setup
- 01Understand the default first: the Actions tools ship inside the official GitHub MCP server and are off by default, because the defaults are repos, issues, and pull_requests only.
- 02Enable them on a local server with atlas mcp add github-actions --env GITHUB_PERSONAL_ACCESS_TOKEN=$GITHUB_PERSONAL_ACCESS_TOKEN --env GITHUB_TOOLSETS=actions -- docker run -i --rm -e GITHUB_PERSONAL_ACCESS_TOKEN -e GITHUB_TOOLSETS ghcr.io/github/github-mcp-server
- 03Or use the hosted server with atlas mcp add github-actions --url https://api.githubcopilot.com/mcp/ and authenticate with atlas mcp auth github-actions
- 04Confirm the actions toolset is live: it exposes get_workflow_run_logs, so Atlas reads the real failing step instead of guessing at it.
- 05Keep the zero-server fallback ready: gh run list --json databaseId,status,conclusion and gh run view RUN_ID --log-failed work with no MCP server at all.
- 06Run the loop: ask Atlas to read the red job, patch the workflow YAML, and re-trigger it with gh workflow run
Frequently asked questions
- is there a GitHub Actions MCP server
- No. There is no standalone GitHub Actions MCP server. The Actions tools live inside the official GitHub MCP server and are off by default, so you enable the actions toolset to give Atlas real workflow-run logs.
- how do I connect Atlas to GitHub Actions
- Run atlas mcp add github-actions --env GITHUB_PERSONAL_ACCESS_TOKEN=$GITHUB_PERSONAL_ACCESS_TOKEN --env GITHUB_TOOLSETS=actions -- docker run -i --rm -e GITHUB_PERSONAL_ACCESS_TOKEN -e GITHUB_TOOLSETS ghcr.io/github/github-mcp-server, or use the hosted server at https://api.githubcopilot.com/mcp/ and authenticate with atlas mcp auth github-actions.
- why can't the GitHub MCP server see my workflow runs
- Because the server's default toolsets are repos, issues, and pull_requests only. Set GITHUB_TOOLSETS=actions when you add the server, and Atlas gains the actions toolset with get_workflow_run_logs.
- how does Atlas read a failing GitHub Actions job
- The actions toolset exposes get_workflow_run_logs, so Atlas reads the real failing step instead of guessing at it. Ask it to read the red job and it will quote the error back before proposing a patch.
- can I use Atlas with GitHub Actions without installing an MCP server
- Yes. The zero-server fallback is the gh CLI. Atlas can run gh run list --json databaseId,status,conclusion to find the red run and gh run view RUN_ID --log-failed to read only the failing step.
- how do I re-run a GitHub Actions workflow after Atlas fixes it
- Ask Atlas to read the red job, patch the workflow YAML, and re-trigger it with gh workflow run. The change and the re-run both happen inside the same terminal session.
- should I use the hosted or local GitHub MCP server with Atlas
- Use the hosted server at https://api.githubcopilot.com/mcp/ with atlas mcp auth github-actions when you do not want Docker on the box. Use the local ghcr.io/github/github-mcp-server image when traffic must originate from your machine with your own token.
Try Atlas in your terminal
The terminal-native AI coding agent. Free core, single binary.
Install AtlasRelated guides
Atlas vs Graphite: Terminal AI Coding Agents in 2026
Comparing Atlas and Graphite in 2026: Atlas offers a terminal-native AI coding agent with local privacy, while Graphite focuses on stacked PR workflows and GitHub integration.
Atlas with GPT-5.6 Terra: The Mid Tier GPT-5.6 Pick for 2026
GPT-5.6 Terra drives Atlas on a 1,050,000 token context at $2.50 per Mtok input, $15 per Mtok output. Setup, cost math, and when Sol or Luna is the better pick.
Atlas with Devstral Medium (2507): Agent-Trained Frontier Coding in 2026
Devstral Medium (2507) gives Atlas agent-first training at $0.40 / 1M input tokens and $2.00 / 1M output tokens, with 128,000 tokens in and out. Setup and tradeoffs.
Atlas with Poolside Laguna XS 2.1 in 2026
Poolside Laguna XS 2.1 in Atlas, 2026: the fast tier of Poolside's coding-native line at $0.06/$0.12 per Mtok on OpenRouter, holding 262,144 tokens of context.
Atlas with Grok 4.20 (Non-Reasoning) in 2026: Fast, Predictable Edit Passes
Grok 4.20 (Non-Reasoning) bills no thinking tokens, so cost per turn is fully predictable at $1.25 / $2.5 per Mtok, with the same 1,000,000 token context as the reasoning variant.
Atlas for R: A Terminal-Native AI Coding Agent for tidyverse, roxygen2, and testthat in 2026
Atlas is a terminal-native AI coding agent for R in 2026. It reads roxygen2 docblocks and renv.lock, rewrites loops as dplyr or purrr pipelines, and runs devtools::test().
Atlas with Code Llama 34B (Ollama): The Practical Top of the Line in 2026
Code Llama 34B (Ollama) is 19GB, roughly 21GB to serve, with a 16K context and Free (self-hosted) pricing. Atlas setup, why 34B is the last sane size, for 2026.
Atlas with OpenAI o3-pro: The $20 / $80 Reasoning Escape Hatch (2026)
OpenAI o3-pro in Atlas costs $20 per Mtok input and $80 per Mtok output on a 200K context. A one shot escape hatch for hard problems, not an interactive default.