MCP URL Format Converter
Obtém conteúdo de qualquer URL e converte para HTML, JSON, Markdown ou texto simples.
Documentação
MCP URL Format Converter
Um servidor Model Context Protocol (MCP) que busca conteúdo de qualquer URL e o converte para o formato de saída desejado.
Visão Geral
O MCP URL Format Converter fornece ferramentas para recuperar conteúdo de qualquer URL da web e transformá-lo em vários formatos (HTML, JSON, Markdown ou texto simples), independentemente do tipo de conteúdo original. Ele foi projetado para funcionar com qualquer cliente compatível com MCP, incluindo o Claude for Desktop, permitindo que LLMs acessem, transformem e analisem conteúdo da web em um formato consistente.
Recursos
- 🔄 Conversão de Formato: Transforme qualquer conteúdo da web em HTML, JSON, Markdown ou texto simples
- 🌐 Suporte Universal de Entrada: Lide com sites, APIs, arquivos brutos e mais
- 🔍 Detecção Automática de Conteúdo: Identifica inteligentemente o formato de origem
- 🧰 Suporte Robusto a Bibliotecas: Usa bibliotecas padrão da indústria:
- Cheerio para análise de HTML
- Marked para processamento de Markdown
- Fast-XML-Parser para manipulação de XML
- CSVtoJSON para conversão de CSV
- SanitizeHTML para segurança
- Turndown para conversão de HTML para Markdown
- 🔧 Processamento Avançado de Formato:
- Análise de HTML com extração de metadados
- Formatação JSON e preservação de estrutura
- Renderização de Markdown com estilos
- Conversão de CSV para tabela
- Transformação de XML para JSON
- 📜 Rastreamento de Histórico: Mantém registros de URLs buscadas recentemente
- 🛡️ Foco em Segurança: Sanitização de conteúdo para prevenir ataques XSS
Instalação
Pré-requisitos
- Node.js 16.x ou superior
- npm ou yarn
Início Rápido
-
Clone o repositório:
git clone https://github.com/yourusername/mcp-url-converter.git cd mcp-url-converter -
Instale as dependências:
npm install -
Compile o projeto:
npm run build -
Execute o servidor:
npm start
Integração com o Claude for Desktop
-
Abra o arquivo de configuração do Claude for Desktop:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
- macOS:
-
Adicione o servidor conversor de URL à sua configuração:
{ "mcpServers": { "url-converter": { "command": "node", "args": ["/absolute/path/to/mcp-url-converter/build/index.js"] } } } -
Reinicie o Claude for Desktop
Ferramentas Disponíveis
fetch
Busca conteúdo de qualquer URL e detecta automaticamente o melhor formato de saída.
Parâmetros:
url(string, obrigatório): A URL para buscar o conteúdoformat(string, opcional): Formato para converter (auto,html,json,markdown,text). Padrão:auto
Exemplo:
Can you fetch https://example.com and choose the best format to display it?
fetch-json
Busca conteúdo de qualquer URL e o converte para o formato JSON.
Parâmetros:
url(string, obrigatório): A URL para buscar o conteúdoprettyPrint(booleano, opcional): Se deve formatar o JSON. Padrão:true
Exemplo:
Can you fetch https://example.com and convert it to JSON format?
fetch-html
Busca conteúdo de qualquer URL e o converte para o formato HTML.
Parâmetros:
url(string, obrigatório): A URL para buscar o conteúdoextractText(booleano, opcional): Se deve extrair apenas o conteúdo de texto. Padrão:false
Exemplo:
Can you fetch https://api.example.com/users and convert it to HTML?
fetch-markdown
Busca conteúdo de qualquer URL e o converte para o formato Markdown.
Parâmetros:
url(string, obrigatório): A URL para buscar o conteúdo
Exemplo:
Can you fetch https://example.com and convert it to Markdown?
fetch-text
Busca conteúdo de qualquer URL e o converte para o formato de texto simples.
Parâmetros:
url(string, obrigatório): A URL para buscar o conteúdo
Exemplo:
Can you fetch https://example.com and convert it to plain text?
web-search e deep-research
Essas ferramentas fornecem interfaces para os recursos de busca do Perplexity (quando suportados pelo host MCP).
Recursos Disponíveis
recent-urls://list
Retorna uma lista de URLs buscadas recentemente com carimbos de data/hora e formatos de saída.
Exemplo:
What URLs have I fetched recently?
Segurança
Este servidor implementa várias medidas de segurança:
- Sanitização de HTML usando
sanitize-htmlpara prevenir ataques XSS - Validação de conteúdo antes do processamento
- Tratamento de erros e padrões seguros
- Validação de parâmetros de entrada com Zod
- Codificação segura de saída
Testes
Você pode testar o servidor usando o MCP Inspector:
npm run test
Solução de Problemas
Problemas Comuns
- Erros de conexão: Verifique se a URL está acessível e formatada corretamente
- Erros de conversão: Alguns conteúdos complexos podem não converter perfeitamente entre formatos
- Problemas de origem cruzada: Alguns sites podem bloquear solicitações de fontes desconhecidas
Modo de Depuração
Para obter informações adicionais de depuração, defina a variável de ambiente DEBUG:
DEBUG=mcp:* npm start
Licença
Este projeto está licenciado sob a Licença MIT - consulte o arquivo LICENSE para obter detalhes.
Agradecimentos
- Construído com o Model Context Protocol
- Usa bibliotecas modernas e ativamente mantidas com foco em segurança
- Abordagem de sanitização baseada nas recomendações da OWASP
Última atualização: 29 de março de 2025