
YaCy peer-to-peer search
io.github.pad01gPublished by GitHub account pad01gv1.0.0Updated Oct 24, 2026
Web search, crawling and ranking evaluation on your own YaCy peer: no API key, no central service.
Overview
Connects an assistant to your own YaCy peer for web search, crawling, ranking settings and search-quality evaluation, with no search API key.
- What you can do
- Search the peer's index and optionally the peer-to-peer network, with a configurable wait for answers
- Start, pause, resume and stop crawls of a site, and list crawls with their handles
- Inspect index status, connected peers and trust delegations
- Read and change ranking and filtering settings, then evaluate ranking quality with precision, recall and R-precision
- Remove a single page from the peer's own index
- When to use it
- Useful when you run your own YaCy peer and want an assistant to search it, crawl sites into it, tune ranking settings and measure search quality, without relying on a commercial search API.
- Requirements
- A running YaCy peer reachable over HTTP, given by YACY_URL. The server runs as a local stdio process, typically a Docker container on the same network as the peer, or Node 24 when run from source. Admin actions need YACY_ADMIN_USER and YACY_ADMIN_PASSWORD; optional YACY_CRAWL_ALLOW_PRIVATE, YACY_ALLOW_TRUST_SETTINGS and YACY_TIMEOUT_MS.
Installation
In SourceWeft
- Open YaCy peer-to-peer search in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
yacy-search MCP server
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.
Run
Start a peer and the MCP server on one Docker network:
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):
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).
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).
Tools
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.
Test
License
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.
Source: mcp/README.md at commit 2fa4cc2
Tools
0Version history
5- v1.0.0LatestOct 1, 2026
- v0.3.0Oct 1, 2026
- v0.2.1Sep 30, 2026
- v0.2.0Sep 29, 2026
- v0.1.0Sep 28, 2026
Score
50% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts