Conceptual Vocabulary: The Minimum You Need to Know

Who this is for: Researchers using Claude who keep encountering terms — context window, MCP, system prompt, tokens — and want to understand what they actually mean, without a deep technical explanation.

These are not academic definitions. They are working definitions: enough to use the tools intelligently and understand why things behave the way they do.


Context window

What it is: The amount of text Claude can "see" at once.

Everything in a conversation — your messages, Claude's responses, the contents of any files Claude has read, any instructions — all of this lives in the context window. Claude can only work with what is in the window. It cannot reach back into previous sessions; it cannot remember what was said last week.

Think of it as a very large desk. Everything on the desk is immediately accessible. Anything not on the desk does not exist for the current conversation. When the desk fills up, older material gets pushed off to make room.

How large is it? For Claude's current models, roughly 200,000 tokens — equivalent to a long novel, or several hundred pages of academic text. Large enough that you will rarely hit it in a single focused session. But not infinite.

When it matters:

The practical implication: Claude does not accumulate knowledge across sessions. Each new session starts fresh. This is why tools like CLAUDE.md (Claude Code) and Projects (Desktop) exist — they put persistent context back on the desk at the start of each session.


Tokens

What it is: The unit Claude uses to measure text — roughly ¾ of a word, or about 4 characters.

You do not need to count tokens. But knowing the concept helps you understand:

A rough guide: | | Approximate tokens | |---|---| | One sentence | ~20 | | One page of academic text | ~500 | | One journal article (8,000 words) | ~11,000 | | A short book (70,000 words) | ~95,000 | | Full context window | ~200,000 |

For typical research use — reading articles, working on drafts, batch-processing a reasonable corpus — tokens are not something you need to actively manage.


System prompt

What it is: Hidden instructions that are loaded into Claude's context before your conversation begins.

You do not see the system prompt in the chat interface, but it is there. It shapes how Claude behaves: its persona, its constraints, the format of its responses, what it will or will not do.

In Claude Desktop:

In Claude Code:

Why it matters: Understanding the system prompt explains why Claude "already knows" certain things at the start of a conversation, and why your custom instructions are so powerful — they modify Claude's behaviour at the foundation level, before you type a single message.

You can also write your own effective system prompt by thinking about what you would want Claude to always know and do. This is the mental model behind writing a good CLAUDE.md.


Context engineering

What it is: The practice of deliberately designing what information fills Claude's context — so that it has exactly what it needs, and not what it doesn't.

At Level 1, most AI use is prompt engineering: crafting the right words for a single request. Context engineering is the shift that defines Level 2: instead of asking "how do I phrase this?", you ask "what does Claude need to know to do this well?" — and you build that knowledge once, persistently, rather than reconstructing it from scratch in every session.

Shopify's CEO Tobi Lütke put the distinction sharply: "Context engineering is the art of providing all the context for the task to be plausibly solvable by the LLM." Andrej Karpathy named the technical dimension: "Context engineering is the delicate art and science of filling the context window with just the right information for the next step."

What context engineering looks like in practice:

What you build Where it lives When Claude sees it
Project description CLAUDE.md / Project instructions Every session, automatically
Research framing Claude.ai Project Every conversation, automatically
Analysis plan, source list, glossary Separate files Explicitly, when relevant
Task constraints and output format Individual prompt That request only

Why the distinction matters: Most AI frustration at Level 1 is a context failure disguised as a prompting failure. Claude gave a generic answer — not because the question was poorly worded, but because it didn't know enough about your specific situation to give a specific answer. Better phrasing won't fix that. Only better context will.

The shift from prompt engineering to context engineering is the cognitive core of the Level 1 → 2 transition: from improving each request individually, to building the foundation that makes every request better. See C.leveling-packages and B.adoption-spectrum.


MCP (Model Context Protocol)

What it is: A standard way to give Claude access to external tools and data sources — things outside the conversation itself.

Without MCP, Claude can only work with what is in the context window: text you paste, files you upload (Desktop) or that exist on your disk (Code). With MCP, Claude can reach out to live systems: search your Zotero library, read files from Google Drive, query a database, search the web.

The analogy: MCP servers are like power tools you plug in. Claude is the worker. Without power tools, Claude can only work with what is on the bench. MCP lets Claude pick up additional tools — a Zotero connection, a web search, a calendar — that extend what it can do.

What you encounter in practice:

Commonly used MCP servers for researchers: | MCP server | What it gives Claude | |---|---| | Zotero | Search your library, retrieve metadata, suggest citations | | Filesystem | Read files from a specific folder (mainly useful in Desktop) | | Brave Search / web search | Search the internet during a conversation | | Google Drive | Read documents from your Drive | | Logseq / Obsidian | Search and read your personal notes |

You do not need to understand MCP deeply to use it. You add the server, and Claude gains the capability. The concept is useful mainly so you understand why Claude can suddenly "see" your Zotero library — and what the limits are (Claude can only use data the MCP server exposes; it does not have arbitrary access to the connected system).


RAG (Retrieval-Augmented Generation)

What it is: A pattern where the AI answers by first retrieving relevant documents (or chunks of documents), then generating a response grounded in what it retrieved — rather than answering from what it already "knows."

Most AI-assisted research already works this way, even without the label: you give Claude some PDFs, ask a question, and it synthesises an answer from those documents. That is RAG. The retrieval step can be manual (you upload the files) or automatic (an MCP server or search tool fetches them for Claude based on your question).

Why it exists: A model's training data goes stale and can't contain your specific sources. RAG lets it answer from your documents — your corpus, your notes, your Zotero library — instead of only from general knowledge, and lets answers be grounded and citable.

Its structural limit: RAG only surfaces what is written down. It cannot retrieve reasoning that was never documented — why a decision was made, what was considered and rejected, what a term means "in practice" beyond its formal definition. See B.knowledge-curation for what this means for a project like DISSINET.

Where you encounter it: Uploading PDFs to a conversation, connecting Zotero via MCP, using NotebookLM, or Claude Code reading files from your project folder — all retrieval-then-generation, i.e. RAG in practice, whether or not the tool calls itself that.


Skills / Tools

These two terms are used somewhat interchangeably, in different contexts.

Tools (Claude Code): Built-in capabilities that Claude Code has — reading files, writing files, running shell commands, searching the web. These are always available. You do not install them; they come with Claude Code.

When you see Claude doing something (a indicator in the terminal), it is using a tool: reading a file, running a search, writing output. Tools are what make Claude Code an agent rather than just a chatbot — it can take actions, not just generate text.

Skills (Claude Desktop / Claude.ai): In the Claude.ai interface, "skills" sometimes refers to specific capabilities or behaviours that can be activated — either built-in (like artifact generation) or user-defined (via custom instructions). The terminology shifts; what matters is the concept: Claude can be given specific structured behaviours beyond its defaults.

MCP tools: When you add an MCP server, it exposes its own tools to Claude. Zotero MCP, for example, exposes tools like search_library and get_item_metadata. Claude can call these tools during a conversation just as it calls built-in tools.

The practical point: When Claude does something in the background — reads a file, searches Zotero, browses a webpage — it is using a tool. Tools are how Claude acts on the world, not just talks about it.


Agent

What it is: A mode of operation where Claude plans and executes a sequence of steps autonomously, rather than just responding to a single prompt.

In a standard chat, the loop is: you say something → Claude says something → you say something → etc. You are in the loop at every step.

In agent mode, Claude takes a goal, breaks it into steps, executes those steps (using tools — reading files, writing output, checking results), and only surfaces back to you when done, or when it needs a decision.

Example:

"Read all 15 PDFs in this folder, extract named persons from each, consolidate into a list, and remove duplicates."

Claude executes this as an agent: reads file 1, notes persons, reads file 2, notes persons, continues through all 15, consolidates, deduplicates, writes output. You gave one instruction; Claude did 15+ operations.

Why this matters for researchers: Agent mode is powerful but requires trust calibration. Claude will make decisions along the way that you do not review in real time. For most document tasks (reading, extracting, summarising) the risk is low — Claude can read and write text, but it is not going to delete your files or send emails unless you explicitly ask it to. For anything that modifies your original data or interacts with external systems, use more supervision.

See A.concept.agents for a fuller treatment of the trust and supervision question.


Harness

What it is: The software layer that wraps an LLM and gives it the ability to use tools, access files, manage memory, and take actions in the world.

The model (Claude, Gemini, GPT-4) generates text. The harness handles everything else: reading and writing files, running commands, managing the conversation across turns, persisting context between sessions, and coordinating tool use. When you interact with Claude Code, you are not interacting with "Claude" directly — you are using a harness that runs Claude.

The conceptual distinction:

Think of it this way. A skilled analyst (the model) can only work with what is put in front of them. The harness is the office: the filing system, the inbox, the phone connection to external data, the notepad for keeping track of what was done. Two harnesses can run the same analyst; the same harness can swap which analyst it calls.

This separation is real and consequential:

Examples you may encounter:

Harness Developer Default model Notes
Claude Code Anthropic Claude Filesystem agent; configurable to other models
Claude Desktop Anthropic Claude Conversational interface; MCP integrations
Gemini CLI Google Gemini Google's equivalent of Claude Code
Aider Open source Configurable aider.chat — pair programming, many LLMs
OpenCode Open source Configurable opencode.ai — 75+ models, privacy-first

Why it matters for researchers: When you choose a harness, you are not just choosing an interface — you are choosing a workflow philosophy. How much does the agent do autonomously? How does it manage memory? Can it access your files? Can it connect to external tools? These questions are answered by the harness, not by the model. Understanding this helps you evaluate alternatives and avoid conflating "Claude" (the model) with "Claude Code" (the harness that runs it).

→ Martin Fowler's team has written about this as harness engineering — a useful framing for those who want more depth.


How these concepts connect

Harness (Claude Code / Claude Desktop / Aider / OpenCode / …)
  │
  ├── Model  ← the LLM that generates text (Claude, Gemini, GPT-4, …)
  │
  ├── Context window  ← everything the model can currently "see"
  │     ├── System prompt (hidden foundation)
  │     ├── CLAUDE.md / Project instructions (your additions to the foundation)
  │     ├── Conversation history
  │     └── File contents (read via tools)
  │
  ├── Tools  ← what the harness lets the model DO
  │     ├── Built-in: read/write files, run commands
  │     └── MCP servers: Zotero, web search, Drive, etc.
  │
  └── Agent mode  ← how the model uses tools autonomously to complete a goal

Understanding this stack is enough to:


Related