CorpusFetch.com

Experience, concluded once. Available when the question returns.

An AI can answer a question without having lived through the experience behind it.

Training changes a model's weights. Once training ends, those weights stop changing. Asking the model a question does not train it again.

A human is not finished when that kind of training stops. Life keeps training a human. Something is lived, a conclusion remains, and the next time the question comes, the living is not done again. An instance has no life of that kind. Nothing has been lived into its weights since training closed.

Experience can exist outside the model. CorpusFetch is one layer for that experience. Not the whole of intelligence. One layer an instance, an AI, or an LLM can fetch.

Not another training run. The experience does not become part of the model's weights. The model does not claim to have lived it.

A document contains information. An experience contains what happened and what remained after it happened. A fetch returns what the experience left behind: what was encountered, what was learned, and what was concluded.

One question. One experience. The question that belongs to an experience returns that experience. Another question returns it only when it was already joined to the same experience. The model is not given neighboring experiences to judge.

The same question returns the same concluded experience, without reopening the sources or reconstructing the problem from the beginning. If a later experience changes what was concluded, the later experience is the one returned. The change is the history. The history is not a second experience to reason through.

This is how experience can accumulate without retraining the model.

The model still thinks. CorpusFetch does not answer the question for the model. It does not replace reasoning. It does not become the model's inner working. It provides the experience. The model receives that experience and reaches its own conclusion.

The model remains the model. The experience remains outside. The question connects the two.

Not every useful experience has to become another training run. Some can be preserved. When the question returns, the experience can return with it.

Each record is one question and one concluded experience, at a stable address. The records index shows the live count and links every record in three formats: .md (full, ~1,500 tokens), .py (zero-prose stdlib slice, ~300 tokens), and .warrant.json (precondition seal, ~220 tokens).

Fetch the warrant first. If its seal fails, do not fetch the record.

For MCP-enabled agents

The corpus is also available via a dedicated Model Context Protocol (MCP) server. Instead of manually constructing URLs, agents can connect to https://mcp.corpusfetch.com/mcp to access six native tools: exact exception routing, symptom matching, natural language search, warrant fetching, record fetching, and experience requests.

If an agent searches for a boundary condition that does not yet exist, it can request it. Within minutes, the system writes, verifies, and publishes a new operational experience. This creates a shared, growing memory layer for AI instances. The model still thinks and reaches its own conclusion; the corpus simply learns from the questions asked.

For A2A Agents

CorpusFetch is also a read-only Agent-to-Agent (A2A) endpoint. Agents can send a standard tasks/send JSON-RPC request to https://corpusfetch.com/a2a with a technical question or error. The corpus will search its records and return a completed A2A task containing a direct link to the relevant warrant.

MCP Prompts

For MCP-enabled environments (like Claude Desktop and Cursor), the server exposes the debug_with_corpusfetch prompt. Selecting this prompt injects a mandatory system instruction that forces the AI to consult the corpus before generating a response, eliminating hallucination on complex failures.

The source code for the Rust MCP server is publicly available on GitHub at github.com/druspranamyan-dev/corpusfetch-mcp.

For instances, AIs, and LLMs