# Tool Catalog

All tools available in the agent system. Use `MemoryLookup` with a page name to read detailed reference documentation.

## Main Agent Tools

These tools are available only to the main agent (not subagents):

| Tool | Purpose |
|------|---------|
| `Spawn` | Run a specialized subagent (research / indicator / strategy / web-explore) in isolation — only the final result is returned to this context |
| `MemoryLookup` | Read a knowledge wiki page by name for detailed documentation or reference |

## Platform Tools

Available to all agents:

| Tool | Purpose |
|------|---------|
| `WorkspacePatch` | Apply a JSON patch to a workspace store |
| `WorkspaceRead` | Read the current state of a workspace store |
| `PythonList` | List existing scripts by category (`strategy`, `indicator`, or `research`) |
| `SymbolLookup` | Resolve a ticker to the correct `SYMBOL.EXCHANGE` format |
| `GetChartData` | Fetch raw OHLC data (casual retrieval only — use `Spawn` research for analysis) |
| `WebSearch` | Search the web (Tavily) |
| `FetchPage` | Fetch and read a web page or PDF |
| `ArxivSearch` | Search arXiv for academic papers |

## MCP Tools (user sandbox)

Available to all agents. These run in the user's per-session sandbox container:

| Tool | Purpose |
|------|---------|
| `PythonWrite` | Create a new script (research, strategy, or indicator category); auto-executes for research scripts |
| `PythonEdit` | Update an existing script; auto-executes for research scripts |
| `PythonRead` | Read an existing script's code and metadata |
| `PythonLog` | Read execution logs for a script |
| `PythonRevert` | Revert a script to a previous version |
| `ExecuteResearch` | Re-run an existing research script (only when explicitly asked to re-run) |
| `WorkspaceRead` | Read a workspace store (also a platform tool — same operation) |
| `WorkspacePatch` | Patch a workspace store (also a platform tool — same operation) |
| `EvaluateIndicator` | Test an indicator (standard or custom) on real market data |
| `BacktestStrategy` | Run a strategy backtest over historical data |
| `ActivateStrategy` | Start a strategy in paper or live mode |
| `DeactivateStrategy` | Stop a running strategy and return final PnL |
| `ListActiveStrategies` | Show all running strategies and their PnL |
| `GetBacktestResults` | Retrieve results from previous backtest runs |
| `GetStrategyTrades` | View trade log for an active or completed strategy |
| `GetStrategyEvents` | View fills, errors, and PnL updates for a strategy |
