1
🔌 O que e MCP
Model Context Protocol (MCP) e um protocolo padrao para conectar LLMs a servicos externos. Permite que Claude acesse databases, APIs, sistemas de arquivos especiais e muito mais.
O que MCP oferece
- •Tools: Novas ferramentas que Claude pode usar
- •Resources: Dados que Claude pode ler
- •Prompts: Templates de prompt pre-definidos
2
🏗️ Arquitetura MCP
MCP usa arquitetura cliente-servidor com comunicacao via JSON-RPC sobre stdio ou HTTP/SSE.
Fluxo de Comunicacao
┌──────────────┐ JSON-RPC ┌──────────────┐
│ │ ──────────────► │ │
│ Claude Code │ stdio │ MCP Server │
│ (Client) │ ◄────────────── │ (Tools) │
│ │ │ │
└──────────────┘ └──────────────┘
│
▼
┌──────────────┐
│ External │
│ Service │
│ (DB, API) │
└──────────────┘
3
⚙️ Configurando MCP Servers
settings.json
{
"mcpServers": {
"filesystem": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/path/to/dir"]
},
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": {
"GITHUB_TOKEN": "$GITHUB_TOKEN"
}
}
}
}
4
📦 Servers Populares
@mcp/server-filesystem
Acesso controlado a sistema de arquivos
@mcp/server-github
Integracao com GitHub API
@mcp/server-postgres
Conexao com PostgreSQL
@mcp/server-slack
Integracao com Slack
@mcp/server-memory
Memoria persistente entre sessoes
@mcp/server-brave-search
Busca web via Brave
5
🛠️ Criando seu MCP Server
Estrutura Basica (TypeScript)
import { Server } from '@modelcontextprotocol/sdk/server/index.js';
import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
const server = new Server({
name: 'my-server',
version: '1.0.0'
});
// Registrar tool
server.setRequestHandler('tools/list', async () => ({
tools: [{
name: 'my_tool',
description: 'Does something useful',
inputSchema: { type: 'object', properties: {} }
}]
}));
// Iniciar servidor
const transport = new StdioServerTransport();
await server.connect(transport);
6
🔐 Seguranca e Permissoes
⚠️ Consideracoes de Seguranca
- • MCP servers podem acessar dados sensiveis - audite antes de usar
- • Use variaveis de ambiente para credentials, nunca hardcode
- • Limite permissoes ao minimo necessario
- • Servers de terceiros devem ser de fontes confiaveis
💡 Boa Pratica
Crie um MCP server separado para cada servico em vez de um server monolitico. Isso facilita auditoria e permite permissoes granulares.
📚 Resumo do Modulo
✓
MCP - Model Context Protocol para integracao com servicos externos
✓
Arquitetura - Cliente (Claude) + Server + Servico externo via JSON-RPC
✓
Configuracao - mcpServers em settings.json com command e args
✓
Servers - filesystem, github, postgres, slack, memory, etc
Proximo Modulo:
2.7 - IDE Integrations