Expired Local MCP

MCP HTTP Streamable hospedado para inteligência de domínios Expired Local. Pesquise domínios de negócios expirados, em leilão e em exclusão pendente com sinais de GMB, redes sociais e SEO a partir do Claude, Cursor ou Codex. Documentação: https://www.expiredlocal.com/docs/mcp/

Servidor MCP hospedado

npx add-mcp 'https://api.expiredlocal.com/mcp'

Instala no Claude Code, Codex, Cursor e outros

Documentação

Hospedado por ExpiredLocalSem instalação

https://api.expiredlocal.com/mcp

Transporte

HTTP Streamable

Autenticação

Chave de API Bearer

Ferramentas

7 leitura · 1 revelação

Conecte seu cliente

Seu cliente precisa de HTTP Streamable remoto e cabeçalhos personalizados. Nenhum download é necessário.

  1. Crie uma chave somente leitura

    Abra Conta → Chaves de API, crie uma chave Somente leitura e salve o valor completo.
  2. Adicione a conexão remota

    Use a URL acima com Authorization: Bearer YOUR_API_KEY. Não use a URL REST /v1.
  3. Conecte e descubra ferramentas

    Reconecte e chame list_business_types. Isso não usa créditos; passe um inventário e, opcionalmente, um código de país.

Clientes somente OAuth, somente SSE legado e somente navegador não são suportados.

Escolha a configuração do seu cliente

Adicione a entrada à sua configuração existente. Nunca cole uma chave real em um prompt.

Use este padrão somente se o seu cliente aceitar um objeto mcpServers com servidores HTTP e cabeçalhos personalizados. Substitua YOUR_API_KEY na sua configuração privada; os nomes dos campos não são universais.

{
  "mcpServers": {
    "expiredlocal": {
      "type": "http",
      "url": "https://api.expiredlocal.com/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_API_KEY"
      }
    }
  }
}

Se o seu cliente usar um formulário, insira a mesma URL e o cabeçalho bearer.

Faça uma primeira solicitação somente leitura

Tente perguntar ao seu assistente

"Liste as extensões de domínio e depois encontre 20 domínios expirados dos EUA com pelo menos 10 avaliações. Não revele nada."

Você deve ver oito ferramentas. Resultados expirados não revelados omitem o nome do domínio.

Chaves somente leitura não podem chamar reveal_domains.

Referência de ferramentas

As ferramentas seguem as regras de acesso da Domain API. Não há ferramentas de conta ou cobrança.

FerramentaAcessoRetorna
search_expired_domainsLeituraInventário expirado filtrado e paginado.
search_auction_domainsLeituraInventário de leilão filtrado e paginado.
search_pending_delete_domainsLeituraInventário de exclusão pendente filtrado e paginado.
list_business_typesLeituraCategorias canônicas e contagens de inventário.
list_domain_tldsLeituraExtensões e contagens de inventário.
list_revealed_domainsLeituraSeus nomes revelados e metadados.
get_domain_detailsLeituraPesquisa detalhada para um domínio.
reveal_domainsEscritaRevela até 100 domínios em uma única solicitação.

Expanda uma ferramenta para ver entradas e saídas de exemplo. Os exemplos são fictícios.

search_expired_domains Pesquisar domínios expiradosLeitura

Pesquise domínios que já caíram por geografia, categoria de negócio, extensão, avaliações e sinais de SEO.

Argumentos

pagination objeto · opcional

Contém page e page_size.

business, location, tlds objetos tipados · opcional

Use business.type_keys para chaves de categoria exatas e arrays include/exclude para filtros de localização e TLD.

business_profile, seo, social, lifecycle, sort objetos tipados · opcional

Intervalos usam { min, max }; o ciclo de vida aceita dropped_after e dropped_before como instantes RFC 3339.

{
  "pagination": {
    "page": 1,
    "page_size": 20
  },
  "location": {
    "countries": {
      "include": [
        "US"
      ]
    }
  },
  "business_profile": {
    "reviews": {
      "min": 10
    }
  }
}

Resultado

