n8n
Fornece aos assistentes de IA acesso direto à plataforma de automação n8n.
Documentação
Servidor MCP n8n
[!IMPORTANT] Este repositório está arquivado e não é mais mantido.
Para uma integração MCP n8n mantida ativamente, use czlonkowski/n8n-mcp.
Dependendo do seu caso de uso, acessar o n8n diretamente por meio da API com uma chave de API—ou usar acesso direto ao banco de dados cuidadosamente escopado—pode ser uma solução mais simples e direta do que executar um servidor MCP separado. As orientações focadas na construção de fluxos de trabalho em czlonkowski/n8n-skills também podem ser úteis junto com o método de acesso escolhido.
Um servidor abrangente de Model Context Protocol (MCP) que fornece aos assistentes de IA acesso direto à sua plataforma de automação n8n. Este servidor permite integração perfeita entre ferramentas de IA (como Claude Desktop) e fluxos de trabalho, variáveis, credenciais e execuções do n8n.
🚀 Recursos
Integração Completa com n8n (18 Ferramentas)
-
Gerenciamento de Fluxos de Trabalho (7 ferramentas)
list_workflows- Listar todos os fluxos de trabalhoget_workflow- Obter detalhes do fluxo de trabalho por IDcreate_workflow- Criar novos fluxos de trabalhoupdate_workflow- Atualizar fluxos de trabalho existentesdelete_workflow- Excluir fluxos de trabalhoactivate_workflow- Ativar fluxos de trabalhodeactivate_workflow- Desativar fluxos de trabalho
-
Gerenciamento de Variáveis (5 ferramentas)
list_variables- Listar todas as variáveisget_variable- Obter variável por chavecreate_variable- Criar novas variáveisupdate_variable- Atualizar variáveis existentesdelete_variable- Excluir variáveis
-
Gerenciamento de Credenciais (3 ferramentas)
list_credentials- Listar todas as credenciais (saneadas)create_credential- Criar novas credenciaisdelete_credential- Excluir credenciais
-
Gerenciamento de Execuções (2 ferramentas)
list_executions- Listar execuções de fluxos de trabalhoget_execution- Obter detalhes da execução por ID
-
Gerenciamento do Sistema (1 ferramenta)
self_test- Testar conectividade e permissões do servidor
Arquitetura Híbrida
- Protocolo MCP: Conformidade total com JSON-RPC 2.0 via transporte stdio
- Ponte HTTP: Verificações de integridade e endpoints de teste
- Detecção automática: Alterna automaticamente entre modos
📦 Instalação
Pré-requisitos
- Node.js 18+
- Instância n8n em execução e acessível
- Chave de API n8n configurada
Configuração
-
Clonar o repositório
git clone <repository-url> cd n8n-mcp -
Instalar dependências
npm install -
Configurar o ambiente
cp .env.example .env # Edit .env with your settings: # N8N_API_KEY=your-api-key-here # N8N_BASE_URL=http://localhost:5678 # MCP_PORT=3001 -
Testar a instalação
# Test HTTP endpoints node index.js & curl http://localhost:3001/health # Test MCP protocol node test-all-tools.js
🔧 Uso
Para Clientes MCP (Claude Desktop, etc.)
O servidor é executado como um servidor MCP baseado em stdio para clientes de IA:
node index.js
Configuração do Claude Desktop (~/.claude_desktop_config.json):
{
"mcpServers": {
"n8n": {
"command": "node",
"args": ["index.js"],
"cwd": "/path/to/n8n-mcp",
"env": {
"N8N_API_KEY": "your-n8n-api-key-here",
"N8N_BASE_URL": "http://localhost:5678"
}
}
}
}
Para Monitoramento HTTP
Quando executado em um terminal (TTY), o servidor fornece endpoints HTTP:
node index.js
# Server starts on http://localhost:3001
# Available endpoints:
# GET /health - Health check
# POST /test - Run self-test
# GET / - Usage instructions
Teste Direto do MCP
Teste o protocolo MCP diretamente:
# Initialize connection
echo '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{},"clientInfo":{"name":"test","version":"1.0.0"}}}' | node index.js
# List tools
echo '{"jsonrpc":"2.0","id":2,"method":"tools/list","params":{}}' | node index.js
# Call a tool
echo '{"jsonrpc":"2.0","id":3,"method":"tools/call","params":{"name":"self_test","arguments":{}}}' | node index.js
🧪 Testes
Suíte de Testes Abrangente
Execute a suíte de testes completa para validar todas as 18 ferramentas:
node test-all-tools.js
Isso irá:
- Testar a conformidade com o protocolo MCP
- Validar todas as definições de ferramentas
- Verificar a conectividade com a API n8n
- Verificar o tratamento de erros
- Fornecer resultados detalhados
Testes Manuais
# Health check
curl http://localhost:3001/health
# Quick self-test
curl -POST http://localhost:3001/test
# Individual tool test
echo '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"list_workflows","arguments":{"limit":5}}}' | node index.js
🔒 Segurança
Gerenciamento de Chaves de API
- Armazene chaves de API em variáveis de ambiente
- Use arquivos
.envpara desenvolvimento local - Nunca envie chaves de API para o controle de versão
Saneamento de Credenciais
- Os dados de credenciais são automaticamente saneados nas respostas
- Apenas metadados (ID, nome, tipo) são expostos
- Dados sensíveis de credenciais nunca são retornados
Segurança de Rede
- O servidor HTTP vincula-se a localhost por padrão
- Cabeçalhos CORS configurados para solicitações entre origens
- Nenhum dado sensível é exposto por meio de endpoints HTTP
🐛 Solução de Problemas
Problemas Comuns
1. "N8N_API_TOKEN não configurado"
# Solution: Set your API key
export N8N_API_KEY=your-api-key-here
# Or add to .env file
2. Erros de "Conexão recusada"
# Solution: Check n8n is running
curl http://localhost:5678/api/v1/workflows?limit=1 -H "X-N8N-API-KEY: your-key"
3. "A licença não permite feat:variables"
# This is expected for n8n Community Edition
# Variables require n8n Pro/Enterprise license
# The tool will still work but return license errors
4. "Método GET não permitido" para credenciais
# Some n8n configurations restrict credential access
# Check your n8n security settings
5. Porta já em uso (EADDRINUSE)
# Solution: Kill existing process or change port
pkill -f "node index.js"
# Or set different port: MCP_PORT=3002 node index.js
Modo de Depuração
Ative o registro detalhado:
DEBUG=1 node index.js
Validar Configuração
# Test n8n connectivity
curl -H "X-N8N-API-KEY: your-key" http://localhost:5678/api/v1/workflows?limit=1
# Test MCP server
node test-all-tools.js
📊 Monitoramento
Verificações de Integridade
# Basic health
curl http://localhost:3001/health
# Detailed system test
curl -X POST http://localhost:3001/test | jq '.result.summary'
Monitoramento de Desempenho
O servidor registra todas as execuções de ferramentas e fornece informações de tempo:
- Tempo de execução da ferramenta
- Tempo de resposta da API n8n
- Taxas e tipos de erros
🤝 Contribuindo
Configuração de Desenvolvimento
- Faça um fork do repositório
- Crie um branch de recurso
- Faça suas alterações
- Execute os testes:
node test-all-tools.js - Envie um pull request
Adicionando Novas Ferramentas
- Adicione a definição da ferramenta em
setupToolHandlers() - Implemente o método da ferramenta
- Adicione o caso de teste em
test-all-tools.js - Atualize a documentação
📄 Licença
Licença MIT - consulte o arquivo LICENSE para obter detalhes.
🔗 Projetos Relacionados
- n8n - Plataforma de automação de fluxos de trabalho
- Model Context Protocol - Especificação do protocolo
- Claude Desktop - Assistente de IA com suporte a MCP
📞 Suporte
- Problemas: Use o GitHub Issues para relatórios de bugs
- Discussões: Use o GitHub Discussions para perguntas
- Documentação: Consulte este README e comentários inline no código
Pronto para automatizar com IA? 🤖✨
Seus fluxos de trabalho n8n agora estão acessíveis aos assistentes de IA por meio do Model Context Protocol!