Awesome-omni-skill mcp-builder

Princípios de construção de servidores MCP (Model Context Protocol). Design de ferramentas, padrões de recursos e melhores práticas.

install
source · Clone the upstream repo
git clone https://github.com/diegosouzapw/awesome-omni-skill
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/diegosouzapw/awesome-omni-skill "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/tools/mcp-builder" ~/.claude/skills/diegosouzapw-awesome-omni-skill-mcp-builder-70166f && rm -rf "$T"
manifest: skills/tools/mcp-builder/SKILL.md
source content

Construtor de MCP

Princípios para construção de servidores MCP.


1. Visão Geral do MCP

O que é MCP?

Model Context Protocol - um padrão para conectar sistemas de IA com ferramentas externas e fontes de dados.

Conceitos Centrais

ConceitoPropósito
Ferramentas (Tools)Funções que a IA pode chamar
Recursos (Resources)Dados que a IA pode ler
PromptsTemplates de prompt pré-definidos

2. Arquitetura do Servidor

Estrutura do Projeto

meu-servidor-mcp/
├── src/
│   └── index.ts      # Entrada principal
├── package.json
└── tsconfig.json

Tipos de Transporte

TipoUso
StdioLocal, baseado em CLI
SSEBaseado na web, streaming
WebSocketTempo real, bidirecional

3. Princípios de Design de Ferramentas

Bom Design de Ferramenta

PrincípioDescrição
Nome claroOrientado à ação (get_weather, create_user)
Propósito únicoFaz uma coisa bem feita
Entrada validadaSchema com tipos e descrições
Saída estruturadaFormato de resposta previsível

Design de Schema de Entrada

CampoObrigatório?
Tipo (Type)Sim - object
PropriedadesDefine cada parâmetro
ObrigatórioLista parâmetros mandatórios
DescriçãoLegível para humanos

4. Padrões de Recursos

Tipos de Recurso

TipoUso
EstáticoDados fixos (config, docs)
DinâmicoGerado sob demanda
TemplateURI com parâmetros

Padrões de URI

PadrãoExemplo
Fixo
docs://readme
Parametrizado
users://{userId}
Coleção
files://projeto/*

5. Tratamento de Erros

Tipos de Erro

SituaçãoResposta
Parâmetros inválidosMensagem de erro de validação
Não encontradoMensagem clara de "não encontrado"
Erro do servidorErro genérico, logar detalhes

Melhores Práticas

  • Retorne erros estruturados.
  • Não exponha detalhes internos.
  • Logue para fins de depuração.
  • Forneça mensagens acionáveis.

6. Tratamento Multimodal

Tipos Suportados

TipoCodificação
TextoTexto simples (Plain text)
ImagensBase64 + tipo MIME
ArquivosBase64 + tipo MIME

7. Princípios de Segurança

Validação de Entrada

  • Valide todas as entradas de ferramentas.
  • Higienize (sanitize) os dados fornecidos pelo usuário.
  • Limite o acesso aos recursos.

Chaves de API

  • Use variáveis de ambiente.
  • Não logue segredos.
  • Valide permissões.

8. Configuração

Configuração do Claude Desktop

CampoPropósito
commandExecutável a ser rodado
argsArgumentos do comando
envVariáveis de ambiente

9. Testes

Categorias de Teste

TipoFoco
UnitárioLógica da ferramenta
IntegraçãoServidor completo
ContratoValidação de schema

10. Checklist de Melhores Práticas

  • Nomes de ferramentas claros e orientados à ação.
  • Schemas de entrada completos com descrições.
  • Saída JSON estruturada.
  • Tratamento de erros para todos os casos.
  • Validação de entradas.
  • Configuração baseada em ambiente.
  • Logging para depuração.

Lembre-se: As ferramentas MCP devem ser simples, focadas e bem documentadas. A IA depende das descrições para usá-las corretamente.