Basic document CRUD works against any CouchDB, but indexes and Mango queries only appear on 3.x and newer — the server checks the version and enables them accordingly. Credentials travel inside the connection URL, so whatever that user can do to the cluster, the agent can do too.
A TypeScript server over a single CouchDB connection. It covers the database and document basics on every CouchDB version, and detects the server version on startup to decide whether the Mango query tools are available.
- Databases created, listed and deleted — `createDatabase`, `listDatabases`, `deleteDatabase`
- Documents written by id, where supplying the current `_rev` turns the call into an update instead of a create — `createDocument`
- A document read back by database and id — `getDocument`
- Mango indexes created, listed and removed on CouchDB 3.x and newer — `createMangoIndex`, `listMangoIndexes`, `deleteMangoIndex`
- Documents queried with a Mango query object rather than a fetch-then-filter loop — `findDocuments`
A reachable CouchDB instance and `COUCHDB_URL` holding the connection string, credentials included; it defaults to `http://localhost:5984` when unset. `COUCHDB_VERSION` tells the server which feature set to enable. Node.js 14 or higher. Runs from the built `build/index.js`, or installs into Claude Desktop through Smithery.
One command — npx -y github:robertoamoreno/couchdb-mcp-server
