MCP server for Blacksmith CI - query runs, analyze test failures, detect flaky tests.
Copy the AI prompt to install this server into Claude Code, Cursor, or another agent β or use 1-click editor setup below.
π‘ Paste the JSON block into your client's configuration file under mcpServers, then restart the application.
An MCP server that connects Claude to your Blacksmith CI data. Query workflow runs, analyze test failures, detect flaky tests, and monitor usageβall through natural conversation.
Debugging CI failures usually means clicking through dashboards, copying run IDs, and piecing together information across multiple pages. With this MCP, you can just ask:
Claude handles the API calls and gives you actionable insights.
Zero-config if you're logged into Blacksmith in Chrome:
The MCP automatically extracts your session from Chrome cookies. No manual token copying needed.
Add to your .mcp.json:
Automatic (recommended): Log into app.blacksmith.sh in Chrome. The MCP extracts your session cookie automatically.
Manual: Set BLACKSMITH_SESSION_COOKIE environment variable with your session cookie value.
| Variable | Required | Description |
|---|---|---|
BLACKSMITH_ORG | Yes | Your Blacksmith organization name |
BLACKSMITH_SESSION_COOKIE | No | Session cookie (auto-extracted from Chrome if not set) |
| Tool | Description |
|---|---|
list_runs | List workflow runs with filters (status, branch, workflow, actor, PR) |
get_run | Get run details including all jobs |
list_jobs | List jobs for a workflow run |
get_job | Get job details (steps, timing, runner info) |
get_job_logs | Get raw log output for a job |
| Tool | Description |
|---|---|
get_job_tests | Get all test results for a job |
get_failed_tests | Get failed tests with full error messages |
get_failures_by_pattern | Group failures by error pattern (e.g., "Cannot read properties") |
compare_test_runs | Compare failures between two runs (find regressions) |
get_flaky_tests | Detect tests that fail intermittently |
get_slow_tests | Find tests exceeding duration threshold |
get_test_history | Track a specific test's pass/fail history |
get_trends | Analyze trends: duration, failure rate, test count |
| Tool | Description |
|---|---|
get_current_usage | Current core usage (active vs max) |
get_invoice_amount | Current billing period amount |
get_usage_summary | Billable minutes vs free tier |
get_cache_stats | Cache size, entries by repository |
get_cache_entries | Detailed cache entries for a repo |
| Tool | Description |
|---|---|
list_orgs | List accessible organizations |
get_org_status | Org status (personal, onboarded, region) |
search_logs | Search logs across all jobs |
You: Why did the last CI run fail?
Claude: Uses
list_runs(status="failure", limit=1)thenget_failed_testsThe last run failed with 34 test failures. The main issues are:
- Connection timeout (12 tests) - Tests in
api/are timing out connecting to the test database- Undefined property (8 tests) -
user.settings.themeis undefined in the new dark mode code- Assertion failures (14 tests) - Snapshot mismatches in UI components
You: Which tests are flaky?
Claude: Uses
get_flaky_tests(days=7, min_runs=5)Found 3 flaky tests:
Test Flake Rate Pattern should handle concurrent requests40% (4/10 runs) Fails on CI, passes locally renders loading state20% (2/10 runs) Race condition with setTimeout validates auth token30% (3/10 runs) Intermittent network timeout
You: Did my PR introduce new test failures?
Claude: Uses
compare_test_runswith PR run vs base branchYour PR introduced 2 new failures:
UserProfile.test.tsx: "Cannot read property 'avatar' of undefined"api/users.test.ts: Expected 200, got 4045 previously failing tests now pass (nice!).
If you see SESSION_EXPIRED, your Blacksmith session has expired. Simply log back into app.blacksmith.sh in Chrome and retry.
The automatic cookie extraction requires:
If it fails, set BLACKSMITH_SESSION_COOKIE manually.
Run list_orgs to see available organizations, then set BLACKSMITH_ORG to your org name.
This MCP uses Blacksmith's internal web API, which is undocumented. The API was reverse-engineered from the Blacksmith web app and may change without notice.
MIT
Contributions welcome! Please open an issue first to discuss proposed changes.
No reviews yet β be the first to share how this listing worked for you.
Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.
[](https://allmcps.com/mcp/blacksmith)<a href="https://allmcps.com/mcp/blacksmith"><img src="https://allmcps.com/api/badge/blacksmith?style=directory" alt="Blacksmith on AllMCPs" /></a>