
Runframe Mcp Server
io.github.runframe由 GitHub 帳號 runframe 發布v0.1.5更新於 Oct 24, 2026
MCP server for Runframe incident management covering incidents, on-call, postmortems, and more.
概覽
Runframe MCP 伺服器讓 AI 助理在編輯器內管理事件回應、值班查詢、服務、事後檢討、團隊與人員查找。
- 可以做什麼
- 列出、讀取、建立與更新事件,變更狀態、確認事件、加入時間軸記錄、升級事件,並透過 Slack 或電子郵件呼叫回應人員。查詢目前值班人員,並依嚴重程度讀取升級策略。列出服務並依公開服務鍵取得服務詳情。建立事後檢討並取得某個事件的事後檢討。列出團隊,依姓名或電子郵件搜尋使用者,包含供歷史查詢用的非活躍使用者。
- 適用情境
- 適合已使用 Runframe 的工程團隊,希望不離開 IDE 或智慧代理就能分診、確認、升級或記錄事件,並查看值班安排。也適合草擬事後檢討,以及在篩選事件前解析人員或團隊名稱。
- 執行需求
- 透過 npx 以 stdio 本機程序執行,需要 Node.js 20+。需要 Runframe 帳號與 API 金鑰,透過 RUNFRAME_API_KEY 提供(以 rf_ 開頭);RUNFRAME_API_URL 可覆寫 API 基礎位址。HTTP 傳輸模式另需 MCP_ACCESS_TOKEN。需要能存取 Runframe API 的網路。
安裝
在 SourceWeft 中
- 開啟 儀表板中的 Runframe Mcp Server,將其新增到工作區。
- 為需要使用其工具的對話啟用該服務。
Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。
其他 MCP 客戶端
參照 儲存庫 中的啟動說明。
README
runframe-mcp-server
[CI] [npm] [License: MIT] [Node 20+]
Runframe is the complete incident lifecycle platform for engineering teams, covering incident response, on-call, and status pages. This MCP server lets you manage those workflows from your IDE or AI agent.
17 tools covering incidents, on-call, services, postmortems, teams, and people lookup. Requires Node.js 20+.
Why Use This
- Stay in your editor — acknowledge incidents, page responders, and write postmortems without switching to a browser
- Let agents handle the routine — AI agents can triage, escalate, and update incidents autonomously using scoped API keys
- Zero infrastructure — runs via
npx, no server to deploy for local use
How It Works
The server is stateless. It translates MCP tool calls into Runframe API requests, scoped by your API key permissions. No data is stored locally.
Examples
Ask your agent:
- "Acknowledge incident INC-2026-001" → calls
runframe_acknowledge_incident - "Who is on call right now?" → calls
runframe_get_current_oncall - "Create a postmortem for the database outage" → calls
runframe_create_postmortem - "Page the backend team lead about the API latency spike" → calls
runframe_page_someone - "List all open SEV1 incidents" → calls
runframe_list_incidentswith severity filter - "Find Alex so I can check their open incidents" → calls
runframe_find_user
Install
Get your API key from settings inside Runframe.io, then add to your agent:
Claude Code:
Cursor (~/.cursor/mcp.json) · VS Code (.vscode/mcp.json) · Claude Desktop (claude_desktop_config.json):
Other MCP clients: Add the JSON config above to your client's MCP config file.
Interactive setup wizard:
Environment Variables
Transports
stdio (default) — used by MCP clients like Claude Code and Cursor. No network exposure. This is what the install commands above configure.
Streamable HTTP — for containerized or remote deployments. Requires MCP_ACCESS_TOKEN for bearer auth:
Security Model
Responsibility is split across three boundaries:
- Runframe API handles authorization and scopes via
RUNFRAME_API_KEY. - This MCP server handles process isolation (stdio) and bearer-token validation (HTTP). It also enforces method filtering, Host/Origin checks on localhost, declared Content-Length validation (1 MB limit), 8 KB header limit, and 15s upstream timeout.
- Your reverse proxy handles TLS, rate limiting, and streamed-body enforcement if you expose HTTP mode to a network.
The server stores nothing. It is a pass-through to the Runframe API.
Tools
Incidents (9)
On-call (1)
Services (2)
Postmortems (2)
Teams (2)
Users (1)
Direct API alignment
This MCP server follows the public Runframe direct API contract.
- Incident create requires
service_idscontaining public service keys likesvc_K7M4Q9TZ2H, not internal UUIDs. runframe_get_servicenow looks up services by publicservice_key, not UUID.- Incident tools now follow the latest V1 contract: use incident numbers like
INC-2026-001in path parameters. - Incident update and list filters now use the latest public identifiers where V1 does: assignee/resolver email and
team_name. runframe_create_incidentaccepts an optionalidempotency_key, which is forwarded as theIdempotency-Keyheader for retry-safe creates.runframe_create_incidentdefaultsseveritytoSEV2when omitted, matching the V1 API.- Incident create now mirrors the V1 API limits:
titlemust be 1-200 chars,descriptionmaxes at 10000 chars, andservice_idsallows at most 50 items. - Incident creation depends on valid SLA configuration for the requested severity. If acknowledge or closure deadlines are missing, the API rejects the create.
- Use
runframe_list_servicesto discover validservice_keyvalues before creating incidents. runframe_page_someonenow uses the latest V1 delivery contract:email,channels, and optionalmessage.- Postmortem tools now follow the latest V1 contract: use
incident_numberand snake_case nested fields likeusers_affected,owner_email, andtime_to_acknowledge. - Use
runframe_find_userto resolve a person name to an email address before filtering incidents byassigned_toorresolved_by. - Set
include_inactive=trueonrunframe_find_userwhen you need to resolve former employees in historical incident queries. - Set
is_active=trueoris_active=falseonrunframe_find_userwhen you need an explicit V1 active-state filter. - Use
runframe_list_teamswithsearchto resolve the exactteam_namebefore filtering incidents.
Docker
The Docker image runs HTTP transport by default on port 3100:
Deploying HTTP Mode
HTTP mode is meant for private networks. If you put it on the internet:
- Run behind TLS (nginx, Caddy, cloud LB). This server does not do TLS.
- Use a reverse proxy for rate limiting and request buffering.
- Prefer private subnets or VPNs over public exposure.
- Rotate
MCP_ACCESS_TOKENregularly. Pass old and new tokens comma-separated for zero-downtime swaps.
Rate limiting
The Runframe API enforces rate limits server-side. If you hit a limit, tools return a 429 error with a retry hint. For HTTP transport deployments, your reverse proxy can add additional request-level throttling.
Token rotation
MCP_ACCESS_TOKEN accepts comma-separated tokens:
- Set
MCP_ACCESS_TOKEN=new_token,old_token - Update clients to
new_token - Drop the old one:
MCP_ACCESS_TOKEN=new_token
Limitations
- Read-only for schedules — you can query on-call and escalation policies but not modify them via MCP
- Requires a Runframe account and API key
Contributing
Issues and PRs welcome at github.com/runframe/runframe-mcp-server.
License
來源:README.md,提交 f7d76b6
工具
0版本歷史
1- v0.1.5最新Sep 16, 2026
評分
已滿足適用檢查項的 50%
該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。
- 近 30 天內可連通25 分
請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。
- 已宣告認證方式10 分
請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。
- 已列出工具15 分
請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。
- 描述必需15 分
- 圖示10 分
- 文件15 分
- 授權條款10 分