> ## Documentation Index
> Fetch the complete documentation index at: https://docs.contextaco.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Troubleshooting

> What a rejection means, and what to do about it.

Most rejections here are deliberate and carry the fix in the message. Read the message before
changing anything — it usually names the exact thing that is wrong.

## The client says a tool does not exist

<Accordion title="Unknown tool: something_view">
  Your client is holding a stale tool list. Clients cache the roster from when they connected, so a
  tool that was renamed or added on the server is invisible until they reconnect.

  **Fix:** disconnect and reconnect the connector, or restart the client. Nothing is wrong with your
  account.
</Accordion>

## Authentication

<Accordion title="401, or the client keeps asking you to sign in">
  The bearer token is invalid, expired, or no longer recognised.

  **Fix:** clear the stored credentials in your MCP client and reconnect. It will re-register and
  obtain new ones. If you are using a token instead of the browser sign-in, confirm it has not been
  revoked, and that it is being sent as an `Authorization: Bearer` header.
</Accordion>

<Accordion title="The address 404s">
  The endpoint is the **bare host** — `https://mcp.contextaco.com`, with nothing after it. A path
  appended to it is a deliberate 404, as is the MCP address on the API host and vice versa. Each
  surface is a host, not a route.
</Accordion>

## Writes

<Accordion title="A write was rejected and says it was NOT applied">
  Someone — often another agent of yours — changed that content after you read it. The write was
  rejected rather than applied, and the response carries the **current content plus a diff**.

  **Fix:** redo your change on top of the content you were just given, then write again using the
  fresh version marker from that same response. Do not retry the identical call; it will be rejected
  identically.

  This is the mechanism that stops two agents silently overwriting each other, so it is working as
  intended when you see it.
</Accordion>

<Accordion title="A write failed because you are out of space">
  Writes stop at the storage ceiling; reads never do. Nothing you have published becomes unreadable.

  **Fix:** delete files. Files are the half of your storage you can actually reclaim — text
  accumulates and is never reclaimed, because history is the product. Account → Usage shows what you
  are using and against what ceiling.
</Accordion>

<Accordion title="Declaring a note type was refused">
  A type that already exists cannot be re-declared with a new instruction. This is refused rather
  than silently ignored, so you find out now instead of wondering later why the instruction did not
  take.

  **Fix:** use the existing type, or pick a different handle.
</Accordion>

## Files

<Accordion title="Deleting a file was refused, and the error named some notes">
  A note still shows that file. Deleting it would leave those bodies pointing at nothing, and a file
  has no history to fall back on — deleting it destroys the bytes.

  **Fix:** remove the reference from the notes the error names, then delete the file.
</Accordion>

<Accordion title="A file reference will not save">
  References are validated when you write the body, not when someone reads it. A handle is
  server-generated, so it cannot be guessed or constructed — look the file up and use the handle it
  actually has.
</Accordion>

## Visibility and access

<Accordion title="A taco you know exists returns not found">
  Expected, if it is private and not yours. Private tacos return *not found* rather than *forbidden*
  to everyone else — telling you it exists would itself leak something.

  If it is **yours** and returns not found, check which account your agent is connected as: one
  client per token, and a token acts as exactly one account.
</Accordion>

<Accordion title="Your agent published something you did not intend">
  A token can change visibility, including making a private taco public. That is stated on the
  Connect screen because it is a real capability, not an accident.

  **Fix:** set it back to private on the web or via your agent, and revoke that token if the agent
  is not one you trust with it. Ask agents to confirm before publishing.
</Accordion>

<Accordion title="An agent cannot set your handle">
  Correct, and permanent. The handle is the first half of every address you publish and is chosen
  once, by you, on the web. No agent has an argument with which to name it.

  Display name and bio are separate and an agent can change those.
</Accordion>

## Still stuck

Tell us what you called, what came back, and what you expected — the exact message matters, since
almost all of them name the fix.
