TRILHA 5

🚀 Avançado: Publicação e Ecossistema

Leve seus servers para o mundo real — empacote, publique, use HTTP/SSE e explore o ecossistema MCP.

6
Módulos
36
Tópicos
~4h
Duração
Avançado
Nível

Navegação Rápida

Conteúdo Detalhado
Módulo 5.1 ~30 min · Prático

📦 Empacotando Seu MCP Server

Estruture seu server como pacote Python instalável com pyproject.toml.

O que é:

Empacotar seu MCP Server significa transformá-lo de um script solto em um pacote Python instalável. Isso permite que outros desenvolvedores instalem com pip, gerenciem dependências automaticamente e utilizem entry points para execução direta.

Por que aprender:

Sem empacotamento, seu server fica preso ao seu ambiente local. Empacotar é o primeiro passo para compartilhar, publicar e profissionalizar seu trabalho.

Conceitos-chave:

Pacote Python, pip install, distribuição, reprodutibilidade, instalação limpa, versionamento.

O que é:

O pyproject.toml é o arquivo padrão moderno para configurar pacotes Python. Ele substitui o antigo setup.py e centraliza metadados do projeto, dependências, build system e configurações de ferramentas como pytest e black.

Por que aprender:

Todo pacote Python moderno usa pyproject.toml. Dominar sua estrutura garante que seu MCP Server siga as melhores práticas e seja compatível com o ecossistema Python.

Conceitos-chave:

pyproject.toml, build-system, project metadata, PEP 621, setuptools, hatchling.

O que é:

A organização correta de diretórios segue o padrão src layout: pasta src/ contendo o pacote, testes em tests/, documentação em docs/, e arquivos de configuração na raiz. Isso evita conflitos de importação e facilita o build.

Por que aprender:

Uma estrutura bem organizada é a base de um projeto manutenível. Outros desenvolvedores saberão imediatamente onde encontrar cada parte do código.

Conceitos-chave:

src layout, __init__.py, __main__.py, separação de concerns, convenções Python, namespace packages.

O que é:

Entry points são a forma como um pacote Python expõe comandos executáveis. Ao definir um entry point no pyproject.toml, o pip cria automaticamente um comando no terminal que inicia seu MCP Server diretamente.

Por que aprender:

Entry points são essenciais para MCP Servers porque permitem que o Claude Desktop e outros hosts executem seu server como um comando simples, sem precisar saber onde o Python está instalado.

Conceitos-chave:

console_scripts, entry points, pip install, comando de terminal, __main__.py, execução direta.

O que é:

Declarar dependências corretamente no pyproject.toml garante que todas as bibliotecas necessárias sejam instaladas automaticamente. Especificar versões mínimas e máximas previne incompatibilidades futuras.

Por que aprender:

Dependências mal gerenciadas são a causa número um de falhas em instalação. Dominar versionamento semântico e constraints garante que seu server funcione em qualquer ambiente.

Conceitos-chave:

dependencies, optional-dependencies, version constraints, semver, pip freeze, lock files.

O que é:

Testar o pacote significa criar um ambiente virtual limpo, instalar o pacote com pip install, e verificar que todos os entry points funcionam, dependências são resolvidas e o server inicia corretamente.

Por que aprender:

Testar em ambiente limpo é a única forma de garantir que seu pacote funciona para outros. O que funciona no seu ambiente de desenvolvimento pode falhar para quem instala do zero.

Conceitos-chave:

venv, pip install -e, pip install ., smoke test, entry point test, ambiente limpo.

Ver Completo
Módulo 5.2 ~25 min · Prático

🌐 Publicando no GitHub

Crie repositório, README profissional e documente a instalação do seu server.

O que é:

Preparar o repositório envolve criar o repo no GitHub, configurar .gitignore para Python, adicionar arquivos essenciais como LICENSE e CHANGELOG, e organizar a estrutura de diretórios conforme as boas práticas.

Por que aprender:

Um repositório bem preparado transmite profissionalismo e facilita a colaboração. É a primeira impressão que outros desenvolvedores terão do seu projeto.

