Yellow Pages MCP Server

Búsqueda de negocios locales de Yellow Pages y listados completos de negocios, como JSON estructurado.

Documentación

Servidor MCP de Yellow Pages

Un servidor de Model Context Protocol (MCP) alojado que brinda a Claude, Cursor, Windsurf y cualquier otro cliente MCP dos herramientas de solo lectura de Yellow Pages. Busque negocios locales por palabra clave y ubicación, luego lea un listado completo con su teléfono, horarios, servicios y fotos, todo como JSON estructurado, sin necesidad de alojar nada.

Lee listados públicos de Yellow Pages que un visitante sin sesión puede ver, en yellowpages.com y yellowpages.ca.

1,000 créditos gratis cada mes, sin tarjeta requerida, lo que equivale a 100 llamadas a Yellow Pages a la tarifa de 10 créditos.

https://mcp.hasdata.com/api/mcp?apis=yellowpages

Glama score tool contract MCP Tools npm PyPI License

Contenido

Lo que necesitas

Un cliente MCP y una clave de API de HasData desde el panel de control, gratis de crear sin tarjeta, y el nivel gratuito cubre aproximadamente 100 llamadas al mes a la tarifa de 10 créditos. Este es un servidor remoto, por lo que la ruta más simple es una URL y un encabezado x-api-key, sin contenedor que ejecutar. Un cliente que solo habla stdio lo alcanza a través de un lanzador ligero, publicado como @hasdata/yellowpages-mcp en npm y hasdata-yellowpages-mcp en PyPI, como se muestra a continuación.

Inicio rápido

La URL del servidor es la misma para cada cliente. Lo ejecutamos de forma práctica en Claude Code y Claude Desktop. Los otros bloques siguen el formato documentado de cada cliente para un servidor remoto.

CampoValor
URLhttps://mcp.hasdata.com/api/mcp?apis=yellowpages
TransporteHTTP, transmisible
Encabezado de autenticaciónx-api-key: HASDATA_API_KEY

Los clientes con soporte OAuth pueden agregar la misma URL como conector e iniciar sesión sin poner una clave en un archivo de configuración.

Claude Code
claude mcp add --transport http yellowpages "https://mcp.hasdata.com/api/mcp?apis=yellowpages" \
  --header "x-api-key: HASDATA_API_KEY"
Claude Desktop

Configuración, luego Conectores, luego Agregar conector personalizado, luego pegue https://mcp.hasdata.com/api/mcp?apis=yellowpages e inicie sesión.

Para la ruta de archivo de configuración, Claude Desktop carga solo servidores locales (stdio), por lo que alcanza un servidor remoto a través de un lanzador stdio. El paquete @hasdata/yellowpages-mcp es ese lanzador, y lee la clave del entorno. Agregue esto a claude_desktop_config.json:

{
  "mcpServers": {
    "yellowpages": {
      "command": "npx",
      "args": ["-y", "@hasdata/yellowpages-mcp"],
      "env": { "HASDATA_API_KEY": "YOUR_KEY" }
    }
  }
}

Para Python en lugar de Node, cambie el lanzador por el paquete de PyPI, que uvx ejecuta sin instalación manual:

{
  "mcpServers": {
    "yellowpages": {
      "command": "uvx",
      "args": ["hasdata-yellowpages-mcp"],
      "env": { "HASDATA_API_KEY": "YOUR_KEY" }
    }
  }
}
Cursor

~/.cursor/mcp.json para cada proyecto, o .cursor/mcp.json para uno solo:

{
  "mcpServers": {
    "yellowpages": {
      "url": "https://mcp.hasdata.com/api/mcp?apis=yellowpages",
      "headers": { "x-api-key": "HASDATA_API_KEY" }
    }
  }
}
Windsurf

~/.codeium/windsurf/mcp_config.json. Windsurf llama al campo serverUrl, no url:

{
  "mcpServers": {
    "yellowpages": {
      "serverUrl": "https://mcp.hasdata.com/api/mcp?apis=yellowpages",
      "headers": { "x-api-key": "HASDATA_API_KEY" }
    }
  }
}
VS Code

.vscode/mcp.json en el espacio de trabajo:

{
  "servers": {
    "yellowpages": {
      "type": "http",
      "url": "https://mcp.hasdata.com/api/mcp?apis=yellowpages",
      "headers": { "x-api-key": "HASDATA_API_KEY" }
    }
  }
}

Ejemplos de indicaciones

Cada una de estas aterriza en una herramienta, o en dos en secuencia cuando la segunda necesita la URL que la primera devuelve.

  • Encuentra plomeros en Austin, TX y clasifícalos por calificación frente al número de reseñas.
  • Lista cada contratista de HVAC en este código postal con número de teléfono y horarios.
  • ¿Cuáles de estos negocios han estado operando por más de 20 años?
  • Lee este listado de Yellow Pages y dime qué marcas reparan.
  • Trae las páginas 2 y 3 de techadores en Austin y combínalas en una sola lista.
  • Ordena dentistas en esta ciudad por calificación promedio en lugar de por relevancia.

Una indicación que nombra un nicho y una ciudad va a la herramienta de búsqueda. Leer servicios, marcas y métodos de pago requiere una segunda llamada por negocio, por lo que una lista de prospectos quiere la herramienta de búsqueda y un pase de enriquecimiento quiere la herramienta de lugar.

Herramientas

Dos herramientas, 10 créditos por llamada exitosa.

Obtener resultados de búsqueda de Yellow Pages

hasdata_yellowpages_search_getSearchResults

Una página de negocios para una palabra clave en un lugar, 30 por página.

ParámetroTipoRequeridoNotas
keywordstringQué buscar, como plumber
locationstringDónde buscar, como Austin, TX
sortstringdefault, distance, averageRating o name
domainstringwww.yellowpages.com o www.yellowpages.ca
pagenumberPágina de resultados, comenzando en 1

Devuelve searchInformation con la consulta repetida y totalResults, un array de organicResults, y pagination con currentPage, totalPages, perPage, nextPageUrl y otherPageUrls.

Casi todos los campos en un resultado son opcionales, porque Yellow Pages muestra lo que cada negocio pagó o completó. Entre los 30 resultados de la muestra, title, phone, url, categories, country y position llegaron en todos, address en 22, rating y reviews en 11, y contactUs en 5. Lea de forma defensiva en lugar de asumir una forma.

{
  "position": 2,
  "title": "Clarke Kent Plumbing",
  "url": "https://www.yellowpages.com/austin-tx/mip/clarke-kent-plumbing-10674347?lid=1002194068759",
  "phone": "(512) 766-0970",
  "address": "1408 W Ben White Blvd",
  "city": "Austin",
  "region": "TX",
  "zipcode": "78704",
  "country": "US",
  "website": "http://www.clarkekentplumbing.com",
  "directions": "https://www.yellowpages.com/listings/1002194068759/directions",
  "categories": ["Plumbers", "Plumbing-Drain & Sewer Cleaning"],
  "rating": 2.87,
  "reviews": 15,
  "workingHours": ["Mo-Fr 09:00-17:00"],
  "openState": "open now",
  "badges": ["40 Years in Business", "1 Year with Yellow Pages"]
}

Obtener detalles de lugar de Yellow Pages

hasdata_yellowpages_place_getPlaceDetails

Un listado completo, por su URL de Yellow Pages.

ParámetroTipoRequeridoNotas
urlstringLa URL del listado, como la devuelve la herramienta de búsqueda

Devuelve cuatro bloques en lugar de un objeto plano.

