Context7
Up-to-date docs for AI agents
作者による説明(英語の原文)
Web search, crawling and ranking evaluation on your own YaCy peer: no API key, no central service.
この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。
このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。
使っているAIアプリを選んで、設定をコピーしてください。
YACY_URL, YACY_ADMIN_USER, YACY_ADMIN_PASSWORD, YACY_CRAWL_ALLOW_PRIVATE, YACY_ALLOW_TRUST_SETTINGS「秘密」と表示された値は、あなたのアカウントの鍵です。絶対に人に教えたり、チャットに貼り付けたりしないでください。
必要なもの
どのアプリを使っていますか?
上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。
Claude Desktop → Settings → Developer → Edit Config を開き、claude_desktop_config.json にこれを貼り付けます
{
"mcpServers": {
"yacy-search": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"YACY_URL",
"-e",
"YACY_ADMIN_USER",
"-e",
"YACY_ADMIN_PASSWORD",
"-e",
"YACY_CRAWL_ALLOW_PRIVATE",
"-e",
"YACY_ALLOW_TRUST_SETTINGS",
"ghcr.io/pad01g/yacy-search-mcp:1.0.0"
],
"env": {
"YACY_URL": "your-value",
"YACY_ADMIN_USER": "your-value",
"YACY_ADMIN_PASSWORD": "your-value",
"YACY_CRAWL_ALLOW_PRIVATE": "your-value",
"YACY_ALLOW_TRUST_SETTINGS": "your-value"
}
}
}
}ターミナルでこれを実行します
claude mcp add yacy-search --env YACY_URL=your-value --env YACY_ADMIN_USER=your-value --env YACY_ADMIN_PASSWORD=your-value --env YACY_CRAWL_ALLOW_PRIVATE=your-value --env YACY_ALLOW_TRUST_SETTINGS=your-value -- docker run -i --rm -e YACY_URL -e YACY_ADMIN_USER -e YACY_ADMIN_PASSWORD -e YACY_CRAWL_ALLOW_PRIVATE -e YACY_ALLOW_TRUST_SETTINGS ghcr.io/pad01g/yacy-search-mcp:1.0.0動かす前に、空欄の値を入力してください。
プロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます
{
"mcpServers": {
"yacy-search": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"YACY_URL",
"-e",
"YACY_ADMIN_USER",
"-e",
"YACY_ADMIN_PASSWORD",
"-e",
"YACY_CRAWL_ALLOW_PRIVATE",
"-e",
"YACY_ALLOW_TRUST_SETTINGS",
"ghcr.io/pad01g/yacy-search-mcp:1.0.0"
],
"env": {
"YACY_URL": "your-value",
"YACY_ADMIN_USER": "your-value",
"YACY_ADMIN_PASSWORD": "your-value",
"YACY_CRAWL_ALLOW_PRIVATE": "your-value",
"YACY_ALLOW_TRUST_SETTINGS": "your-value"
}
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
プロジェクトの .vscode/mcp.json に貼り付けます
{
"servers": {
"yacy-search": {
"type": "stdio",
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"YACY_URL",
"-e",
"YACY_ADMIN_USER",
"-e",
"YACY_ADMIN_PASSWORD",
"-e",
"YACY_CRAWL_ALLOW_PRIVATE",
"-e",
"YACY_ALLOW_TRUST_SETTINGS",
"ghcr.io/pad01g/yacy-search-mcp:1.0.0"
],
"env": {
"YACY_URL": "your-value",
"YACY_ADMIN_USER": "your-value",
"YACY_ADMIN_PASSWORD": "your-value",
"YACY_CRAWL_ALLOW_PRIVATE": "your-value",
"YACY_ALLOW_TRUST_SETTINGS": "your-value"
}
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
これはパソコンで動くサーバーですが、ChatGPTがつなげるのはインターネット上のサーバーだけです。ほかのアプリを選んでください。
選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。
YACY_ADMIN_USER envYACY_CRAWL_ALLOW_PRIVATE envYACY_ALLOW_TRUST_SETTINGS envこの設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。
パソコンで動くサーバーです。インストールすると、ツール一覧がAIアプリに表示されます。
誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月8日にチェック
レジストリ名は、リポジトリを所有するGitHubアカウント pad01g で確認済みです
このリポジトリはまだGitHubから読み取っていません
このリポジトリはまだGitHubから読み取っていません
これはパソコンで動くため、インターネット上のエンドポイントはありません
パソコンで動き、代わりにローカルの設定を使います
パソコンで動くサーバーです。ツール一覧を読み取れるのは、インターネット上のエンドポイントがある場合だけです
レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。
当てはまる基本チェック1項目のうち1項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。
入力が必要なもの:YACY_URL, YACY_ADMIN_PASSWORD
あなたのパソコンで動きます。必要なときにAIアプリが起動し、データは作者のサーバーを通りません(サーバー自体がオンラインサービスを呼び出す場合を除きます)。
GitHubリポジトリの最終更新は–、最新バージョン(1.0.0)がレジストリに届いたのは37 日前です。
Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。パソコンにDockerも必要です。
同じカテゴリには:Context7, Codebase Memory, Exa
同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。
カードの見方:★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i
Up-to-date docs for AI agents
Codebase knowledge graph for AI agents — 162 languages, sub-ms queries, 99% fewer tokens.
Connect AI agents to Exa for web search, content fetching, and multi-step research.
作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。
An MCP server for one YaCy peer: web search without a search API or API key, crawling, ranking settings and search quality evaluation. It runs next to the agent (stdio) and talks to the agent's own peer over HTTP. There is no central service: the peer is yours, and it searches the peer-to-peer network it belongs to. Registry name: io.github.pad01g/yacy-search.
It is written for the improved-search fork (results carry author signature verdicts and tags). Search, crawl, status and settings also work with upstream YaCy.
Start a peer and the MCP server on one Docker network:
docker network create yacy 2>/dev/null || true
docker run -d --name yacy --network yacy -p 127.0.0.1:8090:8090 \ -v yacy_data:/opt/yacy_search_server/DATA ghcr.io/pad01g/yacy-improved-search:latest
claude mcp add yacy -- docker run -i --rm --network yacy \ -e YACY_URL=http://yacy:8090 -e YACY_ADMIN_PASSWORD=' ' ghcr.io/pad01g/yacy-search-mcp:1.0.0
The fork's image starts with the administrator account admin / yacy: change the password at http://127.0.0.1:8090/ConfigAccounts_p.html before connecting the MCP server, and pass the new one.
Other clients (mcp.json style):
{
"mcpServers": { "yacy": { "command": "docker", "args": ["run", "-i", "--rm", "--network", "yacy", "-e", "YACY_URL=http://yacy:8090", "-e", "YACY_ADMIN_PASSWORD= ", "ghcr.io/pad01g/yacy-search-mcp:1.0.0"] } } }
For a peer outside Docker use -e YACY_URL=http://host.docker.internal:8090 (Linux: add --add-host=host.docker.internal:host-gateway). Without Docker: npm ci && node src/server.ts in this directory (Node 24).
| Variable | Default | Meaning |
|---|---|---|
YACY_URL | http://localhost:8090 | base URL of the peer |
YACY_ADMIN_USER | admin | administrator account (crawl, status counts, settings) |
YACY_ADMIN_PASSWORD | unset | administrator password; without it crawl_site, control_crawl, delete_document and set_ranking_setting are refused (even if the peer accepts local requests without a password), and the reading admin tools work only where the peer allows them without one |
YACY_CRAWL_ALLOW_PRIVATE | unset | 1: crawl_site may reach loopback and private addresses (an intranet). Otherwise only http(s) URLs of public hosts. This checks the start URL only; the links and redirects YaCy follows are limited by YaCy's own network.unit.domain (global on public peers refuses local addresses) |
YACY_TIMEOUT_MS | 30000 | timeout of one request to the peer |
YACY_ALLOW_TRUST_SETTINGS | unset | 1: set_ranking_setting may also change trust.search.acceptUnverified and trust.policy.excludeTags |
On the improved-search fork, the vector search (short questions find pages without the exact words) is used only for searches of the peer's administrator or from its host. When the MCP server runs in another container, set search.vector.public=true on the peer (it then embeds every new query of its search page).
| Tool | What it does |
|---|---|
search_web | full-text search; resource: "global" also asks connected peers and waits waitMs before ranking all answers |
crawl_site | start a crawl (url, depth, range: domain / subpath / wide, maxPages per host, default 200) |
get_index_status | indexed documents, crawl queues, peer type and connections; explains a paused crawler (load average) and a peer without a public address |
list_peers | connected peers: signed seed, reach (direct / relay), tags |
get_ranking_settings | the ranking and filtering settings with their meaning |
set_ranking_setting | change one of them (allow-list only: minimum match, coverage and thin page weights, title phrase boost, wait time; unverified results and excluded tags only with YACY_ALLOW_TRUST_SETTINGS=1) |
evaluate_ranking | queries with known relevant URLs: precision@k, recall@k, R-precision, the rank of each relevant URL; finishes within about 50 s (queries that do not fit are reported as skipped) |
get_trust_status | the signed delegations and peer lists the peer holds |
list_crawls | the crawls started on the peer, with the handle control_crawl needs |
control_crawl | pause or resume the local crawler, or stop one crawl (indexed pages stay) |
delete_document | remove one page from the peer's own index (stop a running crawl of that site first) |
1.0.0 renamed the tools to a consistent verb_noun form (no aliases): search → search_web, crawl → crawl_site, crawls → list_crawls, crawl_control → control_crawl, index_status → get_index_status, peers → list_peers, trust_status → get_trust_status. Clients that call tools by name need the new names.
A typical loop for improving results: evaluate_ranking → set_ranking_setting → evaluate_ranking.
Titles and snippets come from page authors and other peers: the tool descriptions tell the model to treat them as data, not instructions. crawl_site, control_crawl, delete_document and set_ranking_setting are marked destructive so that clients ask before calling them. Values of settings are checked per key, and a value YaCy stores differently is rolled back.
npm ci && npm run typecheck && npm test # unit tests
YACY_URL=http://localhost:8090 YACY_ADMIN_PASSWORD=yacy npm test # also calls every tool on a live peer
This directory (the MCP server) is under the MIT license. It talks to YaCy only over HTTP and contains no YaCy code; the rest of this repository, YaCy itself, stays under the GPL.