---
title: "The server"
description: "What a caller can ask it, and where each answer comes from."
canonical: index.html
navigation-title: "Server"
---

<a id="the-server"></a>

# The server

What a caller can ask it, and where each answer comes from.

- [What a client gets at initialize](initialize.md) — what a client gets at `initialize` and in the lists it
  fetches right after: the result as the server sends it, the instructions in
  their wording, the prompts, and what the tool list weighs.
- [tools/](tools/index.md) — every tool, one page each. What it is for, what
  it takes, which fields it answers with, and what one call to it came back
  with.
- [resources/](resources/index.md) — the other surface a client gets, the one
  a user picks out of a list rather than calls mid-task.
- [Where an answer comes from](answer-sources.md) — the five sources an answer can come from, and what
  each one needs up before it can.
- [The bundled knowledge](knowledge-base.md) — what ships in `knowledge/`, which is where almost
  every answer comes from.
- [Which versions an answer holds for](versions.md) — how a statement that holds for some TYPO3 versions and not
  others says so. Also why a catalog withholds an entry instead of a
  qualification.
- [Asking the installation](asking-the-installation.md) — the order the server looks an installation's
  own answers up in, how it delivers the probe, and what a fallback owes the
  caller.
- [The draft RFC on an MCP interface contract for TYPO3](interface-contract.md) — a community proposal for an MCP interface contract
  for TYPO3, read as a reference. What it says and what would change here if the
  community ever adopted it.

![A task starts with a read of the project and names its workflow. Then it uses a specialist tool and returns the source, version, scope and limits with the answer.](../images/answer-flow.svg)

The tools are the server. Everything else on this page is either the other
surface beside them or an account of where their answers come from. That is the
one thing a caller cannot see from a tool's own description. It is the reason
every answer names its source, its version bound and what it left out.
