A Model Context Protocol server for interacting with CouchDB
This is a TypeScript-based MCP server that provides tools for managing CouchDB databases and documents. It enables AI assistants to interact with CouchDB through a simple interface.
createDatabase
- Create a new CouchDB database
dbName
as a required parameterlistDatabases
- List all CouchDB databases
deleteDatabase
- Delete a CouchDB database
dbName
as a required parametercreateDocument
- Create a new document or update an existing document in a database
dbName
: Database namedocId
: Document IDdata
: Document data (JSON object)
_rev
field with the current document revision_rev
fieldgetDocument
- Get a document from a database
dbName
: Database namedocId
: Document IDcreateMangoIndex
- Create a new Mango index
dbName
: Database nameindexName
: Name of the indexfields
: Array of field names to indexdeleteMangoIndex
- Delete a Mango index
dbName
: Database namedesignDoc
: Design document nameindexName
: Name of the indexlistMangoIndexes
- List all Mango indexes in a database
dbName
: Database namefindDocuments
- Query documents using Mango query
dbName
: Database namequery
: Mango query objectThe server automatically detects the CouchDB version and enables features accordingly:
The server requires a CouchDB connection URL and version. These can be provided through environment variables:
COUCHDB_URL=http://username:password@localhost:5984
COUCHDB_VERSION=1.7.2
You can create a `.env` file in the project root with this configuration. If not provided, it defaults to `http://localhost:5984`.
## Development
Install dependencies:
```bash
npm install
Build the server:
npm run build
For development with auto-rebuild:
npm run watch
To install couchdb-mcp-server for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @robertoamoreno/couchdb-mcp-server --client claude
To use with Claude Desktop, add the server config:
On MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json
On Windows: %APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"couchdb-mcp-server": {
"command": "/path/to/couchdb-mcp-server/build/index.js",
"env": {
"COUCHDB_URL": "http://username:password@localhost:5984"
}
}
}
}
Since MCP servers communicate over stdio, debugging can be challenging. We recommend using the MCP Inspector, which is available as a package script:
npm run inspector
The Inspector will provide a URL to access debugging tools in your browser.
The server includes robust error handling for common scenarios:
All errors are properly formatted and returned through the MCP protocol with appropriate error codes and messages.
Seamless access to top MCP servers powering the future of AI integration.