Bez KYC — bez dowodu, bez selfie, bez dokumentów. Płać kryptowalutą: BTC, USDT, USDC, ETH, SOL, LTC
Język: Polski
Pobierz klucz API

Dokumentacja · MCP · claude mcp add sprawdzone 22 października 2026

Serwer MCP wyszukiwania webowego dla Claude Code, Claude Desktop, Cursor i innych klientów MCP

Daj dowolnemu klientowi MCP dwa narzędzia: search_web, które zwraca uszeregowane źródła z już odczytanymi najlepszymi stronami, oraz read_urls, które odczytuje linki, które model już ma. Serwer to jeden plik Python uruchamiany na Twojej maszynie, z Twoim kluczem w jego środowisku.

Ostatnia aktualizacja: · 5 min czytania

Szybka odpowiedź

Jak dodać serwer MCP wyszukiwania webowego do Claude Code lub Claude Desktop?

Zapisz krótki serwer Python z tej strony, który udostępnia narzędzia search_web i read_urls wywołujące LLMWebSearch, następnie zarejestruj go przez claude mcp add lub w claude_desktop_config.json, z Twoim kluczem w env. Model może wtedy przeszukiwać żywy web i odczytywać najlepsze strony jako Markdown. Wyszukiwanie kosztuje 1 kredyt, od 1,20 USD/1K wyszukiwań zgodnie ze stanem na październik 2026. Bez KYC; płatność kryptowalutą.

Serwer MCP w skrócie

JęzykPython 3.10+, z pakietami mcp i httpx
Transportstdio: klient uruchamia serwer jako proces lokalny
Narzędzie 1search_web(query, max_results=5, read=3) → numerowane źródła z URL-ami i tekstem strony
Narzędzie 2read_urls(urls) → główna treść od 1 do 20 znanych stron
NazwyNie web_search ani web_fetch: Claude Code i OpenClaw mają już narzędzia o tych nazwach
KluczOdczyt z LLMWEBSEARCH_API_KEY w środowisku serwera
RozliczanieJeden kredyt opłaca jedno wyszukiwanie: do 20 wyników z rankingiem, przy czym strony z pierwszych 3 są odczytywane i zwracane jako Markdown. Odczyt od 4 do 10 stron to 2 kredyty. Wywołanie zakończone błędem nic nie kosztuje. Odczyt stron, których adresy URL już masz, kosztuje 1 kredyt za każdą rozpoczętą grupę 3 stron zwróconych z treścią, do 20 adresów URL na wywołanie; adresy URL odrzucone lub nieudane nie są liczone

Dlaczego narzędzia nazywają się search_web i read_urls?

Ponieważ dwa narzędzia o tej samej nazwie mylą klienta i model. Claude Code i OpenClaw mają wbudowane narzędzia o nazwach web_search i web_fetch. Odmienne nazwy z jasnymi opisami pozwalają modelowi świadomie wybrać nasze narzędzia, a Tobie odróżnić wywołania w logach.

Oba narzędzia zwracają tekst, nie surowy JSON. Każde źródło zaczyna się od numeru, tytułu i URL-a, więc model może zacytować [1] lub [2], a czytelnik może sprawdzić stronę.

llmwebsearch_mcp.py
import os

import httpx
from mcp.server.fastmcp import FastMCP

BASE = "https://llmwebsearch.com/api/v1"
HEADERS = {"Authorization": "Bearer " + os.environ["LLMWEBSEARCH_API_KEY"]}
mcp = FastMCP("llmwebsearch")


def _call(path: str, body: dict) -> dict:
    resp = httpx.post(BASE + path, json=body, headers=HEADERS, timeout=90)
    data = resp.json()
    if resp.status_code != 200:
        err = data.get("error", {})
        raise RuntimeError(err.get("code", str(resp.status_code)) + ": " + err.get("message", ""))
    return data


def _page(n: int, item: dict) -> str:
    head = f"[{n}] {item.get('title') or item['url']}\n{item['url']}\n"
    if item.get("content_status") == "ok":
        return head + item["content"]
    return head + "(not read: " + item.get("content_status", "unknown") + ") " + item.get("snippet", "")


@mcp.tool()
def search_web(query: str, max_results: int = 5, read: int = 3) -> str:
    """Search the live web and return numbered sources; the first `read` pages include their text.

    Use it for current facts, documentation and news. Cite sources by their number.
    """
    body = {"q": query, "max_results": max(1, min(max_results, 20)), "read": max(0, min(read, 10)), "max_chars": 5000}
    data = _call("/search", body)
    return "\n\n".join(_page(i, r) for i, r in enumerate(data["results"], start=1))


@mcp.tool()
def read_urls(urls: list[str]) -> str:
    """Read 1 to 20 public web pages whose URLs you already have and return their main text."""
    data = _call("/extract", {"urls": urls[:20], "max_chars": 12000})
    return "\n\n".join(_page(i, r) for i, r in enumerate(data["results"], start=1))


if __name__ == "__main__":
    mcp.run()

Jak zainstalować i przetestować serwer?

Utwórz środowisko wirtualne, zainstaluj mcp i httpx i zapisz plik powyżej. mcp to oficjalny SDK Python dla Model Context Protocol; jego klasa FastMCP zamienia typowane funkcje Python w narzędzia i używa każdego docstringa jako opisu narzędzia.

Uruchom plik raz z terminala z ustawionym kluczem. Potem czeka cicho na klienta na standardowym wejściu, co oznacza, że działa; zatrzymaj go przez Ctrl+C. Błędy z API są zgłaszane jako błędy narzędzia z ich kodem, więc model widzi rate_limited lub insufficient_credits prostymi słowami.

