BenAwf
BenAwf remote MCP for Strategy Lab. Streamable HTTP. Paper GA; live venue beta.
| Endpoint | https://api.benawf.com/mcp (streamable-http) |
|---|---|
| Registry version | 1.0.0 |
| Now | 16 tools · grade C (65) · pin ts_5bc7bd254134991ccad9268881086463 · protocol 2025-06-18 |
| First / last listed | 2026-10-31 02:42 UTC / 2026-10-31 02:42 UTC |
| Grade over time | 2026-10-31: C (65), 16 tools |
Is this your server? Own a server? ToolFit hosted watch re-checks it every 24 h ($0.25 per 30 days) or 6 h ($0.60) and sends you an HMAC-signed webhook when its tools or grade change: POST https://api.youraitools.co/toolfit/v1/watch. To opt out, see About & opt-out.
Tools: list_iterations get_lineage select_iteration add_entry_gate patch_entry_gate delete_entry_gate patch_position patch_exit patch_cooldown list_strategies list_backtests get_backtest list_trades get_experiment diff_dsl get_market_context_by_date
list_iterations | Open Lab @R# rows as the same dump as Live rules (parent, headline @B#, Long/Position/Exit). params: strategy_id |
get_lineage | Champion @R#, per-iteration verdicts, levers tried/untried/failed on champion, converged flag, and user canvas view vs recommended working @R#. params: strategy_id |
select_iteration | Load an @R# onto the live canvas so mutate tools edit that iteration. params: ref*, strategy_id |
add_entry_gate | Add one AND entry gate. Args: side + condition JSON. You are the DSL translator. Invent the section JSON (condition/position/exit/cooldown). Browser applies only — BenAwf does not call an LLM. No prose text. params: side*, condition*, strategy_id |
patch_entry_gate | Replace one entry gate by id. Args: id + condition JSON. You are the DSL translator. Invent the section JSON (condition/position/exit/cooldown). Browser applies only — BenAwf does not call an LLM. No prose text. params: id*, condition*, strategy_id |
delete_entry_gate | Remove one entry gate by id (from get_experiment). Args: id only. Refuses when it would leave both long and short with zero gates. params: id*, strategy_id |
patch_position | Full replace of rules.position. Args: position JSON. You are the DSL translator. Invent the section JSON (condition/position/exit/cooldown). Browser applies only — BenAwf does not call an LLM. No prose text. params: position*, strategy_id |
patch_exit | Full replace of rules.exit. Args: exit JSON. You are the DSL translator. Invent the section JSON (condition/position/exit/cooldown). Browser applies only — BenAwf does not call an LLM. No prose text. params: exit*, strategy_id |
patch_cooldown | Set root cooldownMinutes. Args: cooldownMinutes number|null. You are the DSL translator. Invent the section JSON (condition/position/exit/cooldown). Browser applies only — BenAwf does not call an LLM. No prose text. params: cooldownMinutes*, strategy_id |
list_strategies | Ids, @R# refs, and backtest headlines for strategies not currently open. params: limit, offset, strategy_id |
list_backtests | Open Lab @B# rows with window, assets, trade count, PnL, win rate, drawdown, and tape_stripped. params: iteration_ref, strategy_id |
get_backtest | Cache-or-run one sim for an @R# + window, then return Score, trade count, PnL, drawdown, and bounded stats for one run. Numbers only — no BenAwf assessment LLM; you analyze. Same @R# + window → cached @B# (identical stats; follow the comment). After any mutate pass that result's dsl_ref. If you changed rules behind the same R#/draft, or suspect a stale cached @B#, pass force:true to force a fresh params: ref*, force, config, strategy_id |
list_trades | One page of fills (20 per page): trade_id, side, prices, PnL. params: ref*, page*, sort*, strategy_id |
get_experiment | Prose summary plus rules JSON (entry gates with ids, position, exit, cooldownMinutes) and that iteration's @B# refs. Read before inventing translator-shaped mutate args. params: ref*, strategy_id |
diff_dsl | Structured rules diff between two @R# iterations (entry gates per side, position, exit, cooldown). Use before adopting an older iteration's levers onto a newer one. params: ref_a*, ref_b*, strategy_id |
get_market_context_by_date | OHLCV and cited indicators around that date (engine lookback each side). params: symbol*, date*, time_frame*, strategy_id |
Entries describe changes in tool definitions. They are not statements about a server, its quality or its author. The grade measures how the tool definitions fit model providers (token cost, schema compatibility, confusable names) as scored by the ToolFit engine at the time of the listing. JSON: append .json. Opt-out: how or hello@youraitools.co.