Secure Fetch
Fetch seguro para prevenir acesso a recursos locais
GitHub
3
Experimente este MCPPatrocinadoDocumentação
Secure Fetch
Este projeto implementa uma ferramenta segura de busca de URLs usando FastMCP.
Pré-requisitos
- Python 3.7+
- uv (instalador de pacotes e gerenciador de ambientes Python)
Instalação
- Instale o uv, caso ainda não tenha feito:
pip install uv
- Crie um novo ambiente virtual e instale as dependências:
uv venv source .venv/bin/activate uv pip install fastmcp requests
Uso
- Defina a variável de ambiente allowlist (opcional):
export SECURE_FETCH_ALLOWLIST="example.com,trusted-domain.org"
- Execute o script:
uv run main.py
Recursos
- Busca URLs de forma segura
- Resolve domínios para IPs
- Verifica IPs privados/internos
- Lida com redirecionamentos (até 3)
- Suporta métodos HTTP e cabeçalhos personalizados
- Usa uma allowlist para domínios/IPs confiáveis
Considerações de Segurança
- A ferramenta impede o acesso a IPs privados/internos, a menos que seja explicitamente permitido
- Apenas esquemas HTTP e HTTPS são permitidos
- O SNI é configurado para corresponder ao hostname em conexões HTTPS
Exemplo de Uso
Assim que o script estiver em execução, você pode usar a função fetch_url para buscar URLs com segurança. A função retornará um dicionário contendo o código de status, o corpo da resposta e o comprimento do conteúdo.
Nota
Esta ferramenta foi projetada para busca segura de URLs. Sempre revise e entenda o código antes de usá-lo em seu ambiente.