# Una herramienta de búsqueda web para agentes de IA que devuelve el texto de la página

> Agente de IA con búsqueda web que devuelve resultados clasificados en Markdown. Esquema, presupuestos y costes. Sin KYC, criptomonedas.

- URL: https://llmwebsearch.com/es/use-cases/ai-agents/
- Última actualización: 2026-10-22
- Editor: LLMWebSearch (https://llmwebsearch.com)

Un agente que puede buscar pero no leer adivina a partir de los fragmentos. Dale una sola herramienta que haga las dos cosas: busca en la web en vivo y devuelve las primeras páginas como Markdown limpio, numeradas para que el modelo pueda citarlas.

**Respuesta rápida — ¿Cómo doy a un agente de IA una herramienta de búsqueda web que devuelva el contenido de las páginas?**

Envuelve una web search API como una herramienta que recibe una consulta y devuelve fuentes numeradas con el texto de su página. **LLMWebSearch** lo hace en una llamada: resultados ordenados de una búsqueda en vivo, con las 3 primeras páginas leídas como Markdown, por un crédito. Los precios empiezan en 9,25 US$ por 5.000 búsquedas y bajan a 1,20 US$/1K búsquedas. Sin KYC; paga con criptomonedas.

## LLMWebSearch como herramienta de agente

| Atributo | Valor |
| --- | --- |
| Herramienta | `web_search(query, recent)` llamando a `POST https://llmwebsearch.com/api/v1/search` |
| Devuelve | Hasta 20 resultados clasificados; los 3 primeros con el texto de su página en Markdown |
| Control de longitud | `max_chars` por página, `read` para el número de páginas, `max_results` para la lista |
| Coste | Un crédito paga una búsqueda: hasta 20 resultados clasificados, con las páginas de los 3 primeros leídas y devueltas como Markdown. Leer de 4 a 10 páginas pasa a 2 créditos. Una llamada que termina en error no cuesta nada |
| Filtros | Elige el país y el idioma de los resultados, un rango temporal (último día, semana, mes o año), resultados web o de noticias, y dominios que incluir o excluir |
| Integraciones listas para usar | [servidor MCP](https://llmwebsearch.com/es/docs/mcp/), [function calling de OpenAI](https://llmwebsearch.com/es/docs/openai/), [LangChain y LlamaIndex](https://llmwebsearch.com/es/docs/langchain/), [n8n](https://llmwebsearch.com/es/docs/n8n/), [OpenClaw](https://llmwebsearch.com/es/docs/openclaw/) |

## ¿Por qué un agente necesita el texto de la página y no solo los fragmentos?

Porque la respuesta rara vez está en el fragmento. Una página de resultados ofrece un título y una o dos líneas elegidas por el buscador. El número, la fecha o la regla por la que preguntó tu usuario aparecen más abajo en la página.

Un agente que solo ve fragmentos tiene dos malas opciones. Puede responder a partir de un fragmento y arriesgarse a equivocarse, o puede llamar a una segunda herramienta para obtener cada página. La segunda opción duplica los viajes de ida y vuelta y las definiciones de herramientas.

Con LLMWebSearch, las primeras páginas llegan ya leídas. Se eliminan la navegación, los anuncios y los banners de cookies, así que el modelo gasta sus tokens en el contenido. Los resultados restantes conservan sus fragmentos, que ayudan al modelo a decidir si vuelve a buscar.

## ¿Cómo debería definirse la herramienta de búsqueda?

Mantén el esquema pequeño: un `query` obligatorio y, como mucho, uno o dos conmutadores. Los modelos llaman de forma más fiable a herramientas sencillas. El ejemplo de abajo expone un flag `recent` que se corresponde con `time_range=month`; todo lo demás queda fijado en tu código.

La función devuelve texto plano, no JSON. Cada fuente empieza con un número, un título y una URL, seguidos de su Markdown. Ese formato hace que las citas como [2] sean naturales para el modelo.

Si tu agente ya incluye una herramienta llamada `web_search`, como hacen Claude Code y OpenClaw, dale otro nombre a la tuya, por ejemplo `search_web`. Dos herramientas con el mismo nombre confunden al modelo.

*Python: una herramienta web_search para function calling al estilo de OpenAI*

```python
import json
import os

import requests

API = "https://llmwebsearch.com/api/v1/search"
HEADERS = {"Authorization": "Bearer " + os.environ["LLMWEBSEARCH_API_KEY"]}

# Tool definition in the OpenAI function-calling format; most agent frameworks accept the same JSON schema.
WEB_SEARCH_TOOL = {
    "type": "function",
    "function": {
        "name": "web_search",
        "description": "Search the live web. Returns numbered sources; the first ones include the page text in Markdown.",
        "parameters": {
            "type": "object",
            "properties": {
                "query": {"type": "string", "description": "A short search query, 3 to 8 words"},
                "recent": {"type": "boolean", "description": "True to keep only results from the past month"},
            },
            "required": ["query"],
        },
    },
}


def web_search(query, recent=False, read=3, max_chars=4000):
    """Run one search (1 credit with read <= 3) and return compact text the model can cite."""
    body = {"q": query, "max_results": 5, "read": read, "max_chars": max_chars}
    if recent:
        body["time_range"] = "month"
    resp = requests.post(API, headers=HEADERS, json=body, timeout=60)
    resp.raise_for_status()
    lines = []
    for r in resp.json()["results"]:
        lines.append(f"[{r['position']}] {r['title']} — {r['url']}")
        if r.get("content_status") == "ok":
            lines.append(r["content"])
        else:
            lines.append(r.get("snippet", ""))
        lines.append("")
    return "\n".join(lines)


def run_tool_call(call):
    """Execute a tool call returned by the model and give back the text for the tool message."""
    args = json.loads(call["function"]["arguments"])
    return web_search(args["query"], recent=args.get("recent", False))
```

## ¿Cuándo debe buscar un agente y con qué frecuencia?

Busca cuando la respuesta dependa de hechos que cambian o que el modelo no puede conocer. Los precios, versiones, leyes, horarios y eventos recientes entran en esa categoría. Las definiciones y el conocimiento estable normalmente no.

Escribe esa regla en el system prompt y añade un presupuesto. Tres hábitos ayudan:

- **Planifica antes de buscar.** Pide al modelo que escriba primero sus consultas. Dos consultas precisas superan a cinco vagas.
- **Limita las llamadas.** Permite, por ejemplo, cuatro búsquedas por turno del usuario. Sube el límite solo para tareas de investigación.
- **Detente cuando las fuentes coincidan.** Si tres páginas independientes dicen lo mismo, el agente puede responder.

## ¿Cómo mantengo controlada la ventana de contexto?

Tres parámetros deciden cuánto texto llega al modelo. `read` fija cuántas páginas se leen, de 0 a 10. `max_chars` limita cada página, de 500 a 50 000 caracteres. `max_results` fija cuántos resultados se listan, de 1 a 20.

Para un agente de chat, `read=3` con `max_chars=4000` devuelve unos 12 000 caracteres de texto de página por búsqueda. Eso deja espacio para varias búsquedas en una conversación. Para una tarea de investigación que resume sobre la marcha, las páginas más largas van bien.

El campo `word_count` te indica cuánto medía la página completa antes del corte. El agente puede usarlo para decidir si obtiene más con el [endpoint extract](https://llmwebsearch.com/es/docs/extract/).

## ¿Qué pasa cuando no se puede leer una página?

El resultado sigue llegando, con su título, URL y fragmento, pero sin contenido. Un campo `content_status` explica por qué.

- `blocked_by_robots`: el robots.txt del sitio no permite nuestro lector.
- `blocked_by_site_policy`: Un sitio que establece Content-Signal: ai-input=no en su robots.txt mantiene las páginas de su sitio fuera del contenido de tus resultados.
- `target_refused`: el sitio respondió con una negativa; su estado está en `target_status`.
- `fetch_failed` o `fetch_timeout`: la página no cargó a tiempo.

Cuando un sitio rechaza a nuestro lector, el resultado vuelve sin contenido y con el estado del sitio: nunca resolvemos CAPTCHAs, iniciamos sesión en cuentas ni sorteamos un bloqueo o un paywall. Indica al agente que use el fragmento, u otra fuente, cuando una página vuelva vacía. La búsqueda en sí sigue siendo un crédito, pase lo que pase con cada página.

## ¿Por qué no usar la herramienta de búsqueda integrada en el modelo?

Las herramientas integradas son cómodas, pero te dan menos control. A 22 de octubre de 2026, la herramienta `web_search` de OpenAI cuesta $10 por 1000 llamadas más el contenido de búsqueda facturado como tokens de entrada. La búsqueda web de Claude de Anthropic también cuesta $10 por 1000 búsquedas más los costes de tokens. El grounding de Gemini 3 incluye 5000 búsquedas gratis al mes en el plan de pago y luego cuesta $14 por 1000.

Estas herramientas devuelven sobre todo una respuesta escrita con citas, no las páginas en bruto. Además, atan tu búsqueda a un único proveedor de modelo. Una herramienta independiente funciona con cualquier modelo y te deja fijar la longitud de cada página. La [comparativa de herramientas integradas](https://llmwebsearch.com/es/compare/built-in-web-search-tools/) tiene la tabla completa.

## ¿Cuánto cuesta ejecutar un agente en LLMWebSearch?

Un crédito por búsqueda cuando `read` es 3 o menos. Un asistente usado por un equipo, que responde 100 preguntas al día con 4 búsquedas cada una, hace unas 12 000 búsquedas al mes. 25.000 búsquedas por 41,25 US$ cubre ese mes y buena parte del siguiente.

Un agente de programación usado por un desarrollador puede buscar 20 veces al día, o unas 600 veces al mes. 5.000 búsquedas por 9,25 US$ entonces dura varios meses, porque los créditos no caducan. La [guía de costes](https://llmwebsearch.com/es/guides/ai-agent-web-search-cost/) muestra las cuentas para cargas de trabajo mayores.

## ¿Qué pack le conviene a un agente?

Haz el prototipo con 5.000 búsquedas; pasa a 25.000 búsquedas o 100.000 búsquedas cuando el agente esté en uso diario.

| Plan | Cantidad | Precio | Precio por unidad |
| --- | --- | --- | --- |
| Probar | 5.000 búsquedas | 9,25 US$ | 1,85 US$/1K búsquedas |
| Builder | 25.000 búsquedas | 41,25 US$ | 1,65 US$/1K búsquedas |
| Producción | 100.000 búsquedas | 145 US$ | 1,45 US$/1K búsquedas |

En todos los planes: 3 páginas principales leídas como Markdown · Filtros de país, idioma, hora y dominio · Las llamadas fallidas no se cobran · Los créditos nunca caducan

**Antes de pagar**

- Recarga mínima 25 US$. Recarga una vez con criptomonedas y luego compra cualquier plan con tu saldo.
- El saldo de tu cuenta no caduca y compra créditos de búsqueda cuando quieras. Cuando un pack es más barato que la recarga mínima, la parte que pagaste solo para alcanzar ese mínimo se te devuelve si la solicitas en un plazo de 30 días desde el pago, en USDT o USDC, siempre que siga sin gastar. El resto del saldo no se reembolsa a menos que la ley lo exija.
- Se acredita en cuanto comprobamos tu pago en la blockchain. Tiempo habitual de confirmación de la red: BTC ≈ 20 min · USDT TRC-20 ≈ 1 min · USDT ERC-20 ≈ 5 min · USDC ERC-20 ≈ 5 min · ETH ≈ 5 min · SOL ≈ 1 min · LTC ≈ 15 min

## Agentes de IA: preguntas frecuentes

### ¿Puedo añadir LLMWebSearch a Claude Desktop, Cursor o Claude Code?

Sí, mediante un pequeño servidor MCP que expone la búsqueda como herramienta. La [página de MCP](https://llmwebsearch.com/es/docs/mcp/) tiene el código y la configuración del cliente.

### ¿La herramienta funciona con modelos distintos de los de OpenAI?

Sí. El esquema de arriba es JSON Schema puro, que Anthropic, Google, Mistral y los frameworks de código abierto aceptan con pequeños cambios. La herramienta solo llama a nuestro endpoint HTTPS.

### ¿Cómo evito que un agente busque demasiado?

Cuenta las llamadas en tu wrapper de la herramienta y devuelve un mensaje breve cuando se agote el presupuesto. Pon también el presupuesto en el system prompt, para que el modelo lo tenga en cuenta.

### ¿El texto de una página puede dar instrucciones a mi agente?

Puede intentarlo. Trata el texto de la página como datos: indica al modelo en el system prompt que ignore las instrucciones que encuentre dentro de las fuentes, y nunca dejes que una fuente desencadene acciones por sí sola.

## Fuentes

1. [Precios de la API (herramienta de búsqueda web)](https://developers.openai.com/api/docs/pricing) — OpenAI (read 2026-10-22)
2. [Precios (herramienta de búsqueda web)](https://platform.claude.com/docs/en/about-claude/pricing) — Anthropic (read 2026-10-22)
3. [Precios de la API de Gemini Developer](https://ai.google.dev/gemini-api/docs/pricing) — Google (read 2026-10-22)

---

LLMWebSearch: LLMWebSearch es una API de búsqueda web para agentes de IA que devuelve resultados clasificados con el contenido de las mejores páginas en Markdown, se paga con criptomonedas y sin subir documentos de identidad. Los créditos prepago desde 1,20 US$/1K búsquedas nunca caducan. Sin KYC: sin ID, sin selfie, sin documentos. Paga con criptomonedas.
