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

# Visão geral do MCP

> Estenda o Devin CLI com servidores de ferramentas externos usando o Model Context Protocol

O MCP (Model Context Protocol) permite conectar servidores de ferramentas externos ao Devin CLI, dando ao agente acesso a APIs, bancos de dados, ferramentas de rastreamento de problemas e qualquer outro serviço que você possa expor por meio de um servidor MCP.

Quando você configura um servidor MCP, as ferramentas dele passam a ficar disponíveis para o agente, assim como as ferramentas integradas. O agente pode descobrir quais ferramentas estão disponíveis e chamá-las conforme necessário.

***

<div id="how-it-works">
  ## Como funciona
</div>

<Steps>
  <Step title="Configurar um servidor">
    Você define um servidor MCP no arquivo de configuração com um comando, argumentos e variáveis de ambiente opcionais.
  </Step>

  <Step title="Inicialização do servidor">
    O Devin CLI inicia o processo do servidor quando necessário. O servidor se conecta à API externa (GitHub, Linear etc.).
  </Step>

  <Step title="Descoberta de ferramentas">
    O agente descobre quais ferramentas o servidor disponibiliza (por exemplo, `create_issue`, `list_repos`).
  </Step>

  <Step title="Execução de ferramentas">
    Quando o agente chama uma ferramenta do MCP, a requisição é encaminhada pelo servidor ao serviço externo, e o resultado é retornado.
  </Step>
</Steps>

***

<div id="quick-example">
  ## Exemplo rápido
</div>

Adicione um servidor MCP do GitHub ao seu projeto:

```json theme={null}
// .devin/mcp_config.local.json  (ignorado pelo git — mantenha tokens fora da configuração com commit)
{
  "mcpServers": {
    "github": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-github"],
      "env": {
        "GITHUB_TOKEN": "ghp_your_token_here"
      }
    }
  }
}
```

Agora o agente pode criar problemas, ler PRs, pesquisar em repositórios e muito mais — tudo em linguagem natural.

***

<div id="permission-control">
  ## Controle de permissões
</div>

Depois de configuradas, as ferramentas MCP aparecem em um formato com namespace: `mcp__<server>__<tool>`. Por exemplo, um servidor "github" com uma ferramenta "create\_issue" se torna `mcp__github__create_issue`.

As ferramentas MCP estão sujeitas ao mesmo sistema de permissões das ferramentas nativas. Você pode controlar o acesso em vários níveis:

```json theme={null}
{
  "permissions": {
    "allow": [
      "mcp__github__*"
    ],
    "deny": [
      "mcp__github__delete_repo"
    ]
  }
}
```

Consulte [Permissões](/pt-BR/cli/reference/permissions) para conhecer a sintaxe completa das permissões.

***

<div id="prompts-as-slash-commands">
  ## Prompts como comandos de barra
</div>

Além das ferramentas, um servidor MCP pode publicar **prompts** — instruções reutilizáveis e parametrizadas definidas por meio do recurso `prompts` do MCP. O Devin CLI disponibiliza cada um deles como um comando de barra:

```
/mcp__<server>__<prompt> [arguments]
```

Por exemplo, um servidor `linear` que publica um prompt `bug_report` passa a disponibilizá-lo como `/mcp__linear__bug_report`. Os comandos de prompt são listados na paleta de comandos em uma categoria própria, **MCP**, com o título ou a descrição publicados pelo servidor e uma indicação de argumentos com base nos parâmetros declarados do prompt — `<name>` para argumentos obrigatórios e `[name]` para opcionais.

Quando você envia o comando, o Devin CLI busca o prompt no servidor e usa as mensagens retornadas como sua mensagem naquele turno.

<div id="how-arguments-map">
  ### Como os argumentos são mapeados
</div>

Tudo o que você digitar após o nome do comando será mapeado **por posição** para os argumentos declarados do prompt — a primeira palavra para o primeiro argumento, a segunda para o segundo e assim por diante. O último argumento declarado recebe todo o texto restante, preservando intacta qualquer entrada livre ao final:

```
/mcp__linear__bug_report ENG-1234 login page hangs after the SSO redirect
```

Aqui, `ENG-1234` preenche o primeiro argumento declarado, e o restante da linha preenche o último. Se o prompt não declarar nenhum argumento, tudo o que você digitar será acrescentado ao prompt expandido, em vez de descartado.

<Note>
  Apenas os servidores que já se conectaram contribuem com comandos anunciados (as conexões são estabelecidas em segundo plano na inicialização), mas a invocação é resolvida sob demanda — digitar `/mcp__<server>__<prompt>` funciona mesmo que o comando nunca tenha sido anunciado, conectando-se ao servidor quando necessário.
</Note>

<Tip>
  A expansão do prompt ocorre no Agent, e não na UI do Terminal; portanto, os mesmos comandos são anunciados via ACP — integrações de Editor, como [Zed](/pt-BR/cli/acp/zed) e [JetBrains](/pt-BR/cli/acp/jetbrains), os listam junto com os comandos nativos.
</Tip>

***

<div id="authentication">
  ## Autenticação
</div>

Alguns servidores MCP remotos (como Atlassian, Notion e Linear) exigem autenticação OAuth. Cada cliente MCP se autentica de forma independente — os tokens do Windsurf ou do Claude Code **não** são compartilhados com o Devin CLI.

Após adicionar um servidor remoto, autentique-se com:

```bash theme={null}
devin mcp login <server-name>
```

Isso abre uma janela do navegador para realizar o fluxo OAuth. Se as credenciais armazenadas expirarem ou forem revogadas posteriormente, o servidor informa que a autenticação é necessária, e você se autentica novamente com `devin mcp logout` seguido de `devin mcp login` — consulte [Configuração do MCP — Autenticação](/pt-BR/cli/extensibility/mcp/configuration#authentication) e [Autenticação novamente](/pt-BR/cli/extensibility/mcp/configuration#re-authenticating) para mais detalhes.

***

<div id="disabling-servers">
  ## Desativando servidores
</div>

É possível desativar temporariamente um servidor MCP sem remover sua configuração nem suas credenciais:

```bash theme={null}
devin mcp disable <server-name>
devin mcp enable <server-name>
```

Consulte [Configuração do MCP — Como habilitar e desabilitar servidores](/pt-BR/cli/extensibility/mcp/configuration#enabling-and-disabling-servers) para mais detalhes.

***

<div id="next-steps">
  ## Próximas etapas
</div>

<CardGroup cols={2}>
  <Card title="Configuração" icon="gear" href="/pt-BR/cli/extensibility/mcp/configuration">
    Saiba mais sobre como configurar servidores MCP em detalhes
  </Card>

  <Card title="Permissões" icon="shield" href="/pt-BR/cli/reference/permissions">
    Controle quais ferramentas MCP o agente pode usar
  </Card>
</CardGroup>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.