Zed tool permissions for Sume: mcp:server:tool keys
Zed asks before each MCP tool by default. How to use its mcp:<server>:<tool> permission keys so Sume's reads run freely and its paid tools stay on confirm.

Zed's agent.tool_permissions.default setting takes confirm, allow or deny, and confirm is the default, so every Sume tool call prompts you unless you change it. For finer control, Zed documents a key format of mcp:<server>:<tool_name>, so a server named sume and a tool named jobs_status gives mcp:sume:jobs_status. Allow the free reads individually and leave generation on confirm.
What are the three default modes?
According to the Zed docs, confirm prompts for approval before running any tool action, allow auto-approves, and deny blocks all tool actions.
| Mode | Behavior | Sume advice |
|---|---|---|
| confirm | Prompt every time | Keep as default |
| allow | No prompt | Avoid globally; paid tools would run unprompted |
| deny | Blocked | Use for tools you never want, per key |
Which Sume tools are safe to allow?
Sume's docs list free reads you can allow one by one: mcp_health, tools_list, tools_schema, balance_get, catalog_list, jobs_status, jobs_get, jobs_result and assets_get. Paid tools include generate_image, generate_video, music_create and tts_create; leave them on confirm so you see the call and its arguments.
How should the server be configured?
Under context_servers, a remote entry takes url and optional headers. With no Authorization header Zed starts the OAuth flow; Sume's OAuth grants read-only unless you tick Write on its consent page. Name the entry sume so the permission keys above match.
Confirmation in Zed is a client-side prompt. Sume's separate gates still apply: paid calls need an idempotency_key, dry_run previews cost, and max_spend_usd caps a call when you pass it.
What does a sensible rule set look like?
Keep agent.tool_permissions.default at confirm. Then add per-tool rules for the free reads you call constantly, using the mcp:sume:<tool> pattern from Zed's page. Check Zed's documentation for the exact rule syntax in your version, because this page only confirms the key format and the three default modes.
For paid tools, the confirmation prompt is your last human checkpoint, because Sume's idempotency_key is a dedup mechanism and not an approval. Read the prompt for the tool name, any dry_run flag and max_spend_usd before you accept.
If you want certainty that the agent cannot spend at all, connect with OAuth and leave Write off at consent. Then write and paid tools are not available to the session, whatever the Zed permission mode says.
Before you rely on any of this in a team setting, test it once end to end with a throwaway prompt. Call mcp_health, call tools_list, and run one dry_run against a paid tool. Compare the tool count with what you expected for your credential. If a read-only OAuth session lists more than you expected, or a key session lists fewer, stop and recheck which credential the client is actually sending. Sume's mcp_health response reports the auth source, which settles the question quickly without guessing.
Sources
Related posts
More in Integrations
- Cinema 4D MCP plus Sume MCP in one Claude Desktop chat
Cinema 4D 2026.4 ships a local MCP server. Pair it with Sume's hosted MCP: render the scene locally, then animate and finish the still in Sume.
- Claude Code 2.1.294 prompt hook fix: spend limits need a command hook
Claude Code 2.1.294 fixed prompt and agent hooks written as instructions that let blocked calls through. For Sume spend limits, a command hook is still exact.
- Claude Code onFailure block: fail-closed hook for paid Sume tools
Claude Code 2.1.295 adds onFailure: block for command and HTTP hooks. Use it so a crashed spend guard stops paid Sume generate calls instead of allowing them.
- Claude Code MCP behind a proxy: 403 now fails fast, allow Sume's host
Claude Code 2.1.290 and 2.1.292 stop retrying an MCP server your proxy blocks with 403. What to ask your proxy admin to allow so Sume's hosted MCP connects.
Written by Sume