Buckets:
| title: MCP-servere | |
| description: Tilføj lokale og eksterne MCP værktøjer. | |
| Du kan tilføje eksterne værktøjer til OpenCode ved hjælp af _Model Context Protocol_ eller MCP. OpenCode understøtter både lokale og eksterne servere. | |
| Når de er tilføjet, er MCP automatisk tilgængelig for LLM sammen med indbyggede værktøjer. | |
| #### Forbehold | |
| Når du bruger en MCP-server, føjes den til konteksten. Dette kan hurtigt stige, hvis du har mange værktøjer. Så vi anbefaler at være forsigtig med hvilke MCP-servere du bruger. | |
| :::tip | |
| MCP-servere tilføjer til din kontekst, så du vil være forsigtig med, hvilke du aktiverer. | |
| ::: | |
| Visse MCP-servere, som GitHub MCP-servere, har en tendens til at tilføje mange tokens og kan nemt overskride kontekstgrænsen. | |
| ## Aktivering | |
| Du kan definere MCP-servere i din [OpenCode Config](https://opencode.ai/docs/config/) under `mcp`. Tilføj hver MCP med et unikt navn. Du kan henvise til denne MCP ved navn, når du spørger LLM. | |
| ```jsonc title="opencode.jsonc" {6} | |
| { | |
| "$schema": "https://opencode.ai/config.json", | |
| "mcp": { | |
| "name-of-mcp-server": { | |
| // ... | |
| "enabled": true, | |
| }, | |
| "name-of-other-mcp-server": { | |
| // ... | |
| }, | |
| }, | |
| } | |
| ``` | |
| Du kan også deaktivere en server ved at indstille `enabled` til `false`. Dette er nyttigt, hvis du midlertidigt vil deaktivere en server uden at fjerne den fra din konfiguration. | |
| ### Tilsidesættelse af eksterne standarder | |
| Organisationer kan levere standard MCP-servere via deres `.well-known/opencode`-slutpunkt. Disse servere kan være deaktiveret som standard, hvilket giver brugerne mulighed for at tilmelde sig dem, de har brug for. | |
| For at aktivere en specifik server fra din organisationers fjernkonfiguration skal du tilføje den til din lokale konfiguration med `enabled: true`: | |
| ```json title="opencode.json" | |
| { | |
| "$schema": "https://opencode.ai/config.json", | |
| "mcp": { | |
| "jira": { | |
| "type": "remote", | |
| "url": "https://jira.example.com/mcp", | |
| "enabled": true | |
| } | |
| } | |
| } | |
| ``` | |
| Dine lokale konfigurationsværdier tilsidesætter fjernstandarderne. Se [config precedence](/docs/config#precedence-order) for flere detaljer. | |
| ## Lokal | |
| Tilføj lokale MCP-servere ved hjælp af `type` til `"local"` i MCP-objektet. | |
| ```jsonc title="opencode.jsonc" {15} | |
| { | |
| "$schema": "https://opencode.ai/config.json", | |
| "mcp": { | |
| "my-local-mcp-server": { | |
| "type": "local", | |
| // Or ["bun", "x", "my-mcp-command"] | |
| "command": ["npx", "-y", "my-mcp-command"], | |
| "enabled": true, | |
| "environment": { | |
| "MY_ENV_VAR": "my_env_var_value", | |
| }, | |
| }, | |
| }, | |
| } | |
| ``` | |
| Kommandoen er, hvordan den lokale MCP-server starter. Du kan også sende en liste over miljøvariabler ind. | |
| For eksempel kan du tilføje test-MCP-serveren [`@modelcontextprotocol/server-everything`](https://www.npmjs.com/package/@modelcontextprotocol/server-everything). | |
| ```jsonc title="opencode.jsonc" | |
| { | |
| "$schema": "https://opencode.ai/config.json", | |
| "mcp": { | |
| "mcp_everything": { | |
| "type": "local", | |
| "command": ["npx", "-y", "@modelcontextprotocol/server-everything"], | |
| }, | |
| }, | |
| } | |
| ``` | |
| Og for at bruge det kan jeg tilføje `use the mcp_everything tool` til mine prompter. | |
| ```txt "mcp_everything" | |
| use the mcp_everything tool to add the number 3 and 4 | |
| ``` | |
| #### Indstillinger | |
| Her er alle muligheder for at konfigurere en lokal MCP-server. | |
| | Mulighed | Skriv | Påkrævet | Beskrivelse | | |
| | ------------- | ------- | -------- | ------------------------------------------------------------------------------------ | | |
| | `type` | String | Y | Type MCP serverforbindelse, skal være `"local"`. | | |
| | `command` | Array | Y | Kommando og argumenter til at køre MCP-serveren. | | |
| | `environment` | Object | | Miljøvariabler, der skal indstilles, når serveren kører. | | |
| | `enabled` | Boolean | | Aktiver eller deaktiver MCP-serveren ved opstart. | | |
| | `timeout` | Nummer | | Timeout i ms for at hente værktøjer fra MCP-serveren. Standard er 5000 (5 sekunder). | | |
| ## Ekstern | |
| Tilføj ekstern MCP-server ved at indstille `type` til `"remote"`. | |
| ```json title="opencode.json" | |
| { | |
| "$schema": "https://opencode.ai/config.json", | |
| "mcp": { | |
| "my-remote-mcp": { | |
| "type": "remote", | |
| "url": "https://my-mcp-server.com", | |
| "enabled": true, | |
| "headers": { | |
| "Authorization": "Bearer MY_API_KEY" | |
| } | |
| } | |
| } | |
| } | |
| ``` | |
| `url` er URL for den eksterne MCP server, og med indstillingen `headers` kan du sende en liste over overskrifter ind. | |
| #### Indstillinger | |
| | Mulighed | Skriv | Påkrævet | Beskrivelse | | |
| | --------- | ------- | -------- | ------------------------------------------------------------------------------------ | | |
| | `type` | String | Y | Type MCP serverforbindelse, skal være `"remote"`. | | |
| | `url` | String | Y | URL af den eksterne MCP-server. | | |
| | `enabled` | Boolean | | Aktiver eller deaktiver MCP-serveren ved opstart. | | |
| | `headers` | Object | | Overskrifter til at sende med anmodningen. | | |
| | `oauth` | Object | | OAuth-godkendelseskonfiguration. Se afsnittet [OAuth](#oauth) nedenfor. | | |
| | `timeout` | Nummer | | Timeout i ms for at hente værktøjer fra MCP-serveren. Standard er 5000 (5 sekunder). | | |
| ## OAuth | |
| OpenCode håndterer automatisk OAuth-godkendelse for eksterne MCP-servere. Når en server kræver godkendelse, vil OpenCode: | |
| 1. Registrer 401-svaret, og start OAuth-flowet | |
| 2. Brug **Dynamic Client Registration (RFC 7591)**, hvis det understøtter af serveren | |
| 3. Opbevar tokens sikkert til fremtidige anmodninger | |
| ### Automatisk | |
| For de fleste OAuth-aktiverede MCP-servere kræver ingen speciel konfiguration. Bare konfigureret fjernserver: | |
| ```json title="opencode.json" | |
| { | |
| "$schema": "https://opencode.ai/config.json", | |
| "mcp": { | |
| "my-oauth-server": { | |
| "type": "remote", | |
| "url": "https://mcp.example.com/mcp" | |
| } | |
| } | |
| } | |
| ``` | |
| Hvis serveren kræver godkendelse, vil OpenCode bede dig om at godkende, når du prøver at bruge den første gang. Hvis ikke, kan du [manually trigger the flow](#authenticating) med `opencode mcp auth <server-name>`. | |
| ### Forhåndsregistreret | |
| Hvis du har klientlegitimationsoplysninger fra MCP-serverudbyderen, kan du konfigurere dem: | |
| ```json title="opencode.json" {7-11} | |
| { | |
| "$schema": "https://opencode.ai/config.json", | |
| "mcp": { | |
| "my-oauth-server": { | |
| "type": "remote", | |
| "url": "https://mcp.example.com/mcp", | |
| "oauth": { | |
| "clientId": "{env:MY_MCP_CLIENT_ID}", | |
| "clientSecret": "{env:MY_MCP_CLIENT_SECRET}", | |
| "scope": "tools:read tools:execute" | |
| } | |
| } | |
| } | |
| } | |
| ``` | |
| ### Godkendelse | |
| Du kan manuelt udløse godkendelse eller administrere legitimationsoplysninger. | |
| Godkendt med en specifik MCP-server: | |
| ```bash | |
| opencode mcp auth my-oauth-server | |
| ``` | |
| Liste over alle MCP-servere og deres godkendelsesstatus: | |
| ```bash | |
| opencode mcp list | |
| ``` | |
| Fjern gemte legitimationsoplysninger: | |
| ```bash | |
| opencode mcp logout my-oauth-server | |
| ``` | |
| Kommandoen `mcp auth` åbner din browser for godkendelse. Når du har godkendt, vil OpenCode opbevare tokens sikkert i `~/.local/share/opencode/mcp-auth.json`. | |
| #### Deaktivering af OAuth | |
| Hvis du vil deaktivere automatisk OAuth for en server (f.eks. for servere, der bruger API-nøgler i stedet), skal du indstille `oauth` til `false`: | |
| ```json title="opencode.json" {7} | |
| { | |
| "$schema": "https://opencode.ai/config.json", | |
| "mcp": { | |
| "my-api-key-server": { | |
| "type": "remote", | |
| "url": "https://mcp.example.com/mcp", | |
| "oauth": false, | |
| "headers": { | |
| "Authorization": "Bearer {env:MY_API_KEY}" | |
| } | |
| } | |
| } | |
| } | |
| ``` | |
| #### OAuth-indstillinger | |
| | Mulighed | Skriv | Beskrivelse | | |
| | -------------- | --------------- | ----------------------------------------------------------------------------------------- | | |
| | `oauth` | Object \| false | OAuth-konfigurationsobjekt eller `false` for at deaktivere OAuth-auto-detektion. | | |
| | `clientId` | String | OAuth-klient-id. Hvis det ikke er angivet, vil dynamisk klientregistrering blive forsøgt. | | |
| | `clientSecret` | String | OAuth-klienthemmelighed, hvis det kræves af autorisationsserveren. | | |
| | `scope` | String | OAuth-omfang at anmode om under godkendelse. | | |
| #### Fejlfinding | |
| Hvis en ekstern MCP-server ikke kan godkendes, kan du diagnosticere problemer med: | |
| ```bash | |
| # View auth status for all OAuth-capable servers | |
| opencode mcp auth list | |
| # Debug connection and OAuth flow for a specific server | |
| opencode mcp debug my-oauth-server | |
| ``` | |
| Kommandoen `mcp debug` viser den aktuelle godkendelsesstatus, tester HTTP-forbindelse og forsøger OAuth-opdagelsesflowet. | |
| ## Administration | |
| Dine MCPs er tilgængelige som værktøjer i **TK\_** sammen med indbyggede værktøjer. Så du kan administrere dem gennem OpenCode-konfigurationen som ethvert andet værktøj. | |
| ### Global | |
| Det betyder, at du kan aktivere eller deaktivere dem globalt. | |
| ```json title="opencode.json" {14} | |
| { | |
| "$schema": "https://opencode.ai/config.json", | |
| "mcp": { | |
| "my-mcp-foo": { | |
| "type": "local", | |
| "command": ["bun", "x", "my-mcp-command-foo"] | |
| }, | |
| "my-mcp-bar": { | |
| "type": "local", | |
| "command": ["bun", "x", "my-mcp-command-bar"] | |
| } | |
| }, | |
| "tools": { | |
| "my-mcp-foo": false | |
| } | |
| } | |
| ``` | |
| Vi kan også bruge et globmønster til at deaktivere alle matchende MCPs. | |
| ```json title="opencode.json" {14} | |
| { | |
| "$schema": "https://opencode.ai/config.json", | |
| "mcp": { | |
| "my-mcp-foo": { | |
| "type": "local", | |
| "command": ["bun", "x", "my-mcp-command-foo"] | |
| }, | |
| "my-mcp-bar": { | |
| "type": "local", | |
| "command": ["bun", "x", "my-mcp-command-bar"] | |
| } | |
| }, | |
| "tools": { | |
| "my-mcp*": false | |
| } | |
| } | |
| ``` | |
| Her bruger vi globmønsteret `my-mcp*` til at deaktivere alle MCPs. | |
| ### Per agent | |
| Hvis du har et stort antal MCP-servere, vil du måske kun aktivere dem pr. agent og deaktivere dem globalt. Sådan gør du: | |
| 1. Deaktiver det som et værktøj globalt. | |
| 2. Aktiver MCP-serveren som et værktøj i din [agent config](/docs/agents#tools). | |
| ```json title="opencode.json" {11, 14-18} | |
| { | |
| "$schema": "https://opencode.ai/config.json", | |
| "mcp": { | |
| "my-mcp": { | |
| "type": "local", | |
| "command": ["bun", "x", "my-mcp-command"], | |
| "enabled": true | |
| } | |
| }, | |
| "tools": { | |
| "my-mcp*": false | |
| }, | |
| "agent": { | |
| "my-agent": { | |
| "tools": { | |
| "my-mcp*": true | |
| } | |
| } | |
| } | |
| } | |
| ``` | |
| #### Glob-mønstre | |
| Glob-mønsteret bruger simple regex-globing-mønstre: | |
| - `*` matcher nul eller flere af ethvert tegn (f.eks. `"my-mcp*"` matcher `my-mcp_search`, `my-mcp_list` osv.) | |
| - `?` matcher nøjagtigt ét tegn | |
| - Alle andre karakterer matcher bogstaveligt talt | |
| :::note | |
| MCP serverværktøjer er registreret med servernavn som præfiks, så for at deaktivere alle værktøjer til en server skal du blot bruge: | |
| ``` | |
| "mymcpservername_*": false | |
| ``` | |
| ::: | |
| ## Eksempler | |
| Nedenfor er eksempler på nogle almindelige MCP-servere. Du kan indsende en PR, hvis du vil dokumentere andre servere. | |
| ### Sentry | |
| Tilføj [Sentry MCP server](https://mcp.sentry.dev) for at interagere med dine Sentry-projekter og -problemer. | |
| ```json title="opencode.json" {4-8} | |
| { | |
| "$schema": "https://opencode.ai/config.json", | |
| "mcp": { | |
| "sentry": { | |
| "type": "remote", | |
| "url": "https://mcp.sentry.dev/mcp", | |
| "oauth": {} | |
| } | |
| } | |
| } | |
| ``` | |
| Efter tilføjelse af konfigurationen skal du godkende med Sentry: | |
| ```bash | |
| opencode mcp auth sentry | |
| ``` | |
| Dette åbner et browservindue for at fuldføre OAuth-flowet og forbinde OpenCode til din Sentry-konto. | |
| Når du er godkendt, kan du bruge Sentry-værktøjer i dine prompter til at forespørge om problemer, projekter og fejldata. | |
| ```txt "use sentry" | |
| Show me the latest unresolved issues in my project. use sentry | |
| ``` | |
| ### Context7 | |
| Tilføj [Context7 MCP server](https://github.com/upstash/context7) for at søge i dokumenter. | |
| ```json title="opencode.json" {4-7} | |
| { | |
| "$schema": "https://opencode.ai/config.json", | |
| "mcp": { | |
| "context7": { | |
| "type": "remote", | |
| "url": "https://mcp.context7.com/mcp" | |
| } | |
| } | |
| } | |
| ``` | |
| Hvis du har tilmeldt dig en gratis konto, kan du bruge din API-nøgle og få højere satsgrænser. | |
| ```json title="opencode.json" {7-9} | |
| { | |
| "$schema": "https://opencode.ai/config.json", | |
| "mcp": { | |
| "context7": { | |
| "type": "remote", | |
| "url": "https://mcp.context7.com/mcp", | |
| "headers": { | |
| "CONTEXT7_API_KEY": "{env:CONTEXT7_API_KEY}" | |
| } | |
| } | |
| } | |
| } | |
| ``` | |
| Her antager vi, at du har sat miljøvariablen `CONTEXT7_API_KEY`. | |
| Føj `use context7` til dine prompter for at bruge Context7 MCP server. | |
| ```txt "use context7" | |
| Configure a Cloudflare Worker script to cache JSON API responses for five minutes. use context7 | |
| ``` | |
| Alternativt kan du tilføje noget som dette til din [AGENTS.md](/docs/rules/). | |
| ```md title="AGENTS.md" | |
| When you need to search docs, use `context7` tools. | |
| ``` | |
| ### Grep by Vercel | |
| Tilføj serveren [Grep by Vercel](https://grep.app) MCP for at søge gennem kodestykker på GitHub. | |
| ```json title="opencode.json" {4-7} | |
| { | |
| "$schema": "https://opencode.ai/config.json", | |
| "mcp": { | |
| "gh_grep": { | |
| "type": "remote", | |
| "url": "https://mcp.grep.app" | |
| } | |
| } | |
| } | |
| ``` | |
| Da vi navngav vores MCP-server `gh_grep`, kan du tilføje `use the gh_grep tool` til dine prompter for at få agenten til at bruge den. | |
| ```txt "use the gh_grep tool" | |
| What's the right way to set a custom domain in an SST Astro component? use the gh_grep tool | |
| ``` | |
| Alternativt kan du tilføje noget som dette til din [AGENTS.md](/docs/rules/). | |
| ```md title="AGENTS.md" | |
| If you are unsure how to do something, use `gh_grep` to search code examples from GitHub. | |
| ``` | |
Xet Storage Details
- Size:
- 14.4 kB
- Xet hash:
- 12084f03e0c47f847c23dba40dc7e13632d1a1a2c4851f0fd3680767e2e6d92e
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.