> ## Documentation Index
> Fetch the complete documentation index at: https://docs.fireworks.ai/llms.txt
> Use this file to discover all available pages before exploring further.

> ## Agent Instructions
> For Fireworks Nexus, start at https://docs.fireworks.ai/nexus.
> Use https://docs.fireworks.ai/nexus/quickstart for coding harnesses, custom agents, APIs, SDKs, and LLM gateways.
> Use https://docs.fireworks.ai/nexus/firerouter for how model routers work, the supported model list, composition, closed-model credentials, and pricing.
> Prefer canonical short model IDs such as firerouter/opus. In LiteLLM litellm_params.model, use the full path fireworks_ai/accounts/fireworks/routers/firerouter/opus.
> Family names such as opus track the latest evaluated family version; do not describe them as fixed model versions.

# Harness Compatibility

> Compare FireRouter support, closed-model credentials, and MCP behavior across coding harnesses connected through FireConnect.

Use this page to check whether FireConnect can add FireRouter to your harness and what it changes about Model Context Protocol (MCP) configuration. For setup commands and restart rules, see [Coding Harnesses](/nexus/harnesses).

<Tabs>
  <Tab title="FireRouter">
    | Harness | Request API | FireRouter compatibility | Local provider credentials |
    | - | - | - | - |
    | Claude Code | Messages | Supports `firerouter` and `firerouter/...` IDs | Anthropic login, OAuth, or `ANTHROPIC_API_KEY` |
    | Claude Agent SDK | Messages | Supported when the SDK reads the user settings written by FireConnect | Same as Claude Code |
    | OpenCode | Chat Completions | Supports `firerouter` and `firerouter/...` IDs | Anthropic key |
    | Codex | Responses | Supports `firerouter` and `firerouter/...` IDs | `ANTHROPIC_API_KEY` environment reference |
    | Codex app, ChatGPT desktop | Responses | Uses the FireRouter IDs registered through the shared Codex configuration | No separate local provider-key configuration |
    | Pi | Chat Completions | Supports `firerouter` and `firerouter/...` IDs | Anthropic key |
    | Cursor IDE | Chat Completions | Partial: FireConnect rejects routes that require an Anthropic credential | None |
    | VS Code | Chat Completions | Supports `firerouter` and `firerouter/...` IDs | Anthropic key |
    | Copilot App | Chat Completions | Partial: FireConnect rejects routes that require an Anthropic credential | None |
    | Copilot CLI | Chat Completions | Partial: FireConnect rejects routes that require an Anthropic credential. Manual setup supports them | Provider-key headers in manual setup |
    | DeepSeek Harness | Chat Completions | Partial: FireConnect rejects routes that require an Anthropic credential. Manual setup supports them | Provider-key headers in manual setup |
    | Claude Desktop | Not applicable | Not supported by FireConnect | Not applicable |

    **Provide a local Anthropic key.** Where a harness supports one, pass it
    when you connect, or store it once for every harness:

    ```bash wrap theme={null}
    fireconnect opencode --model firerouter/opus --anthropic-api-key "$ANTHROPIC_API_KEY"
    fireconnect configure --anthropic-api-key "$ANTHROPIC_API_KEY"
    ```

    FireConnect also reads `ANTHROPIC_API_KEY` from your environment. Codex
    stores an `ANTHROPIC_API_KEY` environment reference, so export the key in
    the shell that starts Codex.

    FireConnect refuses routes that need a local Anthropic key on Cursor IDE,
    Copilot App, Copilot CLI, and DeepSeek Harness. Cursor IDE and the Copilot
    App cannot send extra headers, so they need an Anthropic Provider Key and
    manual setup. Copilot CLI and DeepSeek Harness can send the header with
    [manual setup](/nexus/firerouter/setup#set-up-your-harness). Routes with
    only Fireworks models work on every harness.

    **OpenAI models.** FireConnect has no local OpenAI-key option yet. Connect
    an OpenAI key in [Provider Keys](/nexus/provider-keys), or send
    `x-openai-api-key` with manual setup on any harness except Cursor IDE and
    the Copilot App. Provider Keys is not yet
    available on every account; [contact the Fireworks team](https://fireworks.ai/demo-request)
    to enable it. For direct HTTP calls, see
    [APIs and SDKs](/nexus/apis-and-sdks#credentials) or
    [LLM Gateways](/nexus/llm-gateways#provide-closed-model-credentials).

    Automated live-inference validation covers Claude Code, OpenCode, Codex,
    Pi, and DeepSeek Harness. Cursor IDE, VS Code, Copilot App, Copilot CLI,
    and ChatGPT desktop are validated at the configuration layer.
  </Tab>

  <Tab title="MCP">
    Your MCP servers keep working after you connect a harness to Fireworks.
    FireConnect changes where model requests go, not which tools the harness
    loads. Fireworks models call MCP tools the same way the harness's default
    models do.

    <Columns cols={3}>
      <Card title="Your servers stay" icon="plug">
        FireConnect keeps every MCP server you configured, and
        `fireconnect <harness> off` leaves them in place.
      </Card>

      <Card title="Tool search stays on" icon="magnifying-glass">
        In Claude Code, FireConnect sets `ENABLE_TOOL_SEARCH` so large MCP
        tool sets still load on demand.
      </Card>

      <Card title="Web search is built in" icon="globe" href="/nexus/web-search">
        The Fireworks WebSearch MCP is retired. Claude Code's native
        `WebSearch` tool replaces it.
      </Card>
    </Columns>

    ### What FireConnect changes

    | Harness | What happens to MCP |
    | - | - |
    | Claude Code | Your servers stay in `~/.claude.json`. FireConnect removes only its retired `fireworks-websearch` server and sets `ENABLE_TOOL_SEARCH` |
    | Codex | Your servers stay in `[mcp_servers]` in `~/.codex/config.toml` |
    | OpenCode | Your servers stay in the `mcp` block of `opencode.json` |
    | Codex app | FireConnect doesn't touch MCP. Set up servers in the app as usual |
    | ChatGPT desktop | <Badge color="orange">Unreliable</Badge> MCP servers and plugins don't work reliably while FireConnect is on |
    | Pi, Cursor IDE, VS Code, Copilot App, Copilot CLI, DeepSeek Harness | FireConnect doesn't touch MCP. Set up servers in the harness as usual |
    | Claude Agent SDK | FireConnect doesn't touch MCP. MCP follows the setting sources your application loads |
    | Claude Desktop | <Badge color="red">Not supported</Badge> FireConnect doesn't connect Claude Desktop |

    <Warning>
      MCP servers and plugins in ChatGPT desktop don't work reliably while
      FireConnect is on. If you depend on them there, run
      `fireconnect codex off` before using them.
    </Warning>

    ### Check that an MCP tool works

    <Steps>
      <Step title="Connect the harness" icon="plug">
        ```bash theme={null}
        fireconnect claude
        ```

        Use `fireconnect codex` or `fireconnect opencode` for the other
        harnesses.
      </Step>

      <Step title="Confirm the server is configured" icon="list-check">
        <CodeGroup>
          ```bash Claude Code theme={null}
          claude mcp list
          # docs: npx -y your-mcp-server - ✔ Connected
          ```

          ```toml Codex theme={null}
          # ~/.codex/config.toml, next to the settings FireConnect adds
          [mcp_servers.docs]
          command = "npx"
          args = ["-y", "your-mcp-server"]
          ```

          ```json OpenCode theme={null}
          // ~/.config/opencode/opencode.json
          {
            "mcp": {
              "docs": {
                "type": "local",
                "command": ["npx", "-y", "your-mcp-server"],
                "enabled": true
              }
            }
          }
          ```
        </CodeGroup>

        In Claude Code, add a server with `claude mcp add <name> -- <command>`.
      </Step>

      <Step title="Ask the model to call a tool" icon="wrench">
        Start a new session and ask for something only the tool can answer,
        such as "Call the docs search tool and summarize the first result."
        The harness shows the tool call, and the answer uses the tool's output.
      </Step>
    </Steps>

    <Tip>
      Setting up Claude Code by hand? Add `"ENABLE_TOOL_SEARCH": "true"` to
      `env` in `~/.claude/settings.json`. Claude Code turns MCP tool search off
      when `ANTHROPIC_BASE_URL` points anywhere other than Anthropic.
    </Tip>

    <Note>
      Upgrading from the Fireworks WebSearch MCP? `fireconnect claude` removes
      the `fireworks-websearch` server for you and leaves your other servers
      in place. See [Web Search](/nexus/web-search) for which harnesses have
      native web search.
    </Note>
  </Tab>
</Tabs>

## Troubleshooting

<AccordionGroup>
  <Accordion title="Nothing changed after --model">
    Restart or reopen the harness. Claude Code and Codex load a new model in a
    new or resumed session. See [Coding Harnesses](/nexus/harnesses) for each
    harness.
  </Accordion>

  <Accordion title="FireConnect refuses a FireRouter route">
    The harness cannot send an Anthropic key. Use a route with only Fireworks
    models, or use a harness that supports a local Anthropic key.
  </Accordion>
</AccordionGroup>

## Microsoft Foundry

FireRouter is not available on Microsoft Foundry, and Foundry support differs by harness. See the compatibility matrix in [Foundry for Coding Harnesses](/nexus/microsoft-foundry#choose-a-path), including [Claude Code through a gateway](/nexus/microsoft-foundry#claude-code-through-a-gateway).

## Related setup

* [Coding Harnesses](/nexus/harnesses): connect commands, files changed, and restart rules
* [FireRouter](/nexus/firerouter): router IDs and composition
* [Provider Keys](/nexus/provider-keys): account-level closed-model credentials
* [Routing Preferences](/nexus/routing-preferences): quality and savings controls by harness