items contém registros de inventário; total é a contagem de correspondências. domain_id é a entrada para reveal_domains e get_domain_details. Um registro não revelado ainda pode conter sinais de pesquisa sem o nome do domínio.

{
  "items": [
    {
      "domain_id": 12345,
      "status": "expired",
      "business_type": "Plumber",
      "business_type_key": "plumber",
      "review_count": 31,
      "country_code": "US",
      "city": "Austin",
      "tld": "com",
      "revealed": false,
      "social_data_status": "processed",
      "social_platforms": [],
      "social_profiles": []
    }
  ],
  "total": 1,
  "page": 1,
  "page_size": 20
}

search_auction_domains Pesquisar domínios em leilãoLeitura

Pesquise domínios em leilões ativos por plataforma, geografia, categoria de negócio, extensão, avaliações e sinais de SEO.

Argumentos

pagination objeto · opcional

Contém page e page_size.

business, location, tlds, platforms valores tipados · opcional

Use chaves de categoria exatas, arrays include/exclude e nomes de plataformas de leilão.

business_profile, seo, social, lifecycle, sort objetos tipados · opcional

O ciclo de vida aceita auction_end_after e auction_end_before como instantes RFC 3339.

{
  "pagination": {
    "page": 1,
    "page_size": 20
  },
  "platforms": [
    "sedo"
  ],
  "lifecycle": {
    "auction_end_before": "2026-09-30T00:00:00Z"
  }
}

Resultado

items contém registros de leilão com auction_end_at e platform quando disponíveis. A visibilidade do domínio segue o acesso ao inventário pago.

{
  "items": [
    {
      "domain_id": 12345,
      "status": "auction",
      "business_type": "Plumber",
      "business_type_key": "plumber",
      "review_count": 31,
      "country_code": "US",
      "city": "Austin",
      "tld": "com",
      "revealed": false,
      "social_data_status": "processed",
      "social_platforms": [],
      "social_profiles": [],
      "platform": "sedo",
      "auction_end_at": "2026-09-30T00:00:00Z"
    }
  ],
  "total": 1,
  "page": 1,
  "page_size": 20
}

search_pending_delete_domains Pesquisar domínios com exclusão pendenteLeitura

Pesquise domínios programados para cair por fonte, geografia, categoria de negócio, extensão, avaliações e sinais de SEO.

Argumentos

pagination objeto · opcional

Contém page e page_size.

business, location, tlds, platforms valores tipados · opcional

Use chaves de categoria exatas, arrays include/exclude e nomes de plataformas de origem.

business_profile, seo, social, lifecycle, sort objetos tipados · opcional

O ciclo de vida aceita scheduled_drop_after e scheduled_drop_before como instantes RFC 3339.

{
  "pagination": {
    "page": 1,
    "page_size": 20
  },
  "lifecycle": {
    "scheduled_drop_after": "2026-09-20T00:00:00Z"
  }
}

Resultado

items contém registros de exclusão pendente com scheduled_drop_at e plataforma de origem quando disponíveis. A visibilidade do domínio segue o acesso ao inventário pago.

{
  "items": [
    {
      "domain_id": 12345,
      "status": "dropping",
      "business_type": "Plumber",
      "business_type_key": "plumber",
      "review_count": 31,
      "country_code": "US",
      "city": "Austin",
      "tld": "com",
      "revealed": false,
      "social_data_status": "processed",
      "social_platforms": [],
      "social_profiles": [],
      "scheduled_drop_at": "2026-09-21T14:00:00Z"
    }
  ],
  "total": 1,
  "page": 1,
  "page_size": 20
}

list_business_types Descobrir tipos de negócioLeitura

Obtenha tipos de negócio canônicos antes de pesquisar para que uma página de resultados grande contenha apenas categorias relevantes.

Argumentos

inventory string · obrigatório

expired, auctions ou pending-delete. As contagens vêm apenas desse inventário.

country string · opcional

Código de país de duas letras, como US, usado para limitar as contagens.

{
  "inventory": "expired",
  "country": "US"
}

Resultado

Passe os valores business_type_key retornados para a ferramenta de pesquisa de ciclo de vida correspondente em business.type_keys para correspondência exata de qualquer um. O prefixo gcid não é necessário; business_type é apenas texto de exibição.

