For AI agents · OpenCode

ClarifyDoc in OpenCode. One command, then ask.

Give OpenCode (the open-source agent in the terminal) a map of your codebase: which screen calls an endpoint, which tables it touches, what an edit breaks. It asks ClarifyDoc’s MCP server and gets short answers with path:line references instead of reading whole files. Local, read-only, no account.

npm install -g clarifydoc && clarifydoc install . --client opencode
// opencode.jsonc or opencode.json — what clarifydoc install . --client opencode writes
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "clarifydoc": {
      "type": "local",
      "command": [
        "clarifydoc",
        "mcp"
      ],
      "enabled": true
    }
  }
}

SET IT UP

From install to the first answer

  1. Install ClarifyDoc and connect OpenCode

    The CLI is on npm and needs Node.js. From the project root, the second command merges the entry into OpenCode’s config and keeps everything else in it. Add --print to see what it would write first.

    npm install -g clarifydoc && clarifydoc install . --client opencode
  2. Where the entry goes

    opencode.jsonc or opencode.json in the project

    The entry names no project: the server serves the folder OpenCode runs in, so the same file works for everyone who opens the project.

    {
      "$schema": "https://opencode.ai/config.json",
      "mcp": {
        "clarifydoc": {
          "type": "local",
          "command": [
            "clarifydoc",
            "mcp"
          ],
          "enabled": true
        }
      }
    }
  3. Reload OpenCode

    Start opencode again in the project folder.

  4. Ask the first question

    Type this as it is. If the project has no analysis yet, the first call makes one; a large repository can take a few minutes, and every analysis after it reads only the files that changed. To have it ready first, run clarifydoc analyze . from the project root.

    Call clarifydoc_status, then use clarifydoc_routes to pick one API route. Tell me which screen calls it and which tables it reads and writes, with path:line for each.

    Then one about your own change:

    Before I change <a file you know>, what depends on it and which tests should I run?
  5. Check that it worked

    clarifydoc_status answers with the project root, when it was analyzed and how many routes, screens and tables were found. If it says no analysis was found, the server is looking at another folder: start OpenCode from the project root.

    opencode mcp list shows clarifydoc and whether it connected.

  6. Keep it current

    Ask the agent to call clarifydoc_analyze, or run clarifydoc analyze . --incremental: either re-reads only the files that changed. clarifydoc install --git-hooks does it in the background after each commit, merge and branch checkout. To update ClarifyDoc itself, npm install -g clarifydoc@latest, then reload OpenCode.

  7. Remove it

    Delete the clarifydoc entry under mcp in opencode.json (or opencode.jsonc). Delete .clarifydoc/ in the project, and npm uninstall -g clarifydoc. If you asked for them, --guidance wrote between <!-- clarifydoc:start --> and <!-- clarifydoc:end --> in AGENTS.md, and --git-hooks between # clarifydoc:start and # clarifydoc:end in the repository’s git hooks. Nothing else is written.

OPTIONAL

More than the server

Each is a flag on the same clarifydoc install command, off unless you ask for it, and --print shows it before anything is written.

A section in AGENTS.md

--guidance adds a short, marked section to AGENTS.md that tells agents when to ask the map instead of searching text, and what this project’s analysis says to know first. It edits a file your team shares, so --print it first.

WHAT IT ANSWERS

23 tools, all read-only but two

Routes and who calls them, the tables a screen reads and writes, the call path between two functions, what a diff reaches, one function’s source instead of its file. Only clarifydoc_analyze and clarifydoc_diff write, and only to .clarifydoc/. Nothing leaves your machine — every network request any part can make.

OTHER HOSTS

The same server, elsewhere