# MCP
URL: /de/docs/customize/mcp

Benutzer-mcp.json plus Arbeitsbereich .spirit/mcp.json. Der Arbeitsbereich gewinnt bei gleichem Servernamen.



MCP-Server fügen Tools, Ressourcen und Prompts von außerhalb von Spirit hinzu.

| Bereich        | Pfad                           |
| -------------- | ------------------------------ |
| Benutzer       | `{spiritDataDir}/mcp.json`     |
| Arbeitsbereich | `{workspace}/.spirit/mcp.json` |

Wenn beide Dateien denselben Servernamen definieren, gewinnt der **Arbeitsbereich**-Eintrag.

Verwalten Sie Server in **Einstellungen → MCPs** oder mit `spirit mcp` in der CLI (`list`, `show`, `init`, `enable`, `disable`, `inspect`, `tools`, `call-tool`, …).

MCP-Tools werden in dieselbe Tool-Liste integriert, die der Agent bereits hat. Sie durchlaufen weiterhin die [Genehmigung](../agent/approvals.mdx), wenn sie ein hohes Risiko darstellen.

## Dateifelder [#dateifelder]

Das Root-Objekt hat nur `servers`. Jeder Server muss `transport` enthalten, mit `type` gesetzt auf `stdio` oder `http`.

| Feld                     | Beschreibung                                                                               |
| ------------------------ | ------------------------------------------------------------------------------------------ |
| `servers`                | Objekt. Schlüssel sind Servernamen                                                         |
| `displayName`            | Optional. UI-Label; standardmäßig der Servername. `display_name` wird ebenfalls akzeptiert |
| `enabled`                | Optional. Standardmäßig `true`                                                             |
| `capabilities.tools`     | Optional. Standardmäßig `true`                                                             |
| `capabilities.resources` | Optional. Standardmäßig `true`                                                             |
| `capabilities.prompts`   | Optional. Standardmäßig `true`                                                             |
| `transport.type`         | Erforderlich. `stdio` oder `http`                                                          |

### `stdio` [#stdio]

| Feld        | Beschreibung                                                               |
| ----------- | -------------------------------------------------------------------------- |
| `command`   | Erforderlich. Startbefehl                                                  |
| `args`      | Optional. Befehlsargumente                                                 |
| `env`       | Optional. Umgebungsvariablen. Werte können `${env:NAME}` verwenden         |
| `cwd`       | Optional. Arbeitsverzeichnis                                               |
| `timeoutMs` | Optional. Timeout in Millisekunden. `timeout_ms` wird ebenfalls akzeptiert |
| `stderr`    | Optional. `inherit` (Standard) oder `pipe`                                 |

### `http` [#http]

| Feld        | Beschreibung                                                               |
| ----------- | -------------------------------------------------------------------------- |
| `url`       | Erforderlich. Server-URL                                                   |
| `headers`   | Optional. Anfrage-Header. Werte können `${env:NAME}` verwenden             |
| `timeoutMs` | Optional. Timeout in Millisekunden. `timeout_ms` wird ebenfalls akzeptiert |

## Beispiel [#beispiel]

```json
{
  "servers": {
    "local-docs": {
      "displayName": "Local docs",
      "enabled": true,
      "capabilities": {
        "tools": true,
        "resources": true,
        "prompts": false
      },
      "transport": {
        "type": "stdio",
        "command": "npx",
        "args": ["-y", "example-mcp-server"],
        "env": {
          "API_TOKEN": "${env:EXAMPLE_API_TOKEN}"
        },
        "cwd": "/path/to/workspace",
        "timeoutMs": 15000,
        "stderr": "pipe"
      }
    },
    "remote-tools": {
      "transport": {
        "type": "http",
        "url": "https://mcp.example.com/mcp",
        "headers": {
          "Authorization": "Bearer ${env:EXAMPLE_MCP_TOKEN}"
        },
        "timeoutMs": 20000
      }
    }
  }
}
```
