Enables querying and analyzing product data stored in Supabase, with tools for searching products, retrieving detailed product information, listing categories, and generating product statistics and analytics.
TalkHub Store MCP Server
Servidor MCP (Model Context Protocol) para integração com Supabase, permitindo que assistentes de IA acessem e manipulem dados da loja.
🚀 Funcionalidades
O servidor expõe as seguintes ferramentas via protocolo MCP:
🔍 search_products
Busca produtos no catálogo com filtros avançados:
- Busca por nome ou descrição
- Filtro por categoria
- Filtro por disponibilidade
- Paginação com limit e offset
📦 get_product_by_id
Obtém detalhes completos de um produto específico pelo ID.
📂 list_categories
Lista todas as categorias de produtos disponíveis.
📊 analyze_products
Gera estatísticas detalhadas dos produtos:
- Total de produtos
- Produtos disponíveis/indisponíveis
- Preço médio, mínimo e máximo
- Distribuição por faixa de preço
🔎 advanced_search
Busca avançada com múltiplos filtros:
- Faixa de preço (mínimo e máximo)
- Ordenação por nome, preço, data ou ordem
- Direção da ordenação (ascendente/descendente)
📋 Pré-requisitos
- Docker e Docker Compose instalados
- Stack Supabase em execução
- Rede
talkhub
criada - Volume
mcp_node_modules
criado
🛠️ Instalação
1. Criar volumes e diretórios necessários
2. Criar arquivos do servidor
Copie os seguintes arquivos para /root/mcp-server/
:
server.js
- Servidor principalpackage.json
- Dependências do projetotest-client.js
- Cliente de teste (opcional)
3. Deploy da stack
4. Verificar logs
🔧 Configuração
Variáveis de Ambiente
O servidor utiliza as seguintes variáveis de ambiente (já configuradas no docker-compose.yml):
PORT
: Porta do servidor (padrão: 3033)SUPABASE_URL
: URL do SupabaseSUPABASE_ANON_KEY
: Chave anônima do SupabaseSUPABASE_SERVICE_KEY
: Chave de serviço do SupabaseMCP_SERVER_NAME
: Nome do servidor MCPMCP_SERVER_VERSION
: Versão do servidor
Configuração no Claude Desktop
- Localize o arquivo de configuração do Claude Desktop:
- Windows:
%APPDATA%\Claude\claude_desktop_config.json
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
- Linux:
~/.config/Claude/claude_desktop_config.json
- Windows:
- Adicione a configuração do servidor:
- Reinicie o Claude Desktop
🧪 Testes
Testar localmente
Testar remotamente
🏗️ Arquitetura
Protocolo MCP
O servidor implementa o Model Context Protocol v2024-11-05 com suporte para:
- JSON-RPC 2.0: Comunicação principal
- Server-Sent Events (SSE): Streaming de dados
- WebSocket: Conexões bidirecionais
Fluxo de Comunicação
- Cliente envia
initialize
com suas capacidades - Servidor responde com suas capacidades e informações
- Cliente envia
initialized
para confirmar - Cliente pode listar ferramentas com
tools/list
- Cliente executa ferramentas com
tools/call
Estrutura de Resposta
Todas as ferramentas retornam respostas no formato:
🔐 Segurança
- CORS configurado para permitir origens necessárias
- Helmet.js para headers de segurança
- Autenticação via Supabase service key
- HTTPS obrigatório via Traefik
📊 Monitoramento
- Logs via Morgan em formato combined
- Health check endpoint em
/health
- Métricas de uptime disponíveis
🚨 Troubleshooting
Container não inicia
Erro de conexão com Supabase
- Verificar se as chaves estão corretas
- Verificar se o Supabase está acessível
- Testar conexão direta:
curl https://supatalk.talkhub.me/rest/v1/produtos
Claude Desktop não conecta
- Verificar configuração do claude_desktop_config.json
- Reiniciar Claude Desktop
- Verificar logs do servidor
- Testar endpoint SSE manualmente
🔄 Atualizações
Para atualizar o servidor:
- Modificar arquivos no diretório
/root/mcp-server/
- Reiniciar o serviço:
📝 Exemplos de Uso
Buscar produtos com "salgado"
Analisar produtos por categoria
🤝 Contribuição
Para adicionar novas ferramentas:
- Editar
server.js
- Adicionar novo método em
setupTools()
- Registrar com
this.registerTool()
- Testar com
test-client.js
- Documentar no README
📄 Licença
MIT License - Veja o arquivo LICENSE para detalhes.
This server cannot be installed
A Model Context Protocol server that integrates with Supabase, allowing AI assistants to access and manipulate store data through tools for product searching, filtering, and analysis.
Related MCP Servers
- -securityFlicense-qualityA Model Context Protocol server that enables querying feature suggestions from a Supabase database, allowing AI tools like Cursor and Claude to access and display feature request data.Last updated -TypeScript
- -securityAlicense-qualityA Model Context Protocol server that enables AI tools to interact with Supabase databases, providing tools for reading, creating, updating, and deleting records in Supabase tables.Last updated -PythonMIT License
- -securityFlicense-qualityA Model Context Protocol server that allows AI models to log and retrieve contact events with various authorities (police, fire, medical, etc.) with rate limiting and persistent storage via Supabase.Last updated -1TypeScript
- -securityAlicense-qualityA Model Context Protocol server that provides AI assistants with comprehensive access to SQL databases, enabling schema inspection, query execution, and database operations with enterprise-grade security.Last updated -42TypeScriptMIT License