[
 {
  "name": "run_decision_impact",
  "description_head": "Run the consequence of a decision made by a persona in an EVA ecosystem. This fires the real adversarial-dynamics engine: it executes the persona's chosen decis",
  "schema_properties": [
   "counterfactual_action",
   "decider_persona",
   "decision_action",
   "ecosystem_id",
   "fire_date",
   "initial_overrides",
   "method",
   "situation",
   "valuation_date"
  ]
 },
 {
  "name": "run_event_impact",
  "description_head": "Fire ONE engine10 event in an ecosystem and return the real channel_1 asset deltas + per-stakeholder dollar impacts. Use this for 'what is the impact of <event>",
  "schema_properties": [
   "ecosystem_id",
   "event_code",
   "focus_stakeholder"
  ]
 },
 {
  "name": "compute_reaction",
  "description_head": "Compute one persona's game-theoretic reaction against an opponent's action space \u2014 runs the real minimax (or qre) solver over the payoff matrix derived from the",
  "schema_properties": [
   "ecosystem_id",
   "method",
   "opponent_actions",
   "reactor_actions",
   "reactor_persona"
  ]
 },
 {
  "name": "explain_run",
  "description_head": "Explain why a stored EVA run produced its result \u2014 returns the causal chain for the chosen metric (default: 'verdict'). Backed by EVA's forensics module (tempor",
  "schema_properties": [
   "ecosystem_id",
   "metric_name",
   "run_id"
  ]
 },
 {
  "name": "list_ecosystems",
  "description_head": "List every ecosystem EVA can analyze. Returns ecosystem_id + label + short description for each. Read-only / idempotent. Use this when the user is vague about w",
  "schema_properties": []
 },
 {
  "name": "list_personas",
  "description_head": "List the personas authored for one ecosystem. Returns persona_id + label + stakeholder + utility_status + action_classes for each. Read-only / idempotent. Use t",
  "schema_properties": [
   "ecosystem_id"
  ]
 },
 {
  "name": "list_events",
  "description_head": "List engine10 events available in one ecosystem's events_catalog. Returns event_id + label + category + status for each. Read-only / idempotent. Use this when t",
  "schema_properties": [
   "ecosystem_id",
   "max_events"
  ]
 },
 {
  "name": "define_term",
  "description_head": "Return EVA's authoritative definition of a domain term (e.g. 'reflexivity', 'feedback loop', 'saddle point', 'backfire', 'kappa', 'rho', 'engine10', 'ecosystem'",
  "schema_properties": [
   "term"
  ]
 },
 {
  "name": "run_event_impact_with_inputs",
  "description_head": "Fire ONE engine10 event WITH a runtime payload (slots) and return the real channel_1 asset deltas + per-stakeholder dollar impacts. This is the risk-mode answer",
  "schema_properties": [
   "ecosystem_id",
   "event_id",
   "fire_date",
   "horizon_months",
   "seed",
   "slots",
   "valuation_date"
  ]
 }
]