---
title: "FusionServerToolConfig"
---

Configuration for the openrouter:fusion server tool.


## Fields

| Field                                                                                                                                                                                                                                                                                                                                                                                      | Type                                                                                                                                                                                                                                                                                                                                                                                       | Required                                                                                                                                                                                                                                                                                                                                                                                   | Description                                                                                                                                                                                                                                                                                                                                                                                | Example                                                                                                                                                                                                                                                                                                                                                                                    |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `analysis_models`                                                                                                                                                                                                                                                                                                                                                                          | List[*str*]                                                                                                                                                                                                                                                                                                                                                                                | :heavy_minus_sign:                                                                                                                                                                                                                                                                                                                                                                         | Slugs of models to run in parallel as the analysis panel. Each model receives the user prompt with openrouter:web_search and openrouter:web_fetch enabled, then a judge model summarizes the collective output into structured analysis JSON. Capped at 8 models to bound cost amplification. Defaults to the Quality preset from /labs/fusion.                                            | [<br/>"~anthropic/claude-opus-latest",<br/>"~openai/gpt-latest",<br/>"~google/gemini-pro-latest"<br/>]                                                                                                                                                                                                                                                                                     |
| `cache_control`                                                                                                                                                                                                                                                                                                                                                                            | [Optional[components.AnthropicCacheControlDirective]](../components/anthropiccachecontroldirective.mdx)                                                                                                                                                                                                                                                                                     | :heavy_minus_sign:                                                                                                                                                                                                                                                                                                                                                                         | Enable automatic prompt caching. When set at the top level, the system automatically applies cache breakpoints to the last cacheable block in the request. When set on an individual content block, it marks an explicit cache breakpoint; block-level markers also work on OpenAI models that support explicit prompt caching — OpenRouter converts them to the provider's native format. | \{<br/>"type": "ephemeral"<br/>}                                                                                                                                                                                                                                                                                                                                                            |
| `max_completion_tokens`                                                                                                                                                                                                                                                                                                                                                                    | *Optional[int]*                                                                                                                                                                                                                                                                                                                                                                            | :heavy_minus_sign:                                                                                                                                                                                                                                                                                                                                                                         | Maximum number of output tokens (including reasoning tokens) each panelist and the judge model may produce per inner call. Controls the total output budget so reasoning-heavy models like GPT-5.5 do not exhaust their token allowance before producing visible text. When omitted, panelists default to 32000 and the judge to 50000.                                                    | 16384                                                                                                                                                                                                                                                                                                                                                                                      |
| `max_tool_calls`                                                                                                                                                                                                                                                                                                                                                                           | *Optional[int]*                                                                                                                                                                                                                                                                                                                                                                            | :heavy_minus_sign:                                                                                                                                                                                                                                                                                                                                                                         | Maximum number of tool-calling steps each panelist (analysis model) and the judge model may take during their agentic web-research loop. Models with web_search/web_fetch enabled iterate until they produce a text response or hit this ceiling. Defaults to 8. Capped at 16.                                                                                                             | 12                                                                                                                                                                                                                                                                                                                                                                                         |
| `model`                                                                                                                                                                                                                                                                                                                                                                                    | *Optional[str]*                                                                                                                                                                                                                                                                                                                                                                            | :heavy_minus_sign:                                                                                                                                                                                                                                                                                                                                                                         | Slug of the judge model that produces the structured analysis JSON. Defaults to the model used in the outer API request.                                                                                                                                                                                                                                                                   | ~anthropic/claude-opus-latest                                                                                                                                                                                                                                                                                                                                                              |
| `reasoning`                                                                                                                                                                                                                                                                                                                                                                                | [Optional[components.FusionServerToolConfigReasoning]](../components/fusionservertoolconfigreasoning.mdx)                                                                                                                                                                                                                                                                                   | :heavy_minus_sign:                                                                                                                                                                                                                                                                                                                                                                         | Reasoning configuration forwarded to panelist and judge inner calls. Use this to control reasoning effort and token budget for models that support extended thinking.                                                                                                                                                                                                                      |                                                                                                                                                                                                                                                                                                                                                                                            |
| `temperature`                                                                                                                                                                                                                                                                                                                                                                              | *Optional[float]*                                                                                                                                                                                                                                                                                                                                                                          | :heavy_minus_sign:                                                                                                                                                                                                                                                                                                                                                                         | Temperature forwarded to panelist inner calls. The judge always runs at temperature 0 regardless of this value. When omitted, the provider's default applies.                                                                                                                                                                                                                              | 0.7                                                                                                                                                                                                                                                                                                                                                                                        |
| `tools`                                                                                                                                                                                                                                                                                                                                                                                    | List[[components.FusionServerToolConfigTool](../components/fusionservertoolconfigtool.mdx)]                                                                                                                                                                                                                                                                                                 | :heavy_minus_sign:                                                                                                                                                                                                                                                                                                                                                                         | Server tools available to panelist and judge inner calls. Each entry uses the same `{ type, parameters? }` shorthand as the outer Chat Completions request. When omitted, defaults to `[{ type: "openrouter:web_search" }, { type: "openrouter:web_fetch" }]`. Pass an empty array to disable tools entirely (panelists answer from parametric knowledge only).                            | [<br/>\{<br/>"parameters": \{<br/>"excluded_domains": [<br/>"example.com"<br/>]<br/>},<br/>"type": "openrouter:web_search"<br/>},<br/>\{<br/>"type": "openrouter:web_fetch"<br/>}<br/>]                                                                                                                                                                                                       |