Conceitos-chave:

.gitignore, LICENSE, CHANGELOG, branch protection, repository settings, GitHub templates.

O que é:

Um README profissional para MCP Server deve incluir: descrição clara do que faz, badges de status, instruções de instalação, configuração para Claude Desktop, exemplos de uso, e seção de troubleshooting.

Por que aprender:

O README é o marketing do seu projeto. Um README bem escrito pode ser a diferença entre um projeto com centenas de stars e um projeto ignorado.

Conceitos-chave:

Markdown, badges, shields.io, exemplos de código, GIFs de demonstração, seções padrão.

O que é:

Escolher uma licença open source (MIT, Apache 2.0, GPL) define como outros podem usar seu código. O CONTRIBUTING.md orienta colaboradores sobre como enviar PRs, reportar bugs e seguir o code style do projeto.

Por que aprender:

Sem licença, ninguém pode legalmente usar seu código. Sem guia de contribuição, ninguém sabe como colaborar. Ambos são essenciais para projetos open source.

Conceitos-chave:

MIT License, Apache 2.0, CONTRIBUTING.md, Code of Conduct, pull request template, issue template.

O que é:

GitHub Actions permite automatizar testes, linting e build do seu MCP Server a cada push ou pull request. Um workflow básico roda pytest, verifica tipos com mypy e garante que o pacote instala corretamente.

Por que aprender:

CI/CD automatizado previne bugs em produção e dá confiança para aceitar contribuições. É um sinal de qualidade que atrai usuários e colaboradores.

Conceitos-chave:

GitHub Actions, workflow YAML, CI/CD, pytest, linting, matrix testing, artifacts.

O que é:

Releases no GitHub combinam tags Git com notas de versão e artefatos. Usar versionamento semântico (v1.0.0) e manter um CHANGELOG permite que usuários acompanhem a evolução e escolham versões estáveis.

Por que aprender:

Releases bem gerenciadas permitem que usuários instalem versões específicas e façam rollback se necessário. É parte fundamental de um projeto profissional.

Conceitos-chave:

git tag, GitHub Releases, semver, CHANGELOG, release notes, pre-release, assets.

O que é:

Testar do zero significa seguir suas próprias instruções de instalação em uma máquina limpa ou container Docker. Clone o repo, instale as dependências, configure o Claude Desktop e verifique que tudo funciona como documentado.

Por que aprender:

Se você não testar do zero, seus usuários serão os primeiros a encontrar problemas. Esse teste final garante que a experiência de instalação é impecável.

Conceitos-chave:

Fresh install test, Docker, ambiente limpo, documentação verificada, user experience, onboarding.

Ver Completo
Módulo 5.3 ~35 min · Prático

🌐 Transporte HTTP/SSE

Converta um server STDIO para HTTP — permita acesso remoto ao seu MCP Server.

O que é:

STDIO é o transporte local onde o host executa o server como processo filho e se comunica via stdin/stdout. HTTP permite que o server rode em outra máquina e receba requisições pela rede, habilitando acesso remoto e multi-cliente.

Por que aprender:

Entender as diferenças entre STDIO e HTTP é fundamental para decidir como deployar seu server. Cada transporte tem trade-offs de segurança, performance e complexidade.

Conceitos-chave:

STDIO, HTTP, transporte local vs remoto, processo filho, requisição/resposta, latência de rede.

O que é:

O FastMCP suporta HTTP nativamente. Basta alterar o método de execução para expor o server em uma porta HTTP. O framework cuida do roteamento, serialização JSON-RPC e gerenciamento de conexões automaticamente.

Por que aprender:

Configurar HTTP é o passo que transforma seu server local em um serviço acessível pela rede. É a ponte entre desenvolvimento e produção.

Conceitos-chave:

FastMCP HTTP, host e porta, ASGI, uvicorn, roteamento, JSON-RPC over HTTP.

O que é:

Server-Sent Events (SSE) é um protocolo HTTP que permite ao server enviar dados ao client de forma contínua através de uma conexão persistente. No MCP, SSE habilita notificações em tempo real e streaming de respostas longas.

Por que aprender:

SSE é essencial para MCP Servers que precisam enviar atualizações progressivas, como progresso de operações longas ou monitoramento em tempo real.

Conceitos-chave:

SSE, EventSource, conexão persistente, streaming, text/event-stream, reconnection.

O que é:

Ao expor um MCP Server via HTTP, segurança se torna crítica. Isso inclui HTTPS/TLS para criptografia, autenticação via tokens ou API keys, rate limiting para prevenir abuso, e CORS para controlar origens permitidas.

Por que aprender:

Um server HTTP sem segurança é um convite a ataques. Implementar as camadas corretas de proteção é obrigatório antes de qualquer deploy em produção.

Conceitos-chave:

HTTPS, TLS, autenticação, API keys, rate limiting, CORS, firewall, reverse proxy.

O que é:

Deploy em nuvem envolve hospedar seu MCP Server em plataformas como Railway, Fly.io, AWS ou Google Cloud. Isso garante disponibilidade 24/7, escalabilidade automática e acesso global ao seu server.

Por que aprender:

Deploy em nuvem transforma seu server de um projeto local em um serviço real. É o passo final para que qualquer pessoa no mundo possa usar seu MCP Server.

Conceitos-chave:

Cloud deploy, Docker, Railway, Fly.io, variáveis de ambiente, health checks, logging.

O que é:

Testar remotamente envolve conectar um MCP Client ao server deployado via HTTP, verificar que todas as tools respondem corretamente, medir latência e confirmar que SSE funciona através da rede.

Por que aprender:

Testes remotos revelam problemas que não aparecem localmente: latência de rede, timeouts, problemas de firewall e configurações de CORS. É a validação final do deploy.

Conceitos-chave:

Testes de integração remota, curl, MCP Inspector, latência, health endpoint, monitoramento.

Ver Completo
Módulo 5.4 ~35 min · Prático

📘 MCP com TypeScript

Crie um MCP Server equivalente usando o SDK oficial em TypeScript.

O que é:

O MCP possui SDKs oficiais em Python e TypeScript. Ambos implementam o mesmo protocolo, mas com APIs idiomáticas para cada linguagem. O SDK TypeScript usa classes e decorators, enquanto o Python usa FastMCP com decorators de função.

Por que aprender:

Conhecer ambos os SDKs amplia suas opções de desenvolvimento. Em equipes full-stack, poder criar servers em Python ou TypeScript conforme a necessidade é uma vantagem competitiva.

Conceitos-chave:

SDK Python, SDK TypeScript, @modelcontextprotocol/sdk, FastMCP, paridade de features, trade-offs.

O que é:

A estrutura de um MCP Server TypeScript envolve package.json, tsconfig.json, pasta src/ com o código-fonte e pasta build/ para o JavaScript compilado. O setup inclui npm init, instalação do SDK e configuração do compilador.

Por que aprender:

Configurar corretamente um projeto TypeScript evita dores de cabeça com compilação, módulos e tipagem. Uma base bem estruturada acelera todo o desenvolvimento.

Conceitos-chave:

package.json, tsconfig.json, npm, node_modules, ESM vs CommonJS, compilação TypeScript.

O que é:

No SDK TypeScript, tools são registradas usando o método server.setRequestHandler com schemas Zod para validação de parâmetros. A tipagem forte do TypeScript garante segurança em tempo de compilação para inputs e outputs.

Por que aprender:

Implementar tools é a funcionalidade core de qualquer MCP Server. Saber fazer isso em TypeScript permite criar servers type-safe com validação automática de parâmetros.

Conceitos-chave:

setRequestHandler, Zod schemas, CallToolRequest, tipagem forte, validação, async/await.

O que é:

Além de tools, o SDK TypeScript permite expor Resources (dados que o modelo pode ler, como arquivos ou configs) e Prompts (templates reutilizáveis de prompts). A API segue o mesmo padrão de handlers com tipagem forte.

