Repository navigation
Tools and MCP
Most tool execution is performed by T3 workers. Availability depends on runtime, configuration, granted permissions, and the provider/model's capabilities.
| Family | Representative tools | Restrictions |
|---|---|---|
| Workspace |
file_read, file_list, file_write, file_edit, file_delete, glob, grep
|
Workspace scope and dangerous-action approval |
| Code |
run_code, code_search
|
Code index must be enabled/built |
| Shell / Git |
shell, git, github
|
Can change external state; approval required when dangerous |
| Internet |
web_search, web_fetch
|
Backend configuration, SSRF checks |
| Browser |
browser, browser_control, read_current_page
|
Distinct browser types and surfaces |
| Documents |
generate_document, pdf_create
|
Render actual documents, not renamed plain text |
| Media |
image_analyze, generate_image, generate_speech, generate_video, transcribe_audio
|
Compatible provider/model needed |
| Coordination |
peer_message, ask_user
|
ask_user belongs to cloud/self-hosted web |
MCP-provided tools can extend this set at runtime. The tool registry also exposes a plugin registration interface; some plugin lifecycle functionality remains a roadmap/stub, so don't assume every described extensibility idea is enabled.
Tools are gated by Cascade's approval chain. Configuration supports tools.shellAllowlist, tools.shellBlocklist, and tools.requireApprovalFor; exact field names and defaults are defined in src/config/schema.ts. A prompt from a model or webpage does not grant additional permission.
Place local stdio MCP servers in .cascade/config.json and explicitly trust them:
{
"tools": {
"mcpServers": [
{
"name": "filesystem",
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "."]
}
],
"mcpTrusted": ["filesystem"]
}
}cascade mcp connect https://mcp.example.com/sse
cascade mcp list
cascade mcp remove exampleRemote connectors can use OAuth where a server supports it; servers without OAuth may fall back to explicit tokens. Cloud can use an operator-configured OAuth broker for selected services that cannot dynamically register clients.
Sources: src/tools/registry.ts, MCP OAuth design, connect broker.