Instalacja i jednorazowe uruchomienie
python -m venv .venv
. .venv/bin/activate
pip install "mcp[cli]" httpx
LLMWEBSEARCH_API_KEY="your-key" python llmwebsearch_mcp.py

Jak dodać go do Claude Code?

Użyj claude mcp add. Dokumentacja Claude Code podaje formę claude mcp add [options] <name> -- <command> [args...]: najpierw jego własne opcje, potem podwójny myślnik, a następnie polecenie uruchamiające serwer. Zmienne środowiskowe trafiają do --env KEY=value, a przynajmniej jedna inna opcja, taka jak --transport stdio, musi znajdować się między --env a nazwą serwera.

Dodaj --scope user, aby serwer był dostępny we wszystkich Twoich projektach; domyślny zakres, local, obejmuje tylko bieżący projekt. Używaj ścieżek bezwzględnych do Python z Twojego środowiska wirtualnego i do pliku serwera.

Zarejestruj serwer w Claude Code
claude mcp add --env LLMWEBSEARCH_API_KEY=your-key --transport stdio --scope user llmwebsearch \
  -- /home/you/llmwebsearch/.venv/bin/python /home/you/llmwebsearch/llmwebsearch_mcp.py

Jak dodać go do Claude Desktop i innych klientów?

Claude Desktop odczytuje serwery z claude_desktop_config.json, w sekcji mcpServers. Nadaj serwerowi nazwę, podaj polecenie, jego argumenty oraz obiekt env zawierający klucz, a następnie uruchom aplikację ponownie; search_web i read_urls pojawią się na liście narzędzi.

Inne klienty MCP, takie jak Cursor, proszą o te same trzy rzeczy we własnych ustawieniach MCP: polecenie, jego argumenty i zmienne środowiskowe. Klucz nigdy nie pojawia się w argumencie narzędzia ani w rozmowie.

claude_desktop_config.json
{
  "mcpServers": {
    "llmwebsearch": {
      "command": "/home/you/llmwebsearch/.venv/bin/python",
      "args": ["/home/you/llmwebsearch/llmwebsearch_mcp.py"],
      "env": { "LLMWEBSEARCH_API_KEY": "your-key" }
    }
  }
}

Jak utrzymać wyszukiwania tanie i krótkie?

Powiedz modelowi, jak ma wyszukiwać, w swoich instrukcjach: jedno lub dwa wyszukiwania na pytanie, a potem czytaj więcej tylko wtedy, gdy źródła się różnią. Serwer już ogranicza każdą stronę do 5 000 znaków w search_web i 12 000 w read_urls; obniż te liczby dla małych modeli.

Każde wywołanie search_web z read do 3 to jeden kredyt. Asystent, który wykonuje 40 wyszukiwań dziennie, zużywa około 1 200 kredytów miesięcznie, więc 5 000 wyszukiwań (9,25 USD) wystarcza na około cztery miesiące. Kredyty na wyszukiwanie nie mają daty ważności: to, czego nie wykorzystasz w tym miesiącu, będzie tam jeszcze w przyszłym roku.

Co widzi model, gdy strona nie może zostać odczytana?

Źródło nadal się pojawia, z numerem, tytułem i URL, a po nim powód w nawiasach i fragment z wyszukiwania. Nasz czytnik respektuje robots.txt: przedstawia się jako LLMWebSearch, przestrzega reguł, które witryna zapisuje dla niego lub dla wszystkich robotów, i pomija treść każdej strony, której nie wolno mu czytać. Gdy witryna odrzuca nasz czytnik, wynik wraca bez treści i ze statusem witryny: nigdy nie rozwiązujemy CAPTCHA, nie logujemy się na konta ani nie obchodzimy blokady czy paywalla. Model może wtedy oprzeć się na innych źródłach lub powiedzieć, że jedna strona była niedostępna.

Serwer MCP: najczęstsze pytania

Czy istnieje oficjalny pakiet MCP LLMWebSearch lub hostowany endpoint?

Nie. Plik z tej strony to cała integracja: około 50 linii, które możesz przeczytać i zmienić. Działa na Twojej maszynie, a Twój klucz trafia wyłącznie do naszego API.

Czy powinienem wyłączyć wbudowane wyszukiwanie w sieci w Claude Code?

Nie ma potrzeby. Oba mogą działać równocześnie; opisy mówią modelowi, co robi każde z nich. Zostaw nasze, gdy chcesz tekst strony w wynikach, stałą cenę za wyszukiwanie lub jedno miejsce na logi wyszukiwań.

Czy mogę używać go z OpenClaw?

Tak, jako serwer MCP zarejestrowany przez openclaw mcp add. Strona OpenClaw podaje polecenie i wyjaśnia, jak współistnieje z wbudowanymi dostawcami wyszukiwania OpenClaw.

Czy serwer przechowuje moje wyszukiwania?

Nie. Nie przechowuje niczego między wywołaniami. Po naszej stronie Nie trenujemy żadnego modelu na Twoich zapytaniach ani na tym, co zwraca API, i nie dodajemy własnej reguły przeciwko przechowywaniu wyników; nadal obowiązują prawa witryn, których strony czytasz.

Źródła (1)
  1. Połącz Claude Code z narzędziami przez MCP — Claude Code docs (read 2026-10-22)

Od 1,20 USD/1K wyszukiwań · bez KYC

Pobierz klucz API