Por que aprender:

Resources e Prompts completam as três primitivas do MCP. Dominar todas elas em TypeScript permite criar servers completos e ricos em funcionalidades.

Conceitos-chave:

ListResourcesRequest, ReadResourceRequest, ListPromptsRequest, GetPromptRequest, URI schemes.

O que é:

O build envolve compilar TypeScript para JavaScript com tsc, configurar o script de start no package.json, e registrar o server no Claude Desktop apontando para o arquivo JavaScript compilado via node.

Por que aprender:

O processo de build é diferente do Python onde não há compilação. Entender como TypeScript compila e como configurar o Claude Desktop para servers Node.js é essencial.

Conceitos-chave:

tsc, npm run build, node dist/index.js, claude_desktop_config.json, shebang, npx.

O que é:

Testar o server TypeScript envolve usar o MCP Inspector para verificar tools, resources e prompts, executar testes unitários com Jest ou Vitest, e comparar o comportamento com o server Python equivalente para garantir paridade.

Por que aprender:

Testes garantem que o server TypeScript funciona corretamente e mantém paridade com implementações Python. É a validação final antes de publicar.

Conceitos-chave:

MCP Inspector, Jest, Vitest, testes unitários, paridade de implementação, debugging Node.js.

Ver Completo
Módulo 5.5 ~25 min · Teórico

🗺️ Explorando Servers da Comunidade

Tour pelos melhores MCP Servers open-source e como integrá-los no seu workflow.

O que é:

O ecossistema MCP já conta com centenas de servers cobrindo categorias como desenvolvimento, produtividade, dados, comunicação e infraestrutura. Repositórios como awesome-mcp-servers catalogam os melhores projetos disponíveis.

Por que aprender:

Conhecer o ecossistema evita reinventar a roda. Muitas vezes o server que você precisa já existe, bastando instalá-lo e configurá-lo.

Conceitos-chave:

Ecossistema MCP, awesome-mcp-servers, categorias de servers, maturidade do ecossistema, crescimento.

O que é:

A Anthropic mantém servers oficiais de referência como filesystem (acesso a arquivos), fetch (requisições HTTP), e GitHub (integração com repositórios). Eles servem como exemplo de implementação e são usados em produção.

Por que aprender:

Os servers oficiais são a referência de qualidade do ecossistema. Estudar seu código é a melhor forma de aprender boas práticas de implementação MCP.

Conceitos-chave:

Servers oficiais, filesystem, fetch, GitHub, PostgreSQL, referência de implementação, qualidade.

O que é:

A comunidade criou servers para praticamente tudo: Slack, Notion, Google Calendar, Docker, Kubernetes, bancos de dados, web scraping e muito mais. Muitos têm centenas de stars e são mantidos ativamente.

Por que aprender:

Conhecer os top servers da comunidade expande enormemente as capacidades do seu setup. Combinar múltiplos servers cria workflows poderosos e automatizados.

Conceitos-chave:

Servers comunitários, Slack MCP, Notion MCP, Docker MCP, web scraping, automação.

O que é:

Avaliar um MCP Server envolve verificar: manutenção ativa (commits recentes), qualidade do README, testes automatizados, número de issues abertas, segurança do código e compatibilidade com seu ambiente.

Por que aprender:

Nem todo server open-source é confiável. Saber avaliar qualidade e segurança protege seu ambiente e garante que você escolha projetos que serão mantidos a longo prazo.

Conceitos-chave:

Due diligence, code review, manutenção ativa, segurança, licença, comunidade, documentação.

O que é:

Instalar servers de terceiros geralmente envolve: clonar o repositório ou instalar via pip/npm, configurar variáveis de ambiente (API keys, tokens), adicionar a entrada no claude_desktop_config.json e testar a conexão.

Por que aprender:

Saber instalar servers de terceiros corretamente expande suas capacidades sem escrever código. É a forma mais rápida de adicionar funcionalidades ao seu setup.

Conceitos-chave:

