10 10
11Este guia o orienta através da conexão de um servidor MCP de ponta a ponta com a CLI do Claude Code. Ao final, você terá um servidor conectado e respondendo, saberá onde sua configuração reside no disco e saberá como corrigir os erros de conexão mais comuns.11Este guia o orienta através da conexão de um servidor MCP de ponta a ponta com a CLI do Claude Code. Ao final, você terá um servidor conectado e respondendo, saberá onde sua configuração reside no disco e saberá como corrigir os erros de conexão mais comuns.
12 12
13<Note>13> [!NOTE]
14 Você também pode adicionar servidores MCP de outras superfícies, incluindo o aplicativo desktop, VS Code e a web. Consulte [Conectar de outras superfícies](#connect-from-other-surfaces).14>
15</Note>15> Você também pode adicionar servidores MCP de outras superfícies, incluindo o aplicativo desktop, VS Code e a web. Consulte [Conectar de outras superfícies](#connect-from-other-surfaces).
16 16
17Para cada forma de conectar e configurar servidores MCP no Claude Code, consulte a [referência MCP](/docs/pt/mcp).17Para cada forma de conectar e configurar servidores MCP no Claude Code, consulte a [referência MCP](/docs/pt/mcp).
18 18
19<h2 id="before-you-begin">19## Antes de começar
20 Antes de começar
21</h2>
22 20
23Certifique-se de que você tem:21Certifique-se de que você tem:
24 22
25* [Claude Code instalado](/docs/pt/quickstart) e autenticado23* [Claude Code instalado](/docs/pt/quickstart) e autenticado
26* Um terminal aberto em um diretório de projeto. Qualquer diretório funciona, incluindo um vazio.24* Um terminal aberto em um diretório de projeto. Qualquer diretório funciona, incluindo um vazio.
27 25
28<h2 id="add-and-verify-a-server">26## Adicionar e verificar um servidor
29 Adicionar e verificar um servidor
30</h2>
31 27
32O exemplo abaixo conecta ao [servidor MCP de documentação do Claude Code](https://code.claude.com/docs/mcp), um servidor hospedado com busca de texto completo sobre os documentos do Claude Code. Ele não requer autenticação ou nenhuma configuração especial, portanto funciona bem como primeiro servidor para testar o fluxo de configuração.28O exemplo abaixo conecta ao [servidor MCP de documentação do Claude Code](https://code.claude.com/docs/mcp), um servidor hospedado com busca de texto completo sobre os documentos do Claude Code. Ele não requer autenticação ou nenhuma configuração especial, portanto funciona bem como primeiro servidor para testar o fluxo de configuração.
33 29
34As etapas são as mesmas para qualquer servidor: adicione-o, verifique o status da conexão e use-o em uma sessão, com uma etapa de limpeza opcional no final. Alguns servidores adicionam uma etapa, como um login no navegador, mostrado em [Exemplos adicionais de servidor MCP](#additional-mcp-server-examples). Para mais servidores para conectar, navegue pelo [Diretório Anthropic](/docs/pt/mcp#find-and-build-mcp-servers).30As etapas são as mesmas para qualquer servidor: adicione-o, verifique o status da conexão e use-o em uma sessão, com uma etapa de limpeza opcional no final. Alguns servidores adicionam uma etapa, como um login no navegador, mostrado em [Exemplos adicionais de servidor MCP](#additional-mcp-server-examples). Para mais servidores para conectar, navegue pelo [Diretório Anthropic](/docs/pt/mcp#find-and-build-mcp-servers).
35 31
36<Steps>32**1. Adicionar o servidor MCP**
37 <Step title="Adicionar o servidor MCP">
38 Registre o servidor com o Claude Code. Execute isto em seu terminal, não dentro de uma sessão `claude`: você está configurando o servidor antes de iniciar uma conversa.
39 33
40 ```bash theme={null}34Registre o servidor com o Claude Code. Execute isto em seu terminal, não dentro de uma sessão `claude`: você está configurando o servidor antes de iniciar uma conversa.
41 claude mcp add --transport http claude-code-docs https://code.claude.com/docs/mcp
42 ```
43 35
44 As partes do comando:36```bash theme={null}
37claude mcp add --transport http claude-code-docs https://code.claude.com/docs/mcp
38```
45 39
46 * `claude mcp add`: registra um servidor com o Claude Code.40As partes do comando:
47 * `--transport http`: o servidor é hospedado em uma URL em vez de ser executado como um processo local.
48 * `claude-code-docs`: um nome que você cria. Chamar o mesmo servidor de `docs` funcionaria de forma idêntica. O Claude Code usa o nome que você escolher para rotular as ferramentas do servidor na saída do Claude e para se referir ao servidor em comandos como `claude mcp remove`.
49 * `https://code.claude.com/docs/mcp`: a URL onde o servidor é hospedado.
50 41
51 O comando imprime uma confirmação como `Added HTTP MCP server claude-code-docs with URL: https://code.claude.com/docs/mcp to local config`, seguida por uma linha `File modified:` mostrando o arquivo de configuração que foi escrito. A parte `local config` significa que o servidor está registrado para você, neste projeto: se você iniciar o Claude Code em um projeto diferente, este servidor não está ativo lá. Para registrar um servidor uma vez para todos os seus projetos, adicione-o no escopo do usuário, coberto em [Alterar escopo do servidor](#change-server-scope).42* `claude mcp add`: registra um servidor com o Claude Code.
52 </Step>43* `--transport http`: o servidor é hospedado em uma URL em vez de ser executado como um processo local.
44* `claude-code-docs`: um nome que você cria. Chamar o mesmo servidor de `docs` funcionaria de forma idêntica. O Claude Code usa o nome que você escolher para rotular as ferramentas do servidor na saída do Claude e para se referir ao servidor em comandos como `claude mcp remove`.
45* `https://code.claude.com/docs/mcp`: a URL onde o servidor é hospedado.
53 46
54 <Step title="Verificar o status da conexão">47O comando imprime uma confirmação como `Added HTTP MCP server claude-code-docs with URL: https://code.claude.com/docs/mcp to local config`, seguida por uma linha `File modified:` mostrando o arquivo de configuração que foi escrito. A parte `local config` significa que o servidor está registrado para você, neste projeto: se você iniciar o Claude Code em um projeto diferente, este servidor não está ativo lá. Para registrar um servidor uma vez para todos os seus projetos, adicione-o no escopo do usuário, coberto em [Alterar escopo do servidor](#change-server-scope).
55 Confirme que o servidor aparece em sua lista de servidores e verifique seu status:
56 48
57 ```bash theme={null}49**2. Verificar o status da conexão**
58 claude mcp list
59 ```
60 50
61 O servidor aparece com um indicador de status:51Confirme que o servidor aparece em sua lista de servidores e verifique seu status:
62 52
63 | Status | Significado |53```bash theme={null}
64 | :- | :- |54claude mcp list
65 | `✔ Connected` | Pronto para usar. Isto é o que você deve ver para `claude-code-docs` |55```
66 | `! Connected · tools fetch failed` | O servidor conectou mas não conseguiu listar suas ferramentas. Execute `claude mcp get <name>` para obter o detalhe do erro |
67 | `! Needs authentication` | O servidor é alcançável mas precisa de um login no navegador, ou um token passado com `--header`. Consulte [Conectar um servidor que requer login](#connect-a-server-that-requires-sign-in) |
68 | `✘ Failed to connect` | O servidor não respondeu. Consulte [Troubleshooting](#troubleshooting) |
69 | `✘ Connection error` | A tentativa de conexão lançou um erro. Consulte [Troubleshooting](#troubleshooting) |
70 | ``⏸ Pending approval (run `claude` to approve)`` | Um servidor com escopo de projeto que você ainda não aprovou. Consulte [Editar .mcp.json diretamente](#edit-mcp-json-directly) |
71 | `⊘ Disabled for this project (re-enable via /mcp)` | Um servidor desativado para este projeto pela lista `disabledMcpServers` do projeto. Consulte [Desativar um servidor sem removê-lo](/docs/pt/mcp#disable-a-server-without-removing-it) |
72 56
73 Alguns consoles Windows legados, como o console padrão no Windows 10, não suportam esses glifos Unicode e mostram `√` e `×` no lugar de `✔` e `✘`.57O servidor aparece com um indicador de status:
74 </Step>
75 58
76 <Step title="Usar o servidor">59| Status | Significado |
77 Inicie uma sessão e peça ao Claude para usar o novo servidor pelo nome:60| :- | :- |
61| `✔ Connected` | Pronto para usar. Isto é o que você deve ver para `claude-code-docs` |
62| `! Connected · tools fetch failed` | O servidor conectou mas não conseguiu listar suas ferramentas. Execute `claude mcp get <name>` para obter o detalhe do erro |
63| `! Needs authentication` | O servidor é alcançável mas precisa de um login no navegador, ou um token passado com `--header`. Consulte [Conectar um servidor que requer login](#connect-a-server-that-requires-sign-in) |
64| `✘ Failed to connect` | O servidor não respondeu. Consulte [Troubleshooting](#troubleshooting) |
65| `✘ Connection error` | A tentativa de conexão lançou um erro. Consulte [Troubleshooting](#troubleshooting) |
66| ``⏸ Pending approval (run `claude` to approve)`` | Um servidor com escopo de projeto que você ainda não aprovou. Consulte [Editar .mcp.json diretamente](#edit-mcp-json-directly) |
67| `⊘ Disabled for this project (re-enable via /mcp)` | Um servidor desativado para este projeto pela lista `disabledMcpServers` do projeto. Consulte [Desativar um servidor sem removê-lo](/docs/pt/mcp#disable-a-server-without-removing-it) |
78 68
79 ```bash theme={null}69Alguns consoles Windows legados, como o console padrão no Windows 10, não suportam esses glifos Unicode e mostram `√` e `×` no lugar de `✔` e `✘`.
80 claude
81 ```
82 70
83 ```text wrap theme={null}71**3. Usar o servidor**
84 Use the claude-code-docs server to look up what MCP_TIMEOUT does
85 ```
86 72
87 <Info>73Inicie uma sessão e peça ao Claude para usar o novo servidor pelo nome:
88 Você normalmente não precisa nomear um servidor em seu prompt, já que o Claude escolhe ferramentas relevantes por conta própria. Nomeá-lo aqui garante que a demonstração passe pelo novo servidor em vez de outra ferramenta, como web fetch, que poderia responder a mesma pergunta.
89 </Info>
90 74
91 Se o Claude Code pedir permissão na primeira vez que o Claude chamar o servidor, aprove-a. A chamada de ferramenta na saída do Claude é rotulada com o nome do servidor, que é como você confirma que a resposta veio do servidor MCP em vez do conhecimento integrado do Claude.75```bash theme={null}
92 </Step>76claude
77```
93 78
94 <Step title="Remover o servidor">79```text wrap theme={null}
95 Esta etapa é opcional. Quando terminar de experimentar, você pode remover o servidor:80Use the claude-code-docs server to look up what MCP_TIMEOUT does
81```
96 82
97 ```bash theme={null}83> [!NOTE]
98 claude mcp remove claude-code-docs84>
99 ```85> Você normalmente não precisa nomear um servidor em seu prompt, já que o Claude escolhe ferramentas relevantes por conta própria. Nomeá-lo aqui garante que a demonstração passe pelo novo servidor em vez de outra ferramenta, como web fetch, que poderia responder a mesma pergunta.
100 86
101 O comando confirma com `Removed MCP server "claude-code-docs" from local config` e uma linha `File modified:` mostrando o arquivo que foi atualizado.87Se o Claude Code pedir permissão na primeira vez que o Claude chamar o servidor, aprove-a. A chamada de ferramenta na saída do Claude é rotulada com o nome do servidor, que é como você confirma que a resposta veio do servidor MCP em vez do conhecimento integrado do Claude.
102 88
103 <Note>89**4. Remover o servidor**
104 Cada servidor conectado ocupa espaço na [janela de contexto do Claude](/docs/pt/how-claude-code-works#the-context-window) porque seus nomes de ferramentas e instruções do servidor são carregados em cada sessão. Remover servidores que você não usa mais mantém esse espaço livre.
105 </Note>
106 </Step>
107</Steps>
108 90
109<h2 id="where-servers-are-saved">91Esta etapa é opcional. Quando terminar de experimentar, você pode remover o servidor:
110 Onde os servidores são salvos92
111</h2>93```bash theme={null}
94claude mcp remove claude-code-docs
95```
96
97O comando confirma com `Removed MCP server "claude-code-docs" from local config` e uma linha `File modified:` mostrando o arquivo que foi atualizado.
98
99> [!NOTE]
100>
101> Cada servidor conectado ocupa espaço na [janela de contexto do Claude](/docs/pt/how-claude-code-works#the-context-window) porque seus nomes de ferramentas e instruções do servidor são carregados em cada sessão. Remover servidores que você não usa mais mantém esse espaço livre.
102
103## Onde os servidores são salvos
112 104
113O comando `claude mcp add` escreve os detalhes do servidor em um arquivo de configuração. Por padrão, ele registra o servidor no escopo `local`: privado para você, ativo apenas no projeto atual. Passe `--scope user` para registrá-lo uma vez para todos os seus projetos, ou `--scope project` para compartilhá-lo com colegas de equipe. [Alterar escopo do servidor](#change-server-scope) percorre ambos.105O comando `claude mcp add` escreve os detalhes do servidor em um arquivo de configuração. Por padrão, ele registra o servidor no escopo `local`: privado para você, ativo apenas no projeto atual. Passe `--scope user` para registrá-lo uma vez para todos os seus projetos, ou `--scope project` para compartilhá-lo com colegas de equipe. [Alterar escopo do servidor](#change-server-scope) percorre ambos.
114 106
115<Note>107> [!NOTE]
116 `claude mcp add` funciona da mesma forma em cada shell, incluindo PowerShell e Command Prompt. Dentro de uma sessão `claude`, use o comando `/mcp` para verificar e gerenciar servidores que você já adicionou.108>
117</Note>109> `claude mcp add` funciona da mesma forma em cada shell, incluindo PowerShell e Command Prompt. Dentro de uma sessão `claude`, use o comando `/mcp` para verificar e gerenciar servidores que você já adicionou.
118 110
119Existem outras formas de adicionar um servidor, cada uma com sua própria seção:111Existem outras formas de adicionar um servidor, cada uma com sua própria seção:
120 112
122* [Editar `.mcp.json` diretamente](#edit-mcp-json-directly): escreva a entrada JSON você mesmo em vez de usar o comando.114* [Editar `.mcp.json` diretamente](#edit-mcp-json-directly): escreva a entrada JSON você mesmo em vez de usar o comando.
123* [Conectar um servidor que requer login](#connect-a-server-that-requires-sign-in): adicione um servidor hospedado que precisa de um login no navegador antes de suas ferramentas funcionarem.115* [Conectar um servidor que requer login](#connect-a-server-that-requires-sign-in): adicione um servidor hospedado que precisa de um login no navegador antes de suas ferramentas funcionarem.
124 116
125<h3 id="find-your-configuration-on-disk">117### Encontre sua configuração no disco
126 Encontre sua configuração no disco
127</h3>
128 118
129O comando `claude mcp add` escreve o servidor em um dos três escopos, armazenados em dois arquivos, dependendo da flag `--scope`. Você não precisa editar esses arquivos diretamente, mas saber onde eles estão ajuda na depuração e controle de versão.119O comando `claude mcp add` escreve o servidor em um dos três escopos, armazenados em dois arquivos, dependendo da flag `--scope`. Você não precisa editar esses arquivos diretamente, mas saber onde eles estão ajuda na depuração e controle de versão.
130 120
138 128
139Execute `claude mcp get claude-code-docs` para ver qual escopo contém a definição de um servidor. Para como os escopos interagem quando o mesmo servidor é definido em mais de um, consulte [Escopos de instalação MCP](/docs/pt/mcp#mcp-installation-scopes).129Execute `claude mcp get claude-code-docs` para ver qual escopo contém a definição de um servidor. Para como os escopos interagem quando o mesmo servidor é definido em mais de um, consulte [Escopos de instalação MCP](/docs/pt/mcp#mcp-installation-scopes).
140 130
141<h2 id="change-server-scope">131## Alterar escopo do servidor
142 Alterar escopo do servidor
143</h2>
144 132
145O escopo de um servidor é fixo quando você o adiciona, portanto alterar o escopo significa remover a entrada e readicioná-la no novo. Ambos os casos abaixo começam removendo a entrada local do primeiro passo a passo, para que o servidor tenha apenas uma definição. Se você já o removeu no final desse passo a passo, pule este comando:133O escopo de um servidor é fixo quando você o adiciona, portanto alterar o escopo significa remover a entrada e readicioná-la no novo. Ambos os casos abaixo começam removendo a entrada local do primeiro passo a passo, para que o servidor tenha apenas uma definição. Se você já o removeu no final desse passo a passo, pule este comando:
146 134
148claude mcp remove claude-code-docs --scope local136claude mcp remove claude-code-docs --scope local
149```137```
150 138
151<h3 id="use-a-server-in-all-your-projects">139### Usar um servidor em todos os seus projetos
152 Usar um servidor em todos os seus projetos
153</h3>
154 140
155Readicione o servidor no escopo `user` para torná-lo ativo em cada projeto que você abre, ainda privado para você:141Readicione o servidor no escopo `user` para torná-lo ativo em cada projeto que você abre, ainda privado para você:
156 142
158claude mcp add --scope user --transport http claude-code-docs https://code.claude.com/docs/mcp144claude mcp add --scope user --transport http claude-code-docs https://code.claude.com/docs/mcp
159```145```
160 146
161<h3 id="share-a-server-with-your-team">147### Compartilhar um servidor com sua equipe
162 Compartilhar um servidor com sua equipe
163</h3>
164 148
165Readicione o servidor no escopo `project`, que escreve em `.mcp.json` na raiz do projeto:149Readicione o servidor no escopo `project`, que escreve em `.mcp.json` na raiz do projeto:
166 150
170 154
171Confirme `.mcp.json` no controle de versão. Colegas de equipe que clonam o repositório e iniciam o Claude Code veem um prompt para aprovar o servidor, então ele se conecta para eles também.155Confirme `.mcp.json` no controle de versão. Colegas de equipe que clonam o repositório e iniciam o Claude Code veem um prompt para aprovar o servidor, então ele se conecta para eles também.
172 156
173<h2 id="additional-mcp-server-examples">157## Exemplos adicionais de servidor MCP
174 Exemplos adicionais de servidor MCP
175</h2>
176 158
177O primeiro passo a passo usou um servidor hospedado que se conecta sem nenhum login. Os exemplos abaixo cobrem as outras duas formas comuns, com o mesmo fluxo de adicionar, verificar, usar.159O primeiro passo a passo usou um servidor hospedado que se conecta sem nenhum login. Os exemplos abaixo cobrem as outras duas formas comuns, com o mesmo fluxo de adicionar, verificar, usar.
178 160
179<h3 id="add-a-local-server">161### Adicionar um servidor local
180 Adicionar um servidor local
181</h3>
182 162
183Um servidor stdio local é um programa que o Claude Code inicia como um subprocesso em sua máquina, em vez de um serviço que ele alcança por uma URL. Use um para ferramentas que precisam de acesso a recursos locais como um navegador, seu sistema de arquivos ou um socket de banco de dados.163Um servidor stdio local é um programa que o Claude Code inicia como um subprocesso em sua máquina, em vez de um serviço que ele alcança por uma URL. Use um para ferramentas que precisam de acesso a recursos locais como um navegador, seu sistema de arquivos ou um socket de banco de dados.
184 164
185O [servidor MCP Playwright](https://github.com/microsoft/playwright-mcp) é um bom para tentar: ele dá ao Claude um navegador que ele pode navegar, clicar e ler, e não precisa de nenhuma conta. Ele é executado através de `npx`, portanto requer [Node.js](https://nodejs.org/en/download) 18 ou posterior.165O [servidor MCP Playwright](https://github.com/microsoft/playwright-mcp) é um bom para tentar: ele dá ao Claude um navegador que ele pode navegar, clicar e ler, e não precisa de nenhuma conta. Ele é executado através de `npx`, portanto requer [Node.js](https://nodejs.org/en/download) 18 ou posterior.
186 166
187<Steps>167**1. Adicionar o servidor Playwright**
188 <Step title="Adicionar o servidor Playwright">168
189 Registre o servidor com o comando que o Claude Code deve executar para iniciá-lo:169Registre o servidor com o comando que o Claude Code deve executar para iniciá-lo:
170
171```bash theme={null}
172claude mcp add playwright -- npx -y @playwright/mcp@latest
173```
190 174
191 ```bash theme={null}175Este comando difere do exemplo hospedado de três formas:
192 claude mcp add playwright -- npx -y @playwright/mcp@latest
193 ```
194 176
195 Este comando difere do exemplo hospedado de três formas:177* Não há flag `--transport`, porque servidores locais usam o transporte padrão `stdio`.
178* Tudo após o separador `--` é o comando que o Claude Code executa para iniciar o servidor.
179* `-y` diz ao `npx` para instalar o pacote sem solicitar.
196 180
197 * Não há flag `--transport`, porque servidores locais usam o transporte padrão `stdio`.181O comando imprime uma confirmação como `Added stdio MCP server playwright with command: npx -y @playwright/mcp@latest to local config`, seguida por uma linha `File modified:` mostrando o arquivo de configuração que foi escrito.
198 * Tudo após o separador `--` é o comando que o Claude Code executa para iniciar o servidor.
199 * `-y` diz ao `npx` para instalar o pacote sem solicitar.
200 182
201 O comando imprime uma confirmação como `Added stdio MCP server playwright with command: npx -y @playwright/mcp@latest to local config`, seguida por uma linha `File modified:` mostrando o arquivo de configuração que foi escrito.183Playwright controla qualquer Chrome já instalado em sua máquina. Para usar um navegador diferente, anexe `--browser` com o nome do navegador, por exemplo `--browser firefox`, após `@playwright/mcp@latest`.
202 184
203 Playwright controla qualquer Chrome já instalado em sua máquina. Para usar um navegador diferente, anexe `--browser` com o nome do navegador, por exemplo `--browser firefox`, após `@playwright/mcp@latest`.185**2. Verificar a conexão**
204 </Step>
205 186
206 <Step title="Verificar a conexão">187A confirmação `Added` significa que a entrada foi salva, não que o comando é executado. Verifique a conexão:
207 A confirmação `Added` significa que a entrada foi salva, não que o comando é executado. Verifique a conexão:188
189```bash theme={null}
190claude mcp list
191```
208 192
209 ```bash theme={null}193A primeira verificação pode mostrar `✘ Failed to connect` enquanto `npx` baixa o pacote, portanto aguarde um momento e execute novamente. Assim que o download terminar, o status muda para `✔ Connected`. Se ainda mostrar `✘ Failed to connect` após alguns retentativas, consulte [Troubleshooting](#troubleshooting).
210 claude mcp list
211 ```
212 194
213 A primeira verificação pode mostrar `✘ Failed to connect` enquanto `npx` baixa o pacote, portanto aguarde um momento e execute novamente. Assim que o download terminar, o status muda para `✔ Connected`. Se ainda mostrar `✘ Failed to connect` após alguns retentativas, consulte [Troubleshooting](#troubleshooting).195**3. Usar o navegador**
214 </Step>
215 196
216 <Step title="Usar o navegador">197Dê ao Claude uma tarefa que precisa do navegador:
217 Dê ao Claude uma tarefa que precisa do navegador:
218 198
219 ```text wrap theme={null}199```text wrap theme={null}
220 Use playwright to open https://example.com and tell me the page title200Use playwright to open https://example.com and tell me the page title
221 ```201```
222 202
223 Uma janela do navegador abre para que você possa vê-lo funcionar, e as chamadas de ferramenta na saída do Claude são rotuladas com o nome do servidor `playwright` e a ação, como `browser_navigate`.203Uma janela do navegador abre para que você possa vê-lo funcionar, e as chamadas de ferramenta na saída do Claude são rotuladas com o nome do servidor `playwright` e a ação, como `browser_navigate`.
224 204
225 Tente apontá-lo para seu servidor de desenvolvimento local para verificar se uma página ainda é renderizada após uma alteração, ou peça que ele percorra um relatório de bug passo a passo.205Tente apontá-lo para seu servidor de desenvolvimento local para verificar se uma página ainda é renderizada após uma alteração, ou peça que ele percorra um relatório de bug passo a passo.
226 </Step>
227</Steps>
228 206
229<h3 id="connect-a-server-that-requires-sign-in">207### Conectar um servidor que requer login
230 Conectar um servidor que requer login
231</h3>
232 208
233Serviços hospedados como Sentry, Linear e Notion executam seus servidores MCP atrás de OAuth: você adiciona a URL do servidor e depois faz login através de seu navegador.209Serviços hospedados como Sentry, Linear e Notion executam seus servidores MCP atrás de OAuth: você adiciona a URL do servidor e depois faz login através de seu navegador.
234 210
235As etapas abaixo usam Sentry como exemplo. Para conectar um serviço diferente, substitua sua URL, que você pode encontrar no [Diretório Anthropic](/docs/pt/mcp#find-and-build-mcp-servers) ou na documentação do serviço.211As etapas abaixo usam Sentry como exemplo. Para conectar um serviço diferente, substitua sua URL, que você pode encontrar no [Diretório Anthropic](/docs/pt/mcp#find-and-build-mcp-servers) ou na documentação do serviço.
236 212
237<Steps>213**1. Adicionar o servidor**
238 <Step title="Adicionar o servidor">
239 O comando `add` é o mesmo que para o servidor de documentação, com a URL do Sentry:
240 214
241 ```bash theme={null}215O comando `add` é o mesmo que para o servidor de documentação, com a URL do Sentry:
242 claude mcp add --transport http sentry https://mcp.sentry.dev/mcp
243 ```
244 216
245 Após adicionar, `claude mcp list` mostra o servidor com `! Needs authentication`. Isto é esperado: a próxima etapa completa o login.217```bash theme={null}
246 </Step>218claude mcp add --transport http sentry https://mcp.sentry.dev/mcp
219```
247 220
248 <Step title="Autenticar em seu navegador">221Após adicionar, `claude mcp list` mostra o servidor com `! Needs authentication`. Isto é esperado: a próxima etapa completa o login.
249 Inicie uma sessão do Claude Code e abra o painel MCP:
250 222
251 ```text wrap theme={null}223**2. Autenticar em seu navegador**
252 /mcp
253 ```
254 224
255 Selecione `sentry` da lista, pressione Enter e escolha `Authenticate`. Seu navegador abre para a página de login do Sentry. Aprove a conexão lá.225Inicie uma sessão do Claude Code e abra o painel MCP:
256 226
257 De volta ao Claude Code, o status do servidor muda para conectado. Se o login falhar ou o navegador não abrir, consulte [Troubleshooting](#troubleshooting).227```text wrap theme={null}
258 </Step>228/mcp
229```
230
231Selecione `sentry` da lista, pressione Enter e escolha `Authenticate`. Seu navegador abre para a página de login do Sentry. Aprove a conexão lá.
232
233De volta ao Claude Code, o status do servidor muda para conectado. Se o login falhar ou o navegador não abrir, consulte [Troubleshooting](#troubleshooting).
234
235**3. Usar o servidor**
259 236
260 <Step title="Usar o servidor">237Peça ao Claude algo que precisa do serviço, como `What Sentry projects do I have access to?`, e procure por chamadas de ferramenta rotuladas com o nome do servidor `sentry` em sua saída.
261 Peça ao Claude algo que precisa do serviço, como `What Sentry projects do I have access to?`, e procure por chamadas de ferramenta rotuladas com o nome do servidor `sentry` em sua saída.
262 </Step>
263</Steps>
264 238
265Servidores que autenticam com um token estático em vez de OAuth pegam o token no momento da adição com `--header "Authorization: Bearer <token>"`. Consulte o [exemplo do GitHub](/docs/pt/mcp#example-connect-to-github-for-code-reviews) para uma versão trabalhada.239Servidores que autenticam com um token estático em vez de OAuth pegam o token no momento da adição com `--header "Authorization: Bearer <token>"`. Consulte o [exemplo do GitHub](/docs/pt/mcp#example-connect-to-github-for-code-reviews) para uma versão trabalhada.
266 240
267<h2 id="edit-mcp-json-directly">241## Editar .mcp.json diretamente
268 Editar .mcp.json diretamente
269</h2>
270 242
271Cada arquivo na [tabela de escopo](#find-your-configuration-on-disk) usa o mesmo formato JSON para entradas de servidor. Esta seção edita `.mcp.json`, o arquivo de escopo de projeto. É o que mais vale a pena escrever à mão porque é verificado no repositório, onde funciona como configuração como código para sua equipe.243Cada arquivo na [tabela de escopo](#find-your-configuration-on-disk) usa o mesmo formato JSON para entradas de servidor. Esta seção edita `.mcp.json`, o arquivo de escopo de projeto. É o que mais vale a pena escrever à mão porque é verificado no repositório, onde funciona como configuração como código para sua equipe.
272 244
299 271
300Depois de aprovado, execute `/mcp` e verifique se os servidores aparecem como conectados. Se um mostrar um erro em vez disso, consulte [Troubleshooting](#troubleshooting).272Depois de aprovado, execute `/mcp` e verifique se os servidores aparecem como conectados. Se um mostrar um erro em vez disso, consulte [Troubleshooting](#troubleshooting).
301 273
302<h2 id="connect-from-other-surfaces">274## Conectar de outras superfícies
303 Conectar de outras superfícies
304</h2>
305 275
306Este guia usa os comandos CLI `claude mcp`, mas cada superfície do Claude Code pode se conectar a servidores MCP:276Este guia usa os comandos CLI `claude mcp`, mas cada superfície do Claude Code pode se conectar a servidores MCP:
307 277
311* **Sessões na nuvem**: faça commit de um `.mcp.json` no seu repositório; uma sessão com um repositório o carrega. Consulte [Editar .mcp.json diretamente](#edit-mcp-json-directly) e [O que é transferido de sua configuração](/docs/pt/cloud-environments#what-carries-over-from-your-setup).281* **Sessões na nuvem**: faça commit de um `.mcp.json` no seu repositório; uma sessão com um repositório o carrega. Consulte [Editar .mcp.json diretamente](#edit-mcp-json-directly) e [O que é transferido de sua configuração](/docs/pt/cloud-environments#what-carries-over-from-your-setup).
312* **Claude.ai**: conectores que você adiciona em [claude.ai/customize/connectors](https://claude.ai/customize/connectors) são carregados automaticamente na CLI quando você faz login com essa conta. Consulte [Usar servidores MCP do Claude.ai](/docs/pt/mcp#use-mcp-servers-from-claude-ai).282* **Claude.ai**: conectores que você adiciona em [claude.ai/customize/connectors](https://claude.ai/customize/connectors) são carregados automaticamente na CLI quando você faz login com essa conta. Consulte [Usar servidores MCP do Claude.ai](/docs/pt/mcp#use-mcp-servers-from-claude-ai).
313 283
314<h2 id="troubleshooting">284## Troubleshooting
315 Troubleshooting
316</h2>
317 285
318Se um servidor não se conectar, verifique seu status com `/mcp` dentro de uma sessão ou `claude mcp list` do seu shell, depois combine o sintoma abaixo. O painel `/mcp` também permite que você se reconecte ou autentique sem sair da sessão.286Se um servidor não se conectar, verifique seu status com `/mcp` dentro de uma sessão ou `claude mcp list` do seu shell, depois combine o sintoma abaixo. O painel `/mcp` também permite que você se reconecte ou autentique sem sair da sessão.
319 287
320<AccordionGroup>288> **/mcp shows No MCP servers configured**
321 <Accordion title="/mcp shows No MCP servers configured">289>
322 O Claude Code não encontrou nenhum servidor para o diretório atual. As causas mais comuns:290> O Claude Code não encontrou nenhum servidor para o diretório atual. As causas mais comuns:
323 291>
324 * Você executou `claude mcp add` de um projeto diferente. Servidores com escopo local estão vinculados ao projeto onde você os adicionou: a raiz do repositório, ou o diretório exato se você não estava em um repositório git. Readicione o servidor do projeto em que você está agora, ou adicione-o com `--scope user` para que não esteja vinculado a um projeto.292> * Você executou `claude mcp add` de um projeto diferente. Servidores com escopo local estão vinculados ao projeto onde você os adicionou: a raiz do repositório, ou o diretório exato se você não estava em um repositório git. Readicione o servidor do projeto em que você está agora, ou adicione-o com `--scope user` para que não esteja vinculado a um projeto.
325 * Você editou um arquivo de configuração no caminho errado. Os arquivos corretos são `~/.claude.json` e `<project>/.mcp.json`. O Claude Code não lê caminhos como `~/.claude/.mcp.json`, `~/.claude/config/mcp.json`, `~/.claude/mcp.json`, ou `%APPDATA%\Claude\mcp.json`. Para servidores com escopo de usuário, execute `claude mcp add --scope user`, que escreve na chave `mcpServers` em `~/.claude.json`; para servidores com escopo de projeto, edite `.mcp.json` na raiz do projeto.293> * Você editou um arquivo de configuração no caminho errado. Os arquivos corretos são `~/.claude.json` e `<project>/.mcp.json`. O Claude Code não lê caminhos como `~/.claude/.mcp.json`, `~/.claude/config/mcp.json`, `~/.claude/mcp.json`, ou `%APPDATA%\Claude\mcp.json`. Para servidores com escopo de usuário, execute `claude mcp add --scope user`, que escreve na chave `mcpServers` em `~/.claude.json`; para servidores com escopo de projeto, edite `.mcp.json` na raiz do projeto.
326 * Você escreveu uma entrada malformada em `.mcp.json`. O Claude Code pula essa entrada e ainda carrega as outras. Execute `claude mcp list` do seu shell e procure pelo aviso de análise, que nomeia o campo ofensivo.294> * Você escreveu uma entrada malformada em `.mcp.json`. O Claude Code pula essa entrada e ainda carrega as outras. Execute `claude mcp list` do seu shell e procure pelo aviso de análise, que nomeia o campo ofensivo.
327 </Accordion>295
328 296> **Status shows Failed to connect or Connection error**
329 <Accordion title="Status shows Failed to connect or Connection error">297>
330 Ambos os status significam que o servidor não iniciou ou a URL não respondeu. Eles também podem aparecer para servidores HTTP que rejeitam o token que você configurou em `headers.Authorization`; um servidor que quer um token que você não configurou mostra `! Needs authentication` em vez disso, coberto em [Conectar um servidor que requer login](#connect-a-server-that-requires-sign-in).298> Ambos os status significam que o servidor não iniciou ou a URL não respondeu. Eles também podem aparecer para servidores HTTP que rejeitam o token que você configurou em `headers.Authorization`; um servidor que quer um token que você não configurou mostra `! Needs authentication` em vez disso, coberto em [Conectar um servidor que requer login](#connect-a-server-that-requires-sign-in).
331 299>
332 Seu primeiro passo depende de qual status você vê:300> Seu primeiro passo depende de qual status você vê:
333 301>
334 * `Failed to connect`: comece com o detalhe de falha no próprio status. `claude mcp list` e `claude mcp get <name>` mostram o status HTTP ou código de erro e qualquer texto de erro que o servidor retornou, que frequentemente nomeia o problema diretamente, como um cabeçalho ausente ou um token rejeitado. Antes da v2.1.219, `Failed to connect` mostrava apenas o status simples, e você precisava das verificações curl e comando mais adiante nesta seção para encontrar a causa.302> * `Failed to connect`: comece com o detalhe de falha no próprio status. `claude mcp list` e `claude mcp get <name>` mostram o status HTTP ou código de erro e qualquer texto de erro que o servidor retornou, que frequentemente nomeia o problema diretamente, como um cabeçalho ausente ou um token rejeitado. Antes da v2.1.219, `Failed to connect` mostrava apenas o status simples, e você precisava das verificações curl e comando mais adiante nesta seção para encontrar a causa.
335 * `Connection error`: O Claude Code não anexa nenhum detalhe a este status em nenhuma versão, então vá direto para as verificações curl e comando mais adiante nesta seção.303> * `Connection error`: O Claude Code não anexa nenhum detalhe a este status em nenhuma versão, então vá direto para as verificações curl e comando mais adiante nesta seção.
336 304>
337 Se o detalhe apontar para uma credencial ou URL, também verifique os avisos na saída `claude mcp list`. O Claude Code sinaliza valores de configuração com espaço em branco oculto à esquerda ou à direita, uma causa comum de falhas de autenticação após colar um token.305> Se o detalhe apontar para uma credencial ou URL, também verifique os avisos na saída `claude mcp list`. O Claude Code sinaliza valores de configuração com espaço em branco oculto à esquerda ou à direita, uma causa comum de falhas de autenticação após colar um token.
338 306>
339 Se um servidor HTTP retorna `404 Not Found`, o Claude Code mostra `MCP endpoint not found at <origin>. Check the URL in your MCP config.` quando você seleciona o servidor em `/mcp`. A mensagem nomeia a origem da URL, como `https://mcp.example.com`, sem seu caminho, então execute `claude mcp get <name>` para ver a URL completa que você configurou. Compare seu caminho com o caminho do endpoint MCP documentado do servidor, depois execute `claude mcp remove <name>` e readicione com a URL correta. Antes da v2.1.219, a mensagem incluía o caminho da URL também, e antes da v2.1.191, um `404` mostrava uma mensagem genérica `Error POSTing to endpoint` sem a URL.307> Se um servidor HTTP retorna `404 Not Found`, o Claude Code mostra `MCP endpoint not found at <origin>. Check the URL in your MCP config.` quando você seleciona o servidor em `/mcp`. A mensagem nomeia a origem da URL, como `https://mcp.example.com`, sem seu caminho, então execute `claude mcp get <name>` para ver a URL completa que você configurou. Compare seu caminho com o caminho do endpoint MCP documentado do servidor, depois execute `claude mcp remove <name>` e readicione com a URL correta. Antes da v2.1.219, a mensagem incluía o caminho da URL também, e antes da v2.1.191, um `404` mostrava uma mensagem genérica `Error POSTing to endpoint` sem a URL.
340 308>
341 Para servidores HTTP, confirme que a URL é alcançável de sua máquina:309> Para servidores HTTP, confirme que a URL é alcançável de sua máquina:
342 310>
343 ```bash theme={null}311> ```bash theme={null}
344 curl -I https://mcp.sentry.dev/mcp312> curl -I https://mcp.sentry.dev/mcp
345 ```313> ```
346 314>
347 No PowerShell, use `curl.exe` em vez de `curl` para que a solicitação vá para o binário curl real em vez do alias `Invoke-WebRequest`.315> No PowerShell, use `curl.exe` em vez de `curl` para que a solicitação vá para o binário curl real em vez do alias `Invoke-WebRequest`.
348 316>
349 A resposta diz qual tipo de problema você tem:317> A resposta diz qual tipo de problema você tem:
350 318>
351 * Um `404` ou `405`: o servidor está ativo. Muitos endpoints MCP respondem apenas a solicitações POST, portanto isto ainda confirma que a URL é alcançável de sua máquina.319> * Um `404` ou `405`: o servidor está ativo. Muitos endpoints MCP respondem apenas a solicitações POST, portanto isto ainda confirma que a URL é alcançável de sua máquina.
352 * Um `401` ou `403`: o servidor está ativo e você precisa autenticar. Use o login no navegador em [Conectar um servidor que requer login](#connect-a-server-that-requires-sign-in), ou para servidores que pegam um token em vez disso, como o do GitHub, passe-o com `--header "Authorization: Bearer <token>"` no comando `claude mcp add`.320> * Um `401` ou `403`: o servidor está ativo e você precisa autenticar. Use o login no navegador em [Conectar um servidor que requer login](#connect-a-server-that-requires-sign-in), ou para servidores que pegam um token em vez disso, como o do GitHub, passe-o com `--header "Authorization: Bearer <token>"` no comando `claude mcp add`.
353 * Nenhuma resposta: verifique a URL e sua rede.321> * Nenhuma resposta: verifique a URL e sua rede.
354 322>
355 Para servidores stdio, execute o comando configurado diretamente em seu terminal para ver o erro subjacente. Para o servidor Playwright deste guia, execute:323> Para servidores stdio, execute o comando configurado diretamente em seu terminal para ver o erro subjacente. Para o servidor Playwright deste guia, execute:
356 324>
357 ```bash theme={null}325> ```bash theme={null}
358 npx -y @playwright/mcp@latest326> npx -y @playwright/mcp@latest
359 ```327> ```
360 328>
361 O que acontece a seguir diz onde o problema está:329> O que acontece a seguir diz onde o problema está:
362 330>
363 * O comando inicia e aguarda entrada: o servidor em si funciona.331> * O comando inicia e aguarda entrada: o servidor em si funciona.
364 332>
365 Execute `claude mcp get <name>` e confirme que o comando mostrado lá corresponde ao que você acabou de executar. Se o comando mostrado diferir do que você digitou, você provavelmente omitiu o separador `--` antes do comando do servidor. Remova o servidor e readicione-o com `--` no lugar. Se você escreveu `.mcp.json` à mão, verifique sua sintaxe e localização. Antes da v2.1.285, `claude mcp get` não imprimia nenhuma linha `Command` para uma entrada stdio salva sem um campo `type`, como uma entrada `.mcp.json` escrita à mão. Nessas versões, execute `claude mcp list` em vez disso, que imprime a linha de comando de qualquer forma.333> Execute `claude mcp get <name>` e confirme que o comando mostrado lá corresponde ao que você acabou de executar. Se o comando mostrado diferir do que você digitou, você provavelmente omitiu o separador `--` antes do comando do servidor. Remova o servidor e readicione-o com `--` no lugar. Se você escreveu `.mcp.json` à mão, verifique sua sintaxe e localização. Antes da v2.1.285, `claude mcp get` não imprimia nenhuma linha `Command` para uma entrada stdio salva sem um campo `type`, como uma entrada `.mcp.json` escrita à mão. Nessas versões, execute `claude mcp list` em vez disso, que imprime a linha de comando de qualquer forma.
366 * O comando erros: a mensagem nomeia o que está faltando, como Node.js ou um navegador.334> * O comando erros: a mensagem nomeia o que está faltando, como Node.js ou um navegador.
367 </Accordion>335
368 336> **Connection timed out at startup**
369 <Accordion title="Connection timed out at startup">337>
370 O servidor levou mais tempo que o timeout de inicialização padrão de 30 segundos. A primeira execução de um servidor stdio pode ser lenta enquanto `npx` baixa o pacote. Aumente o limite com a variável de ambiente [`MCP_TIMEOUT`](/docs/pt/env-vars), em milissegundos:338> O servidor levou mais tempo que o timeout de inicialização padrão de 30 segundos. A primeira execução de um servidor stdio pode ser lenta enquanto `npx` baixa o pacote. Aumente o limite com a variável de ambiente [`MCP_TIMEOUT`](/docs/pt/env-vars), em milissegundos:
371 339>
372 ```bash theme={null}340> ```bash theme={null}
373 MCP_TIMEOUT=60000 claude341> MCP_TIMEOUT=60000 claude
374 ```342> ```
375 343>
376 No PowerShell, defina a variável antes do comando na mesma linha:344> No PowerShell, defina a variável antes do comando na mesma linha:
377 345>
378 ```powershell theme={null}346> ```powershell theme={null}
379 $env:MCP_TIMEOUT = "60000"; claude347> $env:MCP_TIMEOUT = "60000"; claude
380 ```348> ```
381 349>
382 Antes da v2.1.299, algumas conexões com servidores HTTP que estavam ativos atingiam o timeout na inicialização independentemente de `MCP_TIMEOUT`. Se você usa uma dessas versões e um servidor HTTP que está ativo ainda atinge o timeout depois que você aumenta o limite, [atualize o Claude Code](/docs/pt/setup#update-claude-code).350> Antes da v2.1.299, algumas conexões com servidores HTTP que estavam ativos atingiam o timeout na inicialização independentemente de `MCP_TIMEOUT`. Se você usa uma dessas versões e um servidor HTTP que está ativo ainda atinge o timeout depois que você aumenta o limite, [atualize o Claude Code](/docs/pt/setup#update-claude-code).
383 </Accordion>351
384 352> **Server already exists**
385 <Accordion title="Server already exists">353>
386 Você já adicionou um servidor com esse nome no mesmo escopo. Remova a entrada existente primeiro ou escolha um nome diferente:354> Você já adicionou um servidor com esse nome no mesmo escopo. Remova a entrada existente primeiro ou escolha um nome diferente:
387 355>
388 ```bash theme={null}356> ```bash theme={null}
389 claude mcp remove claude-code-docs357> claude mcp remove claude-code-docs
390 ```358> ```
391 359>
392 Se o nome existe em mais de um escopo, `remove` relata `exists in multiple scopes`. Passe `--scope` para escolher qual cópia deletar, por exemplo `claude mcp remove claude-code-docs --scope local`.360> Se o nome existe em mais de um escopo, `remove` relata `exists in multiple scopes`. Passe `--scope` para escolher qual cópia deletar, por exemplo `claude mcp remove claude-code-docs --scope local`.
393 </Accordion>361
394 362> **Server connects but no tools appear**
395 <Accordion title="Server connects but no tools appear">363>
396 Execute `/mcp` dentro de uma sessão e selecione o servidor para ver sua lista de ferramentas. Se a lista estiver vazia, o servidor iniciou mas não registrou nenhuma ferramenta, o que geralmente significa que está faltando uma variável de ambiente necessária como uma chave de API.364> Execute `/mcp` dentro de uma sessão e selecione o servidor para ver sua lista de ferramentas. Se a lista estiver vazia, o servidor iniciou mas não registrou nenhuma ferramenta, o que geralmente significa que está faltando uma variável de ambiente necessária como uma chave de API.
397 365>
398 Passe a variável com `--env KEY=value` em `claude mcp add`, ou no campo `env` da entrada `.mcp.json` do servidor. A documentação do servidor lista as variáveis que ele precisa.366> Passe a variável com `--env KEY=value` em `claude mcp add`, ou no campo `env` da entrada `.mcp.json` do servidor. A documentação do servidor lista as variáveis que ele precisa.
399 </Accordion>367>
400 368> Antes da v2.1.302, `/mcp` mostrava o status `tools fetch failed` para um servidor usando a [revisão de protocolo 2026-07-28](/docs/pt/mcp#mcp-client-runtimes) que omitia `resultType`, `ttlMs` ou `cacheScope` de suas respostas. Se você usa uma dessas versões e um servidor mostra esse status, [atualize o Claude Code](/docs/pt/setup#update-claude-code).
401 <Accordion title="Changes to .mcp.json don't take effect">369
402 O Claude Code lê `.mcp.json` na inicialização da sessão. Saia e reinicie a sessão após editar o arquivo.370> **Changes to .mcp.json don't take effect**
403 371>
404 Se seus servidores ainda não aparecerem, execute `claude mcp list` e procure por um aviso de análise. O Claude Code pula entradas malformadas e mostra o campo ofensivo lá.372> O Claude Code lê `.mcp.json` na inicialização da sessão. Saia e reinicie a sessão após editar o arquivo.
405 373>
406 Se você rejeitou anteriormente o servidor quando solicitado, redefina as aprovações do projeto:374> Se seus servidores ainda não aparecerem, execute `claude mcp list` e procure por um aviso de análise. O Claude Code pula entradas malformadas e mostra o campo ofensivo lá.
407 375>
408 ```bash theme={null}376> Se você rejeitou anteriormente o servidor quando solicitado, redefina as aprovações do projeto:
409 claude mcp reset-project-choices377>
410 ```378> ```bash theme={null}
411 </Accordion>379> claude mcp reset-project-choices
412 380> ```
413 <Accordion title="OAuth sign-in fails or browser doesn't open">381
414 Execute `/mcp`, selecione o servidor e escolha `Authenticate` novamente. Se o navegador não abrir automaticamente, copie a URL mostrada no terminal e abra-a manualmente. Consulte [Autenticar com servidores MCP remotos](/docs/pt/mcp#authenticate-with-remote-mcp-servers) para portas de callback fixas e credenciais pré-configuradas.382> **OAuth sign-in fails or browser doesn't open**
415 </Accordion>383>
416</AccordionGroup>384> Execute `/mcp`, selecione o servidor e escolha `Authenticate` novamente. Se o navegador não abrir automaticamente, copie a URL mostrada no terminal e abra-a manualmente. Consulte [Autenticar com servidores MCP remotos](/docs/pt/mcp#authenticate-with-remote-mcp-servers) para portas de callback fixas e credenciais pré-configuradas.
417 385
418<h2 id="next-steps">386## Próximos passos
419 Próximos passos
420</h2>
421 387
422Com um servidor conectado, explore o resto do que o MCP permite:388Com um servidor conectado, explore o resto do que o MCP permite:
423 389