ServerSearcher MCP

Pesquise e compare planos de servidores dedicados, VPS, GPU e nuvem em vários provedores de hospedagem - filtre por diversos parâmetros, incluindo especificações, localização, preço, estoque e capacidade do provedor

Servidor MCP hospedado

npx add-mcp 'https://www.serversearcher.com/api/mcp'

Instala no Claude Code, Codex, Cursor e outros

Documentação

ServerSearcher — Referência da API para agentes de IA

URL base: https://www.serversearcher.com

Busca em texto simples (recomendada para LLMs)

curl -s "https://www.serversearcher.com/api/hostingsearch/search?format=text&type=dedicated&sortConfig=priceAsc&pageSize=20"

curl -s "https://www.serversearcher.com/api/hostingsearch/search?format=text&type=dedicated&maxPrice=200&minRam=32"

A resposta é texto simples em UTF-8 com:

  • Filtros ativos exibidos no topo
  • Contagem total de correspondências
  • Cada plano com página do provedor e URLs de checkout de afiliados

API de busca JSON

curl -s "https://www.serversearcher.com/api/hostingsearch/search?type=dedicated&maxPrice=200&pageSize=20"

curl -s -X POST "https://www.serversearcher.com/api/hostingsearch/search" \
  -H "Content-Type: application/json" \
  -d '{"type":["dedicated"],"maxPrice":"200","pageSize":20,"sortConfig":"priceAsc"}'

Tabela de resultados de busca em HTML (secundária)

A página GET /servers/search/?type=dedicated&maxPrice=200 renderiza no servidor uma <table id="server-search-crawler-results"> contendo a primeira página dos planos correspondentes (provedor, plano, especificações, localização, preço mensal). A tabela está no HTML de cada requisição — nenhum JavaScript é necessário para lê-la — e os parâmetros de consulta alteram a saída renderizada no servidor. Use a API format=text acima quando precisar de mais do que a primeira página.

Parâmetros

ParâmetroTipoDescrição
formatstringDefina como text para respostas em texto simples (somente GET)
typestring[]Tipos de plano: dedicated, virtual, cloud, etc.
minRamstringRAM mínima (GB)
minCpuCoresstringNúcleos de CPU mínimos
cpuModelstringSubstring do modelo de CPU (ex.: EPYC); * e ? são curingas
maxPricestringPreço mensal máximo
locationstring[]UUID da cidade, código do país (ex.: US) ou US-new-york
providerstring[]IDs dos provedores
sortConfigstringpriceAsc, priceDesc, ramAsc, ramDesc, cpuAsc, cpuDesc, …
pagenumberNúmero da página (padrão 1)
pageSizenumberResultados por página (padrão 50, máximo 150)
hasTerraformbooleantrue para filtrar provedores com suporte a Terraform

Estrutura da resposta JSON

Tanto a forma GET quanto a POST de /api/hostingsearch/search retornam o mesmo objeto:

{
  "plans": [
    {
      "id": "…",
      "name": "…",
      "description": "…",
      "type": "dedicated",
      "cpuCores": 8,
      "cpuThreads": 16,
      "cpuModel": "…",
      "cpuFrequency": 3.4,
      "ram": 64,
      "includedBandwidthQuota": 20,
      "portSpeed": 1000,
      "secondPortSpeed": null,
      "additionalDetails": null,
      "directPlanUrl": "…",
      "minMonthlyCostUsd": 129.0,
      "pricePerRamUsd": 2.02,
      "pricePerCpuUsd": 16.13,
      "pricePerRamCpuUsd": 0.25,
      "disks": [{ "id": "…", "capacity": 960, "type": "NVME" }],
      "gpus": [
        {
          "id": "…",
          "model": "…",
          "count": 1,
          "vRAM": 24,
          "architecture": "…",
          "cudaCores": 10752
        }
      ],
      "pricing": [
        {
          "id": "…",
          "monthlyCost": 119.0,
          "hourlyCost": null,
          "currency": "EUR",
          "minimumTerm": 1,
          "setupFee": null,
          "billingCycle": "MONTHLY",
          "usd": {
            "amount": 129.0,
            "rate": 0.92,
            "rateAt": "…",
            "fetchedAt": "…",
            "source": "…"
          }
        }
      ],
      "locations": [
        {
          "locationId": "…",
          "qty": 4,
          "name": "…",
          "cityId": "…",
          "city": "Amsterdam",
          "countryIso": "NL",
          "countryName": "Netherlands",
          "facility": null
        }
      ],
      "promoCodes": [
        {
          "id": "…",
          "code": "…",
          "discountAmount": 50,
          "discountType": "…",
          "currency": "USD",
          "credit": null,
          "description": "…",
          "expiresAt": "…"
        }
      ],
      "provider": {
        "id": "…",
        "name": "…",
        "slug": "…",
        "logo": "…",
        "website": "…",
        "terraformProvider": "OFFICIAL"
      }
    }
  ],
  "totalResults": 412,
  "page": 1,
  "pageSize": 50,
  "searchId": "…",
  "exchangeRatesAvailable": true
}

totalResults é a contagem antes da paginação, então Math.ceil(totalResults / pageSize) é o número de páginas. minMonthlyCostUsd e os três campos pricePer*Usd são normalizados para USD e são os valores pelos quais o site ordena; exchangeRatesAvailable é false quando a leitura mais recente de câmbio falhou, caso em que esses campos podem estar desatualizados.

MCP

Endpoint: https://www.serversearcher.com/api/mcp Ferramenta: search_servers com os mesmos campos de filtro da API JSON. O filtro provider aceita adicionalmente slugs de organizações (ex.: runpod), resolvidos no lado do servidor — a própria API JSON aceita apenas IDs de provedores. type inclui gpu aqui também.