catalog-intelligence-agent
MCP server for autonomous catalog enrichment, turning raw ERP data into storefront-ready product listings with SEO titles, descriptions, images, schema.org, and validation. Provides tools for EAN lookup, image search, enrichment, batch processing, URL analysis, and Shopify payload generation.
README
Catalog Intelligence Agent
Agente MCP de enriquecimento autônomo de catálogo para STOREFRONTS (lojas próprias). Trilha Catalog & Content — Hackathon Agents for Commerce (Deco, 01–09/08/2026).
Recebe dados brutos de ERP (título em CAIXA ALTA, sem descrição, marca genérica, sem imagem) e devolve o produto pronto para publicar na loja própria do lojista — com título SEO, bullets de benefícios, descrição HTML mobile-first, slug/meta, schema.org JSON-LD e imagem.
Não é integrador de marketplace: foca no motor central de higienização que qualquer storefront (deco.cx, VTEX, Shopify, Nuvemshop…) consome via um agente de IA.
Ferramentas MCP (5)
| Tool | O que faz |
|---|---|
lookup_ean |
Dados de referência por EAN/GTIN (valida dígito verificador + cascade: Bluesoft Cosmos BR → Open Food Facts → EAN-Search) |
search_images |
URLs de imagem candidatas por EAN ou título (marca própria sem EAN → Unsplash/Pexels) |
enrich_product |
Pipeline completo: higieniza título → bullets → descrição HTML → SEO → schema.org JSON-LD → imagem (rembg fundo branco) → análise visual → SEO da imagem (alt/filename/caption) |
validate_listing |
Score 0–100 de completeza p/ loja própria (SEO on-page, dados, schema.org, imagem, regras de moda: grade/composição/cor/medidas) + issues |
enrich_batch |
Orquestra lote de até 50 produtos → relatório consolidado |
analyze_url |
Raspa e diagnostica a página de um produto na loja do cliente (título, preço, marca, SKU, imagens, EAN) |
analyze_image |
Analisa a imagem: resolução, proporção, fundo, nitidez, metadados EXIF + prontidão p/ loja |
fetch_product_images |
Baixa até 10 imagens e exibe galeria no chat (data-URLs) ou retorna caminhos locais |
prepare_shopify_payload |
Converte o produto enriquecido no payload GraphQL productCreate (publicação automática na loja, sem copiar/colar) |
Impacto financeiro (pitch)
- Operação de 5.000 SKUs gasta ~200 h/mês de equipe de catálogo → R$ 5.000/mês em horas (R$25/h)
- Concorrência (PIMs + IA): US$600–1.000/mês para 500 SKUs — nosso custo ≈ R$0–50/lote
- Demo inteira roda em free tiers (~R$0)
Execução
npm install
npm run build # tsc → dist/
npm run dev # modo dev (tsx watch) — MCP server stdio
npm start # node dist/server.js — MCP server stdio
npm test # testes unitários (9): EAN, validate, schema
npm run smoke # smoke end-to-end do protocolo MCP (6 checks, stdio)
Conectar em um cliente MCP
Claude Desktop / Cursor / CLI:
{ "mcpServers": { "catalog-intelligence": { "command": "node", "args": ["/caminho/para/dist/server.js"] } } }
deco Studio (Custom Connection): rode o servidor HTTP e aponte a Connection para o endpoint:
PORT=8788 node dist/http.js # Streamable HTTP em http://localhost:8788/mcp
No Studio: Agent → Settings → Connections → Add Connection → Custom Connection → cole a URL → selecione as tools do agente.
Teste com MCP Inspector
npx @modelcontextprotocol/inspector node dist/server.js
Exemplo
Entrada (ERP):
{ "ean": "7891234567890", "title": "FURADEIRA IMPACTO 750W 110V", "brand": "SEM MARCA" }
Saída (storefront):
{
"title": "Furadeira de Impacto 750W 110V",
"slug": "furadeira-de-impacto-750w-110v",
"meta_title": "Furadeira de Impacto 750W 110V — Compre Online",
"bullets": ["✅ Potência de 750W...", "✅ Mandril 13mm...", "✅ Ideal para uso doméstico e profissional..."],
"description_html": "<p>Furadeira de impacto profissional...</p>",
"seo_keywords": ["furadeira", "furadeira de impacto", "750w"],
"schema_org": { "@type": "Product", "name": "Furadeira de Impacto 750W 110V", "sku": "7891234567890", "brand": {"@type":"Brand","name":"..."} },
"image_url": "https://...",
"warnings": []
}
Stack
- TypeScript ESM (Node 22+)
@modelcontextprotocol/sdk(MCP) +zod(schemas)- Transportes: stdio (dev) + Streamable HTTP (deco Studio)
- IA: qualquer endpoint OpenAI-compatível via env (
AI_ENDPOINT,AI_MODEL,AI_API_KEY) — sem key, o agente funciona 100% determinístico - Zero dependências proprietárias — sem regras de marketplace, sem pricing engine
Env vars
| Var | Uso | Obrigatória |
|---|---|---|
AI_ENDPOINT |
Endpoint OpenAI-compatível (default: Nous inference) | não |
AI_MODEL |
Modelo (default: deepseek-v4-flash) |
não |
AI_API_KEY |
Key da IA (sem ela → fallback determinístico) | não |
COSMOS_TOKEN |
Bluesoft Cosmos BR (opcional, 1ª fonte EAN) | não |
EAN_SEARCH_TOKEN |
EAN-Search.org (opcional, 3ª fonte) | não |
PORT |
Porta do Streamable HTTP (default 8788) | não |
Integração com deco Studio
O servidor é um MCP server padrão — pluga como Connection customizada no Studio
(control plane de agentes da Deco). A demo mostra o agente rodando dentro do Studio:
conectar → chamar enrich_product → ver trace/custo no Monitor.
Author
Carlos Nunes — ClickPim (consultor Amazon BR / automação de catálogo). Submissão individual, hackathon Agents for Commerce — trilha Catalog & Content.
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。
mcp-server-qdrant
这个仓库展示了如何为向量搜索引擎 Qdrant 创建一个 MCP (Managed Control Plane) 服务器的示例。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。