We’re excited to introduce the Semaphore MCP Server, a new way for AI agents and IDE copilots to access rich, structured data about your builds. By exposing pipelines, jobs, and logs through the Model Context Protocol, the server gives assistants the context they need to explain failures, summarize project setups, and recommend fixes without digging through the UI.
Important: Semaphore’s MCP Server is free for all users but disabled by default. To enable it for your organization, email support@semaphore.io and we’ll switch it on.
Why Model Context Protocol matters for CI/CD
MCP standardizes how AI models communicate with external systems. An MCP server acts as a bridge between the assistant and your infrastructure, exposing data and scoped actions through declared tools and resources.
With MCP, agents can fetch the exact information they need, like workflow histories or failing job logs.

Some examples of what you can now do with the MCP Server:
- Summarize build or test failures
- Explain why a pipeline failed and highlight the step that needs attention
- Describe what a given pipeline does so new contributors can ramp up quickly
- Propose or even implement fixes in the codebase with full CI context
Semaphore’s MCP Server
Semaphore’s implementation focuses on observability first. This initial release ships as a read-only interface so teams can trial the experience safely while we collect feedback. Under the hood, the server aggregates the same metadata surfaced in the UI and exposes it through a curated toolset:
organizations_list,projects_list, andprojects_searchfor high-level discoveryworkflows_search,pipelines_list, andpipeline_jobsto inspect activity chronologicallyjobs_describeandjobs_logsto dive into agent details and log outputechoto smoke-test connectivity from your client
Keeping the scope observational lets you grant access broadly without worrying about write operations. As adoption grows, we’ll layer in more capabilities based on your feedback.
Availability and access
Authentication happens via the same API tokens you already use:
- Use a Personal API Token for individual access
- Or create a Service Account and use the associated API token
Then, you only have to point your MCP client to the official Semaphore endpoint: https://mcp.semaphoreci.com/mcp.
Configure your AI agent
The server is compatible with any MCP-aware client. Below are quick-starts for the three we test most often. If you run into issues, see the full MCP guide or reach out to support.
Claude Code
Claude Code is configured via the command line:
- Export your API token:
export SEMAPHORE_API_TOKEN=my-token
- Register the Semaphore MCP endpoint:
claude mcp add semaphore https://mcp.semaphoreci.com/mcp \
--scope user --transport http \
--header "Authorization: Bearer $SEMAPHORE_API_TOKEN"
- Restart Claude Code, so the new server loads.
OpenAI’s Codex
For Codex, the procedure is similar:
- Open
$HOME/.codex/config.tomland add:
[mcp_servers.semaphore]
url = "https://mcp.semaphoreci.com/mcp"
bearer_token_env_var = "SEMAPHORE_API_TOKEN"
startup_timeout_sec = 30
tool_timeout_sec = 300
Note that
bearer_token_env_varpoints to the name of the shell variable that stores your token, not the token itself.
- Export the token in your shell (and optionally in your rc file):
export SEMAPHORE_API_TOKEN=my-token
- Launch Codex normally. It will initialize the MCP server during startup.
VS Code (Codex Extension)
- Install the Codex VS Code extension.
- Press the Gear icon → MCP settings → Open config.toml). Add the MCP configuration:
[mcp_servers.semaphore]
url = "https://mcp.semaphoreci.com/mcp"
bearer_token_env_var = "SEMAPHORE_API_TOKEN"
startup_timeout_sec = 30
tool_timeout_sec = 300
- Export
SEMAPHORE_API_TOKENin the shell session you’ll use to start VS Code:
export SEMAPHORE_API_TOKEN=my-token
code path/to/project
Important: Due to extension limitations, VS Code must be launched from the same shell that has the environment variable with the token. Starting VS Code in any other way causes connection errors.
Example prompts
Use these as conversation starters once the server is connected. Some actions assume your agent already has local repo access.
| Goal | Prompt |
|---|---|
| Discover accessible orgs | “List the Semaphore organizations you can reach.” |
| Cache IDs for faster follow-ups | “Find the current Semaphore org and project IDs and store them in AGENTS.md.” |
| Understand a pipeline | “Describe what the latest pipeline for this repo does on Semaphore.” |
| Troubleshoot failing tests | “Help me figure out why the most recent workflow failed its tests on Semaphore.” |
| Inspect build logs | “Show me the logs for the build job in the latest workflow.” |
| Summarize a failure | “Explain why my last deployment failed and suggest next steps.” |
What’s next
Remember, Semaphore’s MCP Server is free for all customers but disabled by default. To enable it for your organization, email support@semaphore.io and we’ll switch it on for you.
We’re iterating quickly on this integration. Please send feedback, feature requests, or issues to the Semaphore repository or chat with us on the Discord server. We’re listening and eager to help your agents work smarter on Semaphore.
Thank you for reading, and happy building!
Want to discuss this article? Join our Discord.