{
  "items": [
    {
      "business_type_key": "roofing_contractor",
      "business_type": "Roofing contractor",
      "count": 958
    },
    {
      "business_type_key": "gutter_service",
      "business_type": "Gutter service",
      "count": 45
    }
  ]
}

list_domain_tlds Descobrir extensões disponíveisLeitura

Obtenha contagens contextuais de extensões para um inventário de ciclo de vida, opcionalmente filtrado por país.

Argumentos

inventory string · obrigatório

expired, auctions ou pending-delete. As contagens vêm apenas desse inventário.

country string · opcional

Código de país de duas letras, como US, usado para limitar as contagens.

{
  "inventory": "expired",
  "country": "US"
}

Resultado

items contém tld e count para cada extensão no inventário e país selecionados. O sufixo não tem ponto inicial.

{
  "items": [
    {
      "tld": "com",
      "count": 120
    },
    {
      "tld": "co.uk",
      "count": 24
    }
  ]
}

list_revealed_domains Trabalhar com sua coleção reveladaLeitura

Pesquise domínios já revelados pela conta que possui a chave. Isso não revela nem cobra por novos domínios.

Argumentos

page inteiro · opcional

Começa em 1; omitido ou 0 usa a página padrão.

page_size inteiro · opcional

1–100 resultados; omitido ou 0 usa o padrão de 50.

filters objeto tipado · opcional

Usa os mesmos grupos tipados de categoria, localização, TLD, perfil de negócio, SEO e social da pesquisa de catálogo.

{
  "page": 1,
  "page_size": 20,
  "revealed_within": 168,
  "filters": {
    "location": {
      "countries": {
        "include": [
          "US"
        ]
      }
    }
  }
}

Resultado

items contém nomes de domínio, carimbos de data/hora de revelação, status e campos de pesquisa. reveal_id identifica o registro de revelação; domain_id identifica o recurso de inventário.

{
  "items": [
    {
      "reveal_id": "00000000-0000-4000-8000-000000000001",
      "domain_id": 12345,
      "domain": "example.com",
      "revealed_at": "2026-09-16T12:00:00Z",
      "status": "expired",
      "business_type": "Plumber",
      "business_type_key": "plumber",
      "review_count": 31,
      "country_code": "US",
      "city": "Austin"
    }
  ],
  "total": 1,
  "page": 1,
  "page_size": 20
}

get_domain_details Inspecionar um domínio acessívelLeitura

Leia um domínio que você revelou, ou uma listagem de leilão/exclusão disponível através da sua assinatura paga ativa. Saber um nome totalmente expirado não contorna o requisito de revelação.

Argumentos

domain_id inteiro · obrigatório

O domain_id positivo retornado por uma ferramenta de pesquisa de ciclo de vida ou list_revealed_domains.

{
  "domain_id": 12345
}

Resultado

Um único objeto de detalhes, não um array items. Este exemplo mostra campos selecionados. Os dados podem incluir identidade de negócio, localização, métricas de SEO, social_data, leilões e registration_links quando presentes. Dados opcionais ausentes não devem ser tratados como zero.

{
  "domain_id": 12345,
  "domain": "example.com",
  "revealed_at": "2026-09-16T12:00:00Z",
  "status": "expired",
  "business_type": "Plumber",
  "business_type_key": "plumber",
  "review_count": 31,
  "country_code": "US",
  "city": "Austin",
  "auctions": [],
  "social_data": {
    "status": "processed",
    "links": [],
    "misattributed_links": []
  }
}

reveal_domains Revelar domínios elegíveisEscrita

Revele um ou mais domínios dos resultados de pesquisa em uma única solicitação. Esta é a única ferramenta de escrita e cada revelação paga bem-sucedida pode consumir um crédito. Peça aprovação antes de chamá-la.

Argumentos

domain_ids inteiro[] · obrigatório

De um a 100 IDs de itens de catálogo positivos e únicos retornados por uma ferramenta de pesquisa de ciclo de vida. Não adivinhe IDs nem use UUIDs de registros revelados.

{
  "domain_ids": [
    12345,
    67890
  ]
}

Resultado

items preserva a ordem da solicitação e relata um resultado para cada ID, incluindo falhas em nível de item. credits_charged e credits_remaining resumem toda a solicitação. Uma revelação não é um registro ou compra de domínio.

{
  "items": [
    {
      "domain_id": 12345,
      "domain": "example.com",
      "outcome": "revealed",
      "credit_source": "subscription"
    },
    {
      "domain_id": 67890,
      "domain": "example.net",
      "outcome": "already_revealed"
    }
  ],
  "credits_charged": 1,
  "credits_remaining": 49
}

Valores de filtro e formato de resultado

Paginação, intervalos numéricos e IDs de revelação são números JSON; filtros booleanos são booleanos JSON. Os filtros usam objetos aninhados tipados, por exemplo { "business_profile": { "reviews": { "min": 10 } } }. Campos desconhecidos ou incompatíveis com o ciclo de vida são rejeitados.

Os resultados incluem structuredContent validado por esquema, além do mesmo JSON em content[0].text para clientes compatíveis. Exemplo:

{
  "content": [
    {
      "type": "text",
      "text": "{\"items\":[]}"
    }
  ],
  "structuredContent": {
    "items": []
  }
}

Verifique isError para falhas de ferramentas. Cada ferramenta publica esquemas de entrada e saída derivados da especificação OpenAPI.

Decida quando os créditos podem ser gastos

Exija aprovação do cliente para cada lote de revelação. O servidor aplica as permissões da chave, mas não pausa uma escrita permitida. Um prompt dizendo "pergunte primeiro" não é suficiente.

  • Nomes totalmente expirados: permanecem mascarados até serem revelados pela conta.
  • Inventário de leilão e exclusão: uma assinatura paga ativa mostra nomes e detalhes sem revelação.
  • Repetir uma revelação: um domínio já revelado pode retornar um erro. Após um tempo limite, verifique list_revealed_domains antes de tentar novamente.
  • Nenhuma operação de compra: revelar um nome não registra nem compra um domínio.

Solução de problemas

Verifique o log do cliente e o erro da ferramenta.

401 · Chave ausente, inválida ou revogada

Envie Authorization: Bearer com a chave completa em cada solicitação. Remova aspas ou espaços extras. Cookies não funcionam. Substitua chaves revogadas.

403 · Acesso de revelação ou inventário negado

Revelações precisam de uma chave de leitura e revelação. Nomes de leilão e exclusão pendente exigem uma assinatura paga ativa.

400 · Argumentos inválidos ou revelação rejeitada

Use números para paginação, intervalos e IDs de domínio; use os objetos de filtro aninhados tipados mostrados abaixo. Revelações também retornam 400 para falta de créditos ou domínio já revelado.

405 · Falha na conexão do navegador ou SSE

Um GET do navegador não é um teste de conexão. Streams de eventos GET e sessões DELETE não são fornecidos. Use HTTP Streamable, não SSE legado.

Loop de login OAuth ou nenhum lugar para inserir um cabeçalho

Isso usa chaves de API, não um fluxo de login OAuth. Seu cliente deve suportar um cabeçalho Authorization personalizado.

403 · Solicitação de origem do navegador bloqueada

Solicitações de navegador entre origens são bloqueadas. Use um cliente MCP nativo ou de backend.

Tempo limite, resposta grande ou erro de servidor

Reduza o tamanho da página ou restrinja os filtros. As respostas são limitadas a 64 MiB. Após um tempo limite de revelação, verifique os domínios revelados antes de tentar novamente.

O serviço é sem estado e não emite Mcp-Session-Id.

Mantenha sua chave e pesquisa privadas

  • Use uma chave somente leitura separada por cliente, a menos que revelações sejam necessárias.
  • Use um armazenamento secreto ou variável de ambiente. Nunca envie uma chave nem a coloque em uma URL ou prompt.
  • Os resultados das ferramentas são compartilhados com seu cliente de IA. Revise a política de dados dele.
  • Revogue uma chave não utilizada ou exposta em Chaves de API. Clientes existentes que a usam pararão de funcionar.