Roo Code MCP server: add Sume with type streamable-http
Add a remote MCP server to Roo Code: a streamable-http entry for Sume's hosted MCP, an API-key header, and paid tools kept out of alwaysAllow.

To add an MCP server to Roo Code, put it under mcpServers in the global mcp_settings.json or in a project's .roo/mcp.json. A local server takes a command; a remote Streamable HTTP server needs "type": "streamable-http" and the server's url, here https://mcp.sume.com/mcp, with credentials in headers: for Sume, an Authorization: Bearer header that holds your Sume API key.
Roo Code's side comes from its Using MCP in Roo Code page; Sume's from MCP quickstart, OAuth and API keys, MCP tools and gates, and Jobs and results, all read on 2026-09-27. Sume has no official connector for Roo Code: this is a plain remote MCP connection, and Sume's basics page says hosted MCP still works but is not the primary integration path today. Cline, a separate extension, spells the type streamableHttp; see Cline MCP remote server.
Which file should the Sume entry go in?
Roo Code manages MCP servers at two levels. The global mcp_settings.json applies across all your workspaces. A project's .roo/mcp.json sits in the project root, lets you share servers with your team by committing it, and wins over a global server with the same name. Open either from the MCP settings view in the Roo Code pane: scroll to the bottom and choose Edit Global MCP or Edit Project MCP, and Roo creates .roo/mcp.json if it doesn't exist.
Because the Sume entry holds a secret, put it in the global file: Sume's docs say never to commit a key. Roo documents ${env:VARIABLE_NAME} substitution only for the args of local servers, so the header holds the key itself.
What does the Sume entry look like?
Roo's page documents headers for remote servers and no OAuth sign-in, so this setup uses a Sume API key: replace <SUME_API_KEY> with a key from the Sume dashboard, or send it as an x-api-key header instead. type is required: for any URL-based entry, leaving it out causes an immediate error, because Roo cannot infer the transport from a URL alone.
{
"mcpServers": {
"sume": {
"type": "streamable-http",
"url": "https://mcp.sume.com/mcp",
"headers": { "Authorization": "Bearer <SUME_API_KEY>" },
"alwaysAllow": ["mcp_health", "tools_list", "tools_schema", "jobs_wait"],
"disabled": false
}
}
}Which Sume tools should Roo approve automatically?
Only tools that read. An API-key session sees the full hosted tool set, write and paid tools included, so Roo's approval prompt is your check before a paid call. Roo's MCP auto-approval works per tool and is off by default: turn on the global “Use MCP servers” auto-approval option, then tick Always allow next to a tool in the server's settings, or list it in alwaysAllow. If the global option is off, no MCP tool is auto-approved.
Keep paid tools such as generate_video, generate_image, and tts_create out of alwaysAllow, so Roo proposes each call and waits for your approval. Before a paid call, ask Roo to run it with dry_run=true, which previews admission and cost without submitting; every paid call also needs an idempotency_key.
| Key | What Roo Code's docs say | For Sume |
|---|---|---|
type | Required; must be "streamable-http" | "streamable-http" |
url | Full URL of the server's single endpoint | https://mcp.sume.com/mcp |
headers | Custom HTTP headers, for example auth tokens | Authorization: Bearer <SUME_API_KEY> |
alwaysAllow | Tool names approved automatically | Read tools only |
disabledTools | Tools unavailable even if the server provides them | Paid tools you never want called |
timeout | 1–3600 seconds; 60 if not set | Leave at 60 or raise it |
Is Roo Code's 60-second timeout long enough?
Yes, for one wait. Roo's per-server timeout runs from 1 to 3600 seconds and defaults to 60; the Network Timeout pulldown in each server's config box sets it too. Sume's jobs_wait holds one call open for at most 55 seconds, 50 by default. A render that takes longer is waited out in slices: after wait_slice_expired, Roo should call jobs_wait again with the same ids and never resubmit the paid create. MCP tool call timeouts on long-running video jobs has the pattern.
How do I check that Sume is connected?
Ask Roo to call mcp_health, which confirms the endpoint, auth source, and safety posture, then tools_list for every tool the session can see. For permission errors, Roo's troubleshooting list points back to the credentials in mcp_settings.json or .roo/mcp.json. If the key ever appears in logs or chat history, rotate it. Sume MCP tools list sorts the tools into read, write, and paid.
Sources
Related posts
More in Integrations
- How to run a Lambda function on a schedule with EventBridge
Use EventBridge Scheduler to invoke a Lambda function on a cron or rate schedule. For a daily AI video, key the run to the scheduled time and return.
- Shopify product video AI API with products/create webhooks
Answer Shopify's products/create webhook within five seconds, run a Sume Format from a queue, then upload the MP4 to Shopify with a staged upload.
- Slack bot to generate video: a slash command with Sume's API
Ack Slack's slash command within 3000 ms, submit POST /v1/videos with a callback_url, then post the URL to response_url when Sume's webhook lands.
- Spring Boot webhook: verify an HMAC-SHA256 signature
A Spring Boot webhook takes the body as byte[], computes HMAC-SHA256 over the timestamp and raw bytes, and checks each sume-v1 entry in constant time.
Written by Sume