get started
Introduction
muxd gives your coding agent the documentation of the libraries your project actually uses, at the versions you actually installed.
Coding agents write against what they remember. For fast-moving libraries that memory is a release or two behind, so you get deprecated options, renamed functions and APIs that never existed. muxd closes that gap without you pasting docs into the chat.
What it does
- Reads your manifests.
package.json,Cargo.toml,pyproject.toml,requirements.txtandgo.mod, with npm and Cargo workspaces, pinned to the installed versions. - Finds the docs. An
llms.txtfrom the project's own site when there is one, docs.rs for Rust crates, otherwise the README of your exact version. - Indexes them locally in
~/.muxd, split into searchable sections. - Serves them over MCP: one
muxd mcpserver gives your agentsearch_docs,get_docand three more tools, and resyncs in the background when your dependencies change.
How the pieces fit
manifestspackage.json · Cargo.toml · pyproject.toml · go.modmuxd syncresolve → fetch → index into ~/.muxdmuxd.jsonthe resolved sources, committed with your codemuxd mcpstdio → Claude Code · Claude Desktop · Cursor · VS Code
Everything runs on your machine. The optional account and public registry are for sharing ready-made sources and publishing your own; nothing in the core workflow needs them.
agents read the docs because you told them to
muxd init adds a short block to AGENTS.md / CLAUDE.md telling agents to call search_docs before using a library. Without it, most agents only reach for the tools when they are already stuck.