· mcp · model context protocol · tutorial · abril 2026 ·

Tutorial de servidor MCP em 2026: instale, configure, rode

// figura Ciclo de vida do servidor MCP — da config à chamada de ferramenta pelo Claude
Diagrama do ciclo de vida de um servidor MCP Quatro caixas em fluxo horizontal: config no settings.json, spawn do processo do servidor, registro de ferramentas, chamada de ferramenta pelo Claude. Setas conectam cada estágio da esquerda para a direita. SETTINGS.JSON CONFIG ~/.claude/ ou projeto PROCESSO DO SERVIDOR SPAWN npx / node / uvx LISTA DE FERRAMENTAS REGISTRADAS handshake tools/list CLAUDE CHAMA tools/call JSON-RPC sobre stdio
// CATEGORIA MCP · Tutorial // FONTE Septim Labs // PERMALINK /pt/blog/mcp-server-tutorial-2026.html citar este artigo →
E
Por o time da Septim Labs
Publicado em 28 de abril de 2026
Encontrar a ferramenta certa →
TL;DR
  • O MCP (Model Context Protocol) é um padrão aberto que permite ao Claude Code chamar ferramentas externas — bancos de dados, navegadores, APIs — por uma interface JSON-RPC consistente. Os servidores rodam como processos locais; o Claude se comunica com eles via stdio.
  • A configuração fica em .claude/settings.json (no projeto) ou ~/.claude/settings.json (global). Cada entrada de servidor precisa de um command, args e quaisquer variáveis de ambiente para credenciais.
  • Os cinco servidores que valem instalar primeiro: Filesystem, Memory, GitHub, Playwright e Fetch. Cada um cobre uma lacuna distinta de capacidade que o Claude Code de fábrica não preenche.

O que é o MCP, de fato

O Model Context Protocol é uma especificação publicada pela Anthropic em novembro de 2024. Ele define um jeito padrão de modelos de linguagem chamarem ferramentas externas — e de ferramentas externas se exporem aos modelos. Antes do MCP, toda integração de ferramenta com IA era custom; com ele, integrações ficam composáveis.

A arquitetura é mais simples do que o nome sugere. Um servidor MCP é um processo que roda na sua máquina (ou remotamente, no caso de servidores hospedados). Quando o Claude Code inicia, ele sobe cada servidor MCP configurado, recebe a lista de ferramentas que aquele servidor oferece e, durante a sessão, pode chamar essas ferramentas pelo nome. Toda a comunicação acontece sobre stdin/stdout usando JSON-RPC 2.0. Sem HTTP, sem portas, sem configuração de rede para servidores locais.

Um tratamento conceitual mais profundo está no primer "O que é MCP". Este post foca no setup prático.

Onde a config mora

A configuração de servidor MCP fica em um arquivo settings.json. Há dois locais:

O arquivo de projeto é o preferido para servidores específicos do projeto (um servidor de banco amarrado à connection string daquele projeto). O arquivo global serve para servidores que você quer em qualquer lugar (Fetch, GitHub).

Nota de segurança

O arquivo .claude/settings.json dentro de um projeto deve estar no .gitignore se contiver credenciais. A divulgação CVE-2026-21852 envolveu credenciais que foram parar nesse arquivo via npm. Veja o guia de prevenção a vazamento de credenciais.

A estrutura básica da config

A chave mcpServers no settings.json é um mapa de nome do servidor para a configuração dele. Cada configuração diz como iniciar o processo do servidor.

{
  "mcpServers": {
    "filesystem": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-filesystem",
        "/caminho/para/diretorio/permitido"
      ]
    },
    "github": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-github"],
      "env": {
        "GITHUB_TOKEN": "ghp_seu_fine_grained_token_aqui"
      }
    },
    "memory": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-memory"]
    }
  }
}

Algumas observações sobre essa estrutura:

Os cinco servidores para instalar primeiro

01 Filesystem MCP

Dá ao Claude Code acesso de leitura e escrita a diretórios específicos. Sem ele, o Claude Code só lê arquivos colados explicitamente na conversa ou já presentes no diretório de trabalho. Com ele, o Claude navega na sua árvore de arquivos, lê arquivos arbitrários por caminho e grava em disco.

O argumento de caminho depois do nome do pacote é a raiz permitida. Passe a raiz do projeto para uma instalação amarrada ao projeto. Passe o seu diretório home só se você precisa especificamente que o Claude navegue de forma ampla — e entenda as implicações de segurança antes de fazer isso.

02 Memory MCP

Adiciona um grafo de conhecimento local que persiste entre sessões. O Claude consegue armazenar fatos, relações e observações — e recuperá-los em sessões futuras sem reler os arquivos-fonte. Armazenado como JSON em ~/.claude-memory/ por padrão.

O Memory é o mais perto que o Claude Code chega de "lembrar" do seu projeto. Não é automático — o Claude precisa armazenar observações de forma explícita —, mas, uma vez configurado, reduz bastante o overhead de exploração quando você volta a um projeto depois de uma pausa.

03 GitHub MCP

Dá ao Claude acesso à API do GitHub: ler issues e PRs, buscar código, criar issues, postar comentários, gerenciar branches. Exige um personal access token fine-grained com escopo limitado aos repositórios que você quer expor ao Claude.

{
  "github": {
    "command": "npx",
    "args": ["-y", "@modelcontextprotocol/server-github"],
    "env": {
      "GITHUB_TOKEN": "github_pat_..."
    }
  }
}

Restrinja o PAT ao mínimo de repositórios. Um PAT com acesso de escrita a todos os repos da sua conta é uma credencial pesada — trate com o mesmo cuidado que uma deploy key.

04 Playwright MCP (Microsoft)

Dá ao Claude um navegador real via Playwright. Ele consegue navegar em páginas, clicar, preencher formulários, tirar screenshots e extrair a estrutura da página. É distinto do Fetch — o Playwright renderiza JavaScript; o Fetch não.

{
  "playwright": {
    "command": "npx",
    "args": ["-y", "@playwright/mcp@latest"]
  }
}

O navegador sobe sob demanda e fecha quando a sessão do Claude Code encerra. Por padrão, ele não fica visível — adicione "--headed" aos args se quiser acompanhar a execução.

05 Fetch MCP

Faz fetch de conteúdo web e converte para Markdown. Mais leve que o Playwright em páginas que não exigem renderização de JavaScript — sites de documentação, READMEs do GitHub, posts de blog. Faz parte do conjunto oficial de referência da Anthropic.

{
  "fetch": {
    "command": "uvx",
    "args": ["mcp-server-fetch"]
  }
}

Esse servidor exige uvx (o package runner Python da Astral). Instale com pip install uv ou siga as instruções de instalação da Astral. Se você prefere ficar em Node, há wrappers em npm da comunidade, mas a versão oficial é em Python.

Septim Vault — US$ 29, pagamento único

Pacote pronto de configuração MCP: oito configs de servidor para colar direto no seu settings.json, com templates de credenciais, orientação de allowlist de caminho e checklist de verificação para cada servidor. Pula a caça por documentação servidor a servidor.

Comprar Septim Vault — US$ 29 → Ou tente o Septim Tether (US$ 19) com o kit mínimo de config →

Verificando se um servidor está funcionando

Depois de editar o settings.json, abra uma nova sessão do Claude Code. No prompt, peça ao Claude que liste as ferramentas disponíveis:

Quais ferramentas MCP você tem disponíveis?

O Claude deve listar os servidores que você configurou e suas ferramentas. Se um servidor está faltando, geralmente é uma destas três coisas:

  1. O pacote não está instalado. A flag -y no npx instala, mas a primeira execução pode falhar se o registry do npm está lento ou se há firewall na rede. Rode o comando npx manualmente no terminal para ver o erro.
  2. O caminho está errado. O servidor Filesystem aceita um caminho absoluto. Caminho relativo ou com erro de digitação derruba o startup. O Claude Code grava erros de servidor MCP em ~/.claude/logs/ — confira lá primeiro.
  3. A credencial é inválida. Se o servidor sobe mas as ferramentas devolvem erro, a causa mais comum é uma chave de API expirada ou mal configurada. Teste a credencial direto com curl ou no playground de API do provedor antes de debugar a camada MCP.

Config de projeto vs. config global

Padrão comum na Septim: a config global tem Fetch, Memory e Playwright — servidores úteis em qualquer projeto. A config de projeto tem Filesystem (com a raiz do projeto como caminho permitido), o servidor de banco do projeto e o GitHub (com escopo no repositório do projeto).

Essa estrutura te deixa entrar em qualquer diretório de projeto e o Claude Code já pega os servidores certos automaticamente, sem ficar alternando configs na mão. O arquivo de projeto sobrescreve o global para servidores de mesmo nome, então você pode ter conexões de banco diferentes por projeto sem conflito.

Servidores MCP remotos

A Anthropic adicionou suporte a servidores MCP remotos (acessados por SSE em vez de stdio) no início de 2026. A configuração usa uma chave url no lugar de command e args:

{
  "mcpServers": {
    "stripe": {
      "url": "https://mcp.stripe.com",
      "headers": {
        "Authorization": "Bearer sk_live_..."
      }
    }
  }
}

Servidores remotos são convenientes para serviços que mantêm seus próprios endpoints MCP hospedados (Stripe e vários outros já têm). O custo é o round-trip de rede a cada chamada de ferramenta e a credencial trafegando pelo fio — só use endpoints remotos sobre HTTPS e trate o Authorization com o mesmo cuidado que uma chave de API em variável de ambiente.

Considerações de segurança antes de adicionar mais servidores

Cada servidor que você adiciona aumenta a superfície de ataque da sua sessão de Claude Code. O checklist de vulnerabilidades de servidor MCP traz o framework de avaliação em 24 pontos. A versão curta para tutoriais:

A lista curada completa de servidores que valem rodar — cada um com sua ressalva de segurança — está no post melhores servidores MCP em 2026.

Septim Vault — US$ 29 · 8 configs MCP prontas

Oito configurações de servidor, templates de credencial, orientação de allowlist de caminho e checklist de verificação. Inclui também o guia de hardening de settings.json do post sobre o CVE-2026-21852. Pagamento único.

Comprar Septim Vault — US$ 29 → Septim Tether (US$ 19) — kit mínimo de config MCP →