Skip to main content
Glama
sobhanjabari

DocuWare Read-only MCP

by sobhanjabari
README.md
# DocuWare Read-only MCP

This connects Claude Desktop (or another MCP app) to DocuWare so you can find, inspect, and download documents. It cannot upload, edit, delete, or administer anything.

## Quick start on Windows

Open Command Prompt and run:

```cmd
cd /d "d:\docuware mcp"
copy .env.example .env
notepad .env
```

Fill in the OAuth values and cabinet ID. Do not guess these; your DocuWare administrator must provide them. The supplied XML identifies DocuWare 7.10 and the normalized platform URL is already configured.

```ini
DOCUWARE_CLIENT_ID=your-real-client-id
DOCUWARE_CLIENT_SECRET=your-real-client-secret
DOCUWARE_ALLOWED_CABINETS=your-cabinet-id
```

Check the settings:

```cmd
npm install --include=dev
npm run check-config
```

Build:

```cmd
npm run build
```

Use a dedicated DocuWare account with view-only permission. It must not have upload, delete, editing, workflow, or administration permission.

## MCP client

In Claude Desktop settings, add this MCP server configuration and restart Claude:

```json
{
  "mcpServers": {
    "docuware-readonly": {
      "command": "node",
      "args": ["D:/docuware mcp/dist/index.js"],
      "env": {
        "DOCUWARE_BASE_URL": "https://docuware.mapnagroup.com/DocuWare/Platform",
        "DOCUWARE_TOKEN_URL": "PASTE-THE-TOKEN-URL-HERE",
        "DOCUWARE_CLIENT_ID": "PASTE-CLIENT-ID-HERE",
        "DOCUWARE_CLIENT_SECRET": "PASTE-CLIENT-SECRET-HERE",
        "DOCUWARE_ALLOWED_CABINETS": "PASTE-CABINET-ID-HERE",
        "DOCUWARE_MAX_RESULTS": "50"
      }
    }
  }
}
```

Use a dedicated DocuWare account with view-only permissions, cabinet restrictions, and no delete, edit, workflow, or administration privileges. Keep `.env` and secrets out of source control. Stdio protocol output must remain on stdout; diagnostics should use stderr.

## What to ask Claude

- “List my DocuWare file cabinets.”
- “Find invoices in cabinet `CABINET_ID` where `InvoiceNumber` equals `12345`.”
- “Show metadata for document `9876` in cabinet `CABINET_ID`.”
- “Download document `9876` from cabinet `CABINET_ID`.”

Available tools: `list_file_cabinets`, `search_documents`, `get_document_metadata`, and `download_document`.

## If it does not work

1. Run `npm run check-config` and fix missing settings.
2. Confirm the OAuth token URL and grant with your DocuWare administrator.
3. Confirm the cabinet ID and read permission.
4. Confirm the query and download routes in `/DocuWare/Platform/Help`.