pip install, npx, claude_desktop_config.json, variáveis de ambiente, API keys, troubleshooting.

O que é:

O poder do MCP se multiplica quando você combina múltiplos servers. Por exemplo: filesystem + GitHub + Slack permite que o Claude leia código, crie PRs e notifique o time automaticamente. As combinações são ilimitadas.

Por que aprender:

Combinar servers é onde o MCP realmente brilha. É a composabilidade em ação — cada server adiciona capacidades que se complementam, criando workflows impossíveis com tools isoladas.

Conceitos-chave:

Composabilidade, workflows multi-server, automação, orquestração, sinergia de tools, produtividade.

Ver Completo
Módulo 5.6 ~20 min · Teórico

🔮 O Futuro do MCP

Roadmap do protocolo, tendências emergentes e oportunidades profissionais.

O que é:

O roadmap oficial do MCP inclui melhorias como autenticação nativa no protocolo, suporte a streaming bidirecional, discovery de servers, e integração mais profunda com agentes autônomos. A especificação evolui em ciclos regulares.

Por que aprender:

Conhecer o roadmap permite antecipar mudanças e preparar seus servers para futuras versões do protocolo. Early adopters se beneficiam de cada nova feature.

Conceitos-chave:

Roadmap MCP, autenticação nativa, streaming bidirecional, discovery, evolução do protocolo, breaking changes.

O que é:

Tendências emergentes incluem: MCP em dispositivos móveis, integração com IoT, servers especializados por indústria (saúde, finanças, educação), e convergência com outros protocolos de IA como A2A (Agent-to-Agent).

Por que aprender:

Identificar tendências cedo permite posicionar-se estrategicamente. Criar servers para nichos emergentes antes da concorrência é uma vantagem significativa.

Conceitos-chave:

MCP mobile, IoT, servers verticais, A2A protocol, convergência de protocolos, edge computing.

O que é:

Marketplaces de MCP tools são plataformas onde desenvolvedores publicam e usuários descobrem servers. Similar a app stores, eles facilitam distribuição, reviews, instalação com um clique e potencialmente monetização de servers premium.

Por que aprender:

Marketplaces representam uma oportunidade de monetização para criadores de MCP Servers. Entender como funcionam prepara você para publicar e potencialmente vender seus servers.

Conceitos-chave:

Marketplace, distribuição, discovery, monetização, reviews, instalação automatizada, certificação.

O que é:

AI Agents são sistemas que executam tarefas autonomamente usando múltiplas tools em sequência. O MCP é a infraestrutura natural para agents, fornecendo acesso padronizado a tools, dados e serviços que os agents precisam para operar.

Por que aprender:

AI Agents são o futuro da IA aplicada. Entender como o MCP habilita agents posiciona você na interseção de duas tecnologias transformadoras.

Conceitos-chave:

AI Agents, autonomia, tool use, orquestração, loops de ação, MCP como infraestrutura, multi-agent systems.

O que é:

O mercado de MCP está nascendo e oferece oportunidades únicas: consultoria de integração, desenvolvimento de servers sob demanda, contribuições open source que geram visibilidade, e posições em empresas que estão adotando o protocolo.

Por que aprender:

Ser um especialista em MCP agora é como ser especialista em React em 2015. A demanda está crescendo exponencialmente e poucos profissionais dominam a tecnologia.

Conceitos-chave:

Mercado MCP, consultoria, freelance, open source, portfólio, networking, early adopter advantage.

O que é:

Após completar as 5 trilhas, seus próximos passos incluem: publicar seu primeiro server open source, contribuir para o ecossistema, explorar servers da comunidade, criar servers para seu nicho profissional e acompanhar a evolução do protocolo.

Por que aprender:

Ter um plano de ação claro após o curso garante que o conhecimento adquirido se transforme em resultados práticos e crescimento profissional contínuo.

Conceitos-chave:

Plano de ação, publicação, contribuição, comunidade, aprendizado contínuo, especialização, portfólio.

Ver Completo
← Trilha Anterior Voltar ao Início