overview repite el nombre, ubicación, teléfono, horarios, insignias y sitio web, y agrega paymentAccepted y un array de breadcrumbs que muestra dónde se ubica el listado en la taxonomía de Yellow Pages. ratings contiene la calificación de estrellas. details contiene el texto extenso que escribió el negocio. images es un array de URLs de fotos.

El bloque details es donde reside el valor de enriquecimiento, y llega como texto unido por comas en lugar de arrays. generalInfo es la descripción del negocio, servicesProducts la lista de servicios, brands las marcas que manejan, paymentMethod los tipos de pago y categories la lista completa de categorías como una sola cadena.

{
  "overview": {
    "title": "ARS Rescue Rooter",
    "phone": "(833) 947-9225",
    "city": "Austin",
    "region": "TX",
    "zipcode": "78754",
    "workingHours": ["Mo-Su"],
    "openState": "Open 24 hours",
    "paymentAccepted": "visa, amex, master card",
    "badges": ["1 Year with Yellow Pages"],
    "breadcrumbs": ["TX", "Austin", "Building Contractors", "Plumbers"]
  },
  "ratings": { "rating": 3.5 },
  "details": {
    "generalInfo": "ARS/Rescue Rooter has a proven track record of providing reliable, long-lasting repair services...",
    "servicesProducts": "Air Conditioner Repair and Replacement, Air Duct Repair and Replacement, Air Filter Installation...",
    "brands": "Goodman, Mitsubishi, Bosch, Diakin, Bradford White, April Aire Indoor Air Quality",
    "paymentMethod": "visa, amex, master card"
  },
  "images": ["https://i4.ypcdn.com/blob/ce73451958465ab47dd7be41922973a98bc847af_640.jpg"]
}

Errores y rutas de fallo

Planifique para estos en lugar de asumir un camino feliz.

Para un conteo de reseñas, lea el resultado de búsqueda en lugar del detalle del lugar. En la herramienta de búsqueda, rating y reviews son lo que parecen, como 2.87 y 15. En la herramienta de lugar, ratings.reviews regresa igual a ratings.rating en cada listado que verificamos, por lo que no lleva ningún conteo. Tome el número del resultado de búsqueda y enriquezca desde allí.

ratings puede estar ausente de una respuesta de lugar por completo. Uno de los cuatro listados que extrajimos no tenía ningún bloque en absoluto en lugar de uno vacío.

Los campos de details son cadenas unidas por comas, y categories cambia de tipo entre las herramientas. En un resultado de búsqueda, categories es un array. En details es una sola cadena. Divida por la coma si necesita una lista, y espere que algún nombre de categoría contenga una.

website a veces apunta de vuelta a Yellow Pages. Varios listados llevan una URL de seguimiento de yellowpages.com en el campo donde esperaría el sitio propio del negocio. Verifique el host antes de seguirlo o almacenarlo.

Los años en el negocio son una insignia, no un campo. badges mezcla dos cosas diferentes: cuánto tiempo ha operado el negocio, como "40 Years in Business", y cuánto tiempo ha pagado a Yellow Pages, como "11 Years with Yellow Pages". Lea el texto en lugar del primer número.

Una dirección de calle no está garantizada. address contenía la línea de calle en 22 de 30 resultados, y city, region y zipcode llegan como campos separados junto a ella. Construya la dirección a partir de las partes que tenga.

openState es el estado en el momento de la llamada. Dice closed o Open 24 hours para el momento en que se ejecutó la solicitud, por lo que es una instantánea en lugar de una propiedad del negocio. workingHours es el campo duradero.

La paginación es por URL, y una consulta puede extenderse. pagination.totalPages alcanzó 17 para una ciudad y una palabra clave, a 30 resultados por página. El costo escala con las páginas, así que estreche la palabra clave antes de recorrerlas todas.

Los resultados que llevan datos también llevan un requestMetadata.id que vale la pena citar en soporte.

Precios, nivel gratuito y límites

Cada herramienta de Yellow Pages cuesta 10 créditos por llamada exitosa. El tamaño de la respuesta no cambia el precio, por lo que una página de 30 negocios cuesta lo mismo que un detalle de listado.

El nivel gratuito es 1,000 créditos cada mes sin tarjeta, lo que equivale a 100 llamadas a Yellow Pages a la tarifa base. Se renueva con el ciclo de facturación, por lo que un agente de bajo volumen funciona en el nivel gratuito indefinidamente.

Los planes de pago comienzan en $49 al mes por 200,000 créditos, lo que equivale a 20,000 llamadas. El precio unitario baja con el volumen, desde $2.45 por 1,000 llamadas en el plan de entrada hasta $1.00 en Business, $0.84 en Growth y $0.74 en los planes de alto volumen más grandes.

Su plan también establece la concurrencia. El nivel gratuito permite 1 solicitud a la vez, Startup 15, Business 30, Growth 50, y los planes de alto volumen van de 200 a 1,500. Reintente con el 429 con un retroceso en cualquier cosa desatendida, porque un agente que enriquece una página de negocios alcanzará el techo antes que usted.

Una solicitud que regresa con un código distinto de 200 no se factura. Una llamada exitosa que no encuentra nada sigue siendo una llamada.

Selección de herramientas

Comience desde lo que la indicación le da. Un nicho y una ciudad van a la herramienta de búsqueda, y una URL de Yellow Pages va directamente a la herramienta de lugar.

Luego evalúe el enriquecimiento. El resultado de búsqueda ya lleva nombre, teléfono, dirección, categorías, horarios, insignias y, donde Yellow Pages los muestra, la calificación y el conteo de reseñas. Eso cubre una lista de prospectos, un conteo de cobertura o una comparación de calificaciones en una llamada. La herramienta de lugar agrega la descripción, la lista de servicios, las marcas y las fotos, y cuesta una llamada por negocio, por lo que 30 negocios enriquecidos cuestan 300 créditos frente a los 10 que costó la página.

Ordene del lado del servidor cuando la pregunta sea sobre el orden. sort: averageRating es un parámetro, donde extraer varias páginas para ordenar localmente son varias llamadas.

Cómo se compara

Yellow Pages no tiene una API pública, por lo que las alternativas realistas son las dos grandes APIs de datos locales.

API de Google PlacesAPI de Yelp FusionEste servidor
ElegibilidadUn proyecto facturado de Google CloudUna aplicación de desarrollador aprobadaUna clave de API
Servicios y marcasNo devueltosNo devueltosEl bloque details
Métodos de pagoNo devueltosParcialmente, como atributosComo están escritos
Años en el negocioNo devueltosNo devueltosEn badges
FotosA través de una llamada facturada separadaIncluidasUn array de URLs
CanadáCubiertoCubiertoyellowpages.ca
CoberturaLa más ampliaEnfocada al consumidorOficios y servicios

La fila que lo decide es lo que un listado dice sobre sí mismo. Google y Yelp devuelven un registro estructurado, y Yellow Pages devuelve el texto que un contratista escribió sobre sus propios servicios, marcas y términos de pago, que es la parte sobre la que se construye una lista de prospectos de oficios. Para cobertura, precisión de horarios y categorías de consumidor, Google Places es la fuente más sólida.

Preguntas frecuentes

¿Hay un servidor MCP oficial de Yellow Pages?

Yellow Pages no publica una, y tampoco publica una API pública. Esta es mantenida por HasData y lee los listados públicos de Yellow Pages.

¿Qué es un servidor MCP de Yellow Pages?

Un servidor MCP expone herramientas que un cliente de IA puede llamar. Este convierte las búsquedas y listados de Yellow Pages en JSON sobre el que un agente puede razonar, sin necesidad de un navegador ni una librería de scraping en tu stack.

¿Necesito una cuenta de Yellow Pages?

No. La única credencial es tu clave de HasData.

¿Qué países están cubiertos?

Estados Unidos en www.yellowpages.com y Canadá en www.yellowpages.ca. Pasa domain para cambiar.

¿Por qué falta un campo en algunos resultados?

Porque Yellow Pages muestra lo que cada negocio completó o pagó. Una calificación apareció en 11 de 30 resultados en nuestra muestra y una dirección postal en 22. Trata todo excepto el nombre, teléfono, URL y categorías como opcional.

¿Cómo obtengo un conteo de reseñas?

Del resultado de búsqueda, donde reviews es un conteo. El ratings.reviews de la herramienta de lugar refleja la calificación en lugar de contar reseñas, por lo que no es el campo para eso.

¿Puedo usar esto junto con otras APIs de HasData?

Sí. Una clave cubre todo, y un endpoint las sirve todas a través del parámetro apis. Apunta un cliente a ?apis=yellowpages,google_maps para obtener ambos conjuntos de herramientas en una sola conexión, o a mcp.hasdata.com/api/mcp para el catálogo completo.

¿HasData está afiliado con Yellow Pages?

No. HasData es un servicio independiente y no está afiliado, respaldado ni patrocinado por Thryv ni por la marca Yellow Pages. Yellow Pages es una marca comercial de su respectivo propietario. Las herramientas funcionan solo con datos disponibles públicamente, y eres responsable de usar los resultados de acuerdo con los términos del sitio y la ley que te aplica.

Cumplimiento y datos personales

Estos listados son registros comerciales, y el uso obvio es una lista de prospectos. Ahí es donde se necesita cuidado, porque llamar y enviar mensajes de texto a los números de teléfono que recopilas está regulado por separado de su recopilación. En EE. UU., la TCPA regula las llamadas y mensajes a esos números, incluso a negocios en varios aspectos, y las reglas de telemarketing de la FTC se aplican además. El listado de un trabajador autónomo también puede incluir su propio nombre y número móvil, lo que lo convierte en datos personales además de un registro comercial. Recopilar la lista es la parte fácil, así que verifica qué se te permite hacer con ella antes de construir la divulgación.

Enlaces de HasData

Otros servidores MCP de HasData: Google Maps, Yelp, Google Search, Google Trends, Google Flights, DuckDuckGo, YouTube, TikTok, Instagram, Amazon, Walmart, Shopify, Zillow, Redfin, Airbnb, Booking.com, Indeed, Glassdoor.

Desarrollo

El lanzador es un puente stdio delgado hacia el servidor remoto, por lo que no hay nada que compilar.

npm install
HASDATA_API_KEY=your_key_here npm test

Las pruebas en test/ verifican el contrato de las herramientas, la parte que puede romperse sin un commit aquí. Comprueban que ?apis=yellowpages devuelve el número esperado de herramientas, que ningún nombre cambió, que cada herramienta aún declara sus parámetros requeridos y lleva una descripción, que sort aún ofrece los cuatro pedidos, y que la clave en uso es realmente aceptada. Esa última verificación llama a una herramienta de verdad y cuesta 10 créditos, que es el precio de un canario que puede fallar por la razón correcta.

Una prueba verifica que una búsqueda en vivo aún lleva un conteo real de reseñas en los resultados que lo tienen. El README envía a los lectores a la herramienta de búsqueda para ese número precisamente porque la herramienta de lugar no lo proporciona, y el consejo solo se mantiene mientras el campo exista.

El conjunto de pruebas del contrato también se ejecuta semanalmente en un horario, porque la lista de herramientas ascendentes puede cambiar sin que nadie toque este repositorio.

Contribuciones

Una tabla de herramientas, una muestra de respuesta o un comportamiento documentado que no coincida con la realidad merece un issue. Hay una plantilla exactamente para eso. Las solicitudes de extracción son bienvenidas para lo mismo y para cualquier cosa en el lanzador.

Licencia

MIT, ver LICENSE.