In this article
Como executar servidores MCP com Docker
Hoje, os servidores MCP se integram a diversos hosts MCP, seja no Cursor, no Claude Desktop ou em outras ferramentas. Porém, a maioria dessas integrações exige que os usuários finais instalem e iniciem o servidor MCP localmente, seguindo as instruções de configuração. É aí que entra o Docker.
Antes de falar sobre o Docker, vamos conferir alguns exemplos que mostram como é comum orientar desenvolvedores a conectar servidores MCP por meio de processos locais usando a interface STDIO.
Veja um exemplo extraído da documentação de integração de servidores MCP do VS Code, que usa o arquivo dedicado vscode/mcp.json:
{
"servers": {
"Perplexity": {
"type": "stdio",
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-perplexity-ask"],
"env": {
"PERPLEXITY_API_KEY": "${input:perplexity-key}"
}
}
}
}
Veja outro exemplo, com o arquivo .cursor/mcp.json do Cursor:
{
"mcpServers": {
"npm-package-info": {
"command": "node",
"args": ["/Users/lirantal/projects/repos/mcp-server-npm"]
},
}
}Esses exemplos seguem padrões comuns de uso de servidores MCP, que envolvem executá-los localmente iniciando processos do sistema (ou, em termos simples, “comandos”).
Nem sempre é ideal executar servidores MCP por meio de comandos. Existe uma alternativa?
Riscos de segurança e dificuldades ao executar servidores MCP localmente
Executar servidores MCP localmente pode ser inconveniente e também traz diversos riscos de segurança. Além disso, há desafios que vão além das medidas essenciais de segurança em IA que desenvolvedores e equipes de segurança precisam seguir.
Veja alguns exemplos de dificuldades que desenvolvedores e equipes de segurança podem enfrentar quando precisam executar servidores MCP localmente:
Configuração do ambiente local — Por exemplo, se eu não desenvolvo em Python e o servidor MCP ao qual quero me conectar foi criado nessa linguagem e exige o download de dependências upstream para compilar e executar o projeto, a configuração fica ainda mais trabalhosa.
Dependência do sistema operacional — Outro problema comum é ter que especificar e combinar comandos de maneiras diferentes conforme o sistema operacional: Windows, macOS ou Linux.
Servidores MCP maliciosos — Se o código do servidor MCP for malicioso, ele terá acesso imediato a tudo no meu ambiente de desenvolvimento.
Execute servidores MCP com Docker
Uma alternativa é recorrer a uma abordagem já conhecida e testada: empacotar artefatos de aplicações com o Docker.
O Docker se popularizou por atender à necessidade dos desenvolvedores de compilar e implantar artefatos, como serviços de backend na nuvem, de maneira padronizada e repetível. Com o arquivo Docker Compose, o Docker também facilitou muito os testes locais e a reprodução de arquiteturas de microsserviços.
Agora, o Docker também pode nos ajudar a iniciar servidores MCP em contêineres. Vamos conferir alguns exemplos.
Adicione o GitHub MCP Server no Docker ao Qodo Gen
O GitHub MCP Server é uma integração que dá acesso à sua conta do GitHub. Com ela, você pode consultar dados de repositórios e realizar ações, como abrir uma issue, além de outras operações disponíveis pela API do GitHub.
Para iniciar o GitHub MCP Server pelo Docker, normalmente executaríamos um comando como este:
docker run -i --rm -e GITHUB_PERSONAL_ACCESS_TOKEN=1234 ghcr.io/github/github-mcp-serverPara executar esse comando, você precisa:
Instalar o Docker para executar o comando `docker
Garantir que o aplicativo Docker esteja em execução
Criar um token de acesso pessoal (PAT) para sua conta do GitHub (de preferência, com o mínimo possível de permissões)
Ao executar o comando, a imagem `github-mcp-server será baixada do GitHub Container Registry, e o PAT será passado como variável de ambiente.
No entanto, não precisamos executar esse comando do Docker diretamente na CLI. Em vez disso, podemos fornecer a instrução como uma configuração de servidor MCP executada com o tipo de transporte STDIO para processos.
Vou demonstrar o processo usando o VS Code e a ferramenta de programação com IA agentiva Qodo Gen.
{
"docker": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"GITHUB_PERSONAL_ACCESS_TOKEN",
"ghcr.io/github/github-mcp-server"
],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "github_pat_1234"
}
}
}Na visualização da extensão Qodo Gen, clique em Tools e, em seguida, no botão no canto superior esquerdo Add New MCP,. A visualização New Agentic Tool será exibida. Cole o JSON e clique em Save.

Agora, aguarde um ou dois minutos enquanto o contêiner baixa da rede a imagem mais recente do GitHub MCP Server e a inicia. Durante esse processo, você verá uma indicação como esta:

Quando o carregamento terminar, você poderá ver todas as ferramentas disponíveis:

Agora, podemos fazer perguntas diretamente no chat sobre o repositório de código:

Mais informações sobre a segurança de servidores MCP
Se você se identifica com as dificuldades de configuração e as preocupações de segurança relacionadas aos servidores MCP mencionadas neste artigo, recomendo ler estes conteúdos sobre segurança em IA para se preparar:
Saiba mais sobre injeção de prompt e outros ataques de IA
Se você está explorando RAG (geração aumentada por recuperação), recomendo este artigo sobre como proteger o RAG
Pronto para adotar a IA com segurança?
Baixe nosso Guia de compras sobre segurança de código com IA generativa e comece a adotar ferramentas de programação com IA generativa, como GitHub Copilot, Google Gemini e Amazon CodeWhisperer, sem correr riscos.