Expose an MCP server so external agents (e.g. Claude Code) can request PR reviews
Summary
Open SWE works great as a PR reviewer when triggered from Slack or the dashboard, but there's no programmatic way for other agent tools (e.g. Claude Code) to request a review. Today the workaround is fragile: an external agent must post a @open-swe comment on the PR and poll for the review to land.
Problem
When developing with Claude Code, I want it to hand off a finished PR to Open SWE for review and read the findings back — all without leaving its tool loop. There's no first-class interface for this:
- Open SWE is an MCP client (Workspace MCPs), not an MCP server, so there's nothing to connect to.
- The comment-based workaround requires the external agent to scrape GitHub for the resulting review instead of receiving a structured result.
Proposed solution
Expose a small MCP server (Streamable HTTP) on the Open SWE deployment with a request_review tool:
request_review(pr_url: string) -> { thread_id, web_url, findings: [...] }- Creates a reviewer-thread run for the PR (same path the Slack
reviewtrigger uses today). - Synchronous mode returns the findings directly; async mode returns the thread URL and lets the caller poll or subscribe.
- Auth via the existing per-user credentials/bearer token so runs are attributed to the requesting user (same identity mapping the Slack integration uses).
An alternative would be a plain authenticated HTTP endpoint that Claude Code could reach via mcp-remote, but a native MCP tool would make this work out of the box with any MCP client.
Alternatives considered
- Comment-based trigger (
gh pr comment --body "@open-swe review") — works today but the requester has to poll GitHub for the result. - LangGraph platform
/mcpendpoint — exposes graphs as assistants, not the PR-review dispatch flow, and isn't reachable/authenticated for this purpose.
Made by Open SWE · view thread · fireworks:accounts/fireworks/models/glm-5p3-flash (max)
Source: langchain-ai/open-swe