Skip to main content
Glama

DocuMCP - Document Management System with MCP Integration

A powerful document management system that combines local file storage with vector database capabilities, accessible through both a web GUI and Claude Desktop via the Model Context Protocol (MCP).

Features

  • 📚 Document Management: Upload, store, and organize documents with a beautiful web interface

  • 🔍 Vector Search: Semantic search powered by Qdrant vector database

  • 🤖 MCP Integration: Access documents directly from Claude Desktop

  • 🔐 Authentication: Secure JWT-based authentication system

  • 🎨 Modern GUI: Responsive web dashboard for easy document management

  • đŸŗ Docker Support: Easy deployment with Docker Compose

Related MCP server: MCP Server

Quick Start

Prerequisites

  • Node.js 20+

  • Docker & Docker Compose (optional, for Qdrant)

  • Claude Desktop (for MCP integration)

Installation

  1. Clone and install dependencies:

git clone <repository>
cd documcp
npm install
  1. Start Qdrant (using Docker):

docker run -p 6333:6333 -v ./qdrant_data:/qdrant/storage qdrant/qdrant
  1. Configure environment:

cp .env.example .env
# Edit .env with your settings
  1. Build and start the application:

npm run build
npm start
  1. Access the web interface: Open http://localhost:3456 in your browser

  • Default login: admin / admin123

Docker Deployment

For production deployment with Docker:

docker-compose up -d

This will start:

  • Qdrant vector database on port 6333

  • DocuMCP web server on port 3456

  • MCP server on port 3457

Claude Desktop Integration

  1. Build the MCP server:

npm run build
  1. Add to Claude Desktop configuration:

Edit your Claude Desktop config file:

  • Mac: ~/Library/Application Support/Claude/claude_desktop_config.json

  • Windows: %APPDATA%\Claude\claude_desktop_config.json

Add this configuration:

{
  "mcpServers": {
    "documcp": {
      "command": "node",
      "args": ["/path/to/documcp/dist/mcp-server.js"],
      "env": {
        "QDRANT_URL": "http://localhost:6333",
        "COLLECTION_NAME": "documents"
      }
    }
  }
}
  1. Restart Claude Desktop

Available MCP Tools

Once configured, Claude can use these tools:

  • list_documents - List all documents in the system

  • search_documents - Semantic search across documents

  • read_document - Read specific document content

  • delete_document - Remove documents from the system

Architecture

DocuMCP/
├── Web GUI (Express + HTML/JS)
│   ├── Authentication (JWT)
│   ├── File Upload/Download
│   └── Document Management
├── MCP Server
│   └── Document Access Tools
├── Storage Layer
│   ├── Local File System (./uploads)
│   └── Qdrant Vector DB
└── API Layer
    ├── REST API
    └── MCP Protocol

Configuration

Environment Variables

Variable

Description

Default

PORT

Web server port

3456

JWT_SECRET

JWT signing secret

(required)

ADMIN_PASSWORD

Admin login password

admin123

QDRANT_URL

Qdrant server URL

http://localhost:6333

COLLECTION_NAME

Qdrant collection

documents

UPLOAD_DIR

File storage directory

./uploads

MAX_FILE_SIZE

Max upload size (bytes)

10485760

Development

# Run in development mode
npm run dev

# Run MCP server standalone
npm run mcp:dev

# Build TypeScript
npm run build

Security Notes

âš ī¸ Important for Production:

  • Change default JWT_SECRET and ADMIN_PASSWORD

  • Use HTTPS in production

  • Configure proper CORS settings

  • Implement rate limiting

  • Add file type restrictions

  • Use environment-specific configs

Troubleshooting

Qdrant Connection Issues

  • Ensure Qdrant is running: docker ps

  • Check logs: docker logs qdrant

  • Verify port 6333 is accessible

MCP Server Not Connecting

  • Check Claude Desktop logs

  • Verify path in config is absolute

  • Ensure Node.js is in PATH

Upload Failures

  • Check MAX_FILE_SIZE setting

  • Verify uploads directory permissions

  • Check available disk space

License

MIT

Contributing

Pull requests welcome! Please ensure:

  • Code follows TypeScript best practices

  • Tests pass (when implemented)

  • Documentation is updated

  • Security considerations addressed

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    A file management system powered by Claude AI that provides document access and manipulation through MCP protocol and Telegram bot integration, enabling users to interact with files via natural language commands.
    -
  • F
    license
    Not graded
    quality
    D
    maintenance
    An MCP server that provides document management capabilities including reading, editing, and summarizing documents through a CLI chat interface powered by Claude AI.
    -
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables querying enterprise documents (DOCX, PDF, PPTX) using natural language, with hybrid search and MCP integration for Claude Desktop and other agents.
    MIT