Content
# MCP MarkLogic Server
This is a Model Context Protocol (MCP) server implementation for MarkLogic, allowing you to interact with a MarkLogic database through MCP tools.
2. The server provides the following operations:
### Create Document
- Create documents in MarkLogic with optional collections
- Read documents by URI
- Delete documents by URI
- Search documents with query strings and optional collection filters
## Installation
```bash
pip install mcp-marklogic
```
## Configuration
The server requires the following environment variables:
```bash
MARKLOGIC_HOST=localhost
MARKLOGIC_PORT=8000
MARKLOGIC_USERNAME=admin
MARKLOGIC_PASSWORD=admin
```
## Usage
Once installed and configured, you can start the server:
```bash
mcp-marklogic
```
### Available Tools
1. `create-document`
- Create a new document in MarkLogic
- Parameters:
- `uri`: Document URI (required)
- `content`: Document content as JSON (required)
- `collections`: List of collections to add the document to (optional)
2. `read-document`
- Read a document from MarkLogic
- Parameters:
- `uri`: Document URI (required)
3. `delete-document`
- Delete a document from MarkLogic
- Parameters:
- `uri`: Document URI (required)
4. `search-documents`
- Search for documents in MarkLogic
- Parameters:
- `query`: Search query string (required)
- `collections`: List of collections to search in (optional)
## Development
### Setup
1. Clone the repository
2. Create a virtual environment and activate it
3. Install dependencies:
```bash
pip install -e .
```
### Running Tests
```bash
pytest tests/
```
### MarkLogic Setup
1. Ensure you have MarkLogic Server installed and running
2. Create a REST API instance on port 8000 if not already present
3. Create a user with appropriate permissions:
- Go to Admin Interface (usually http://localhost:8001)
- Create role `python-docs-role` with:
- Roles: `rest-extension-user`, `rest-reader`, `rest-writer`
- Privileges: `xdbc:eval`, `xdbc:invoke`, `xdmp:eval-in`
- Create user `python-user` with:
- Password: `pyth0n`
- Role: `python-docs-role`
## License
MIT
Connection Info
You Might Also Like
markitdown
MarkItDown-MCP is a lightweight server for converting URIs to Markdown.
markitdown
Python tool for converting files and office documents to Markdown.
firecrawl
Firecrawl MCP Server enables web scraping, crawling, and content extraction.
Filesystem
Node.js MCP Server for filesystem operations with dynamic access control.
TrendRadar
TrendRadar: Your hotspot assistant for real news in just 30 seconds.
mempalace
The highest-scoring AI memory system ever benchmarked. And it's free.