DOCS MCP SERVER - ENVIRONMENT DOCUMENTATION
Overview
Server: docs
Version: 2.2.0
Location: /opt/mcp-servers/docs/mcp_docs_server.py
Public URL: https://docs.corlera.com
Purpose: File upload, PDF creation, CDN-based sharing
Architecture
Storage Model
- Base Path: /data/cdn/users/{user}/
- Public URL: https://docs.corlera.com/home/{user}/{path}
- Backend: CopyParty file server (localhost:3923)
Visibility Folders
| Folder |
Access Level |
Description |
| documents |
private |
User-only access |
| public |
public |
Anyone with link |
| shared |
shared |
Future password protect |
URL Mapping Example
- docs.corlera.com/home/chris/documents/report.pdf
→ /data/cdn/users/chris/documents/report.pdf
File Operations
| Tool |
Parameters |
Description |
| docs.upload |
source_path (req), destination, user |
Upload file to Nexus Docs. Auto-categorizes: pdf→documents, png/jpg→images, md→markdown |
| docs.get_url |
path (req), user |
Get public URL for file |
| docs.list |
path, user, recursive |
List files in directory |
| docs.delete |
path (req), user |
Delete a file |
| docs.move |
source (req), destination (req), user |
Move/rename file |
| docs.extract_document |
path (req), user |
Get document metadata for Corpus |
Folder Operations
| Tool |
Parameters |
Description |
| docs.create_folder |
name (req), user (req), visibility |
Create new folder |
| docs.list_folders |
user (req), include_files |
List folders with visibility |
PDF Generation
| Tool |
Parameters |
Description |
| docs.create_pdf |
user (req), content|file_path|temp_id |
Generate PDF from markdown |
PDF Options:
- visibility: private|public|shared
- template: default|professional|minimal|report
- footer_text, show_page_numbers
- logo_path, logo_position, logo_height, header_text
- cleanup_temp: Auto-remove TEMP staging
Sharing
| Tool |
Parameters |
Description |
| docs.create_share |
path (req), user (req) |
Create shareable link. Options: password, expires_minutes, share_name, allow_upload |
| docs.list_shares |
user (req) |
List active shares |
| docs.delete_share |
share_name (req), user (req) |
Revoke share link |
Admin
| Tool |
Parameters |
Description |
| docs.user_create |
username (req), password (req) |
Create user directory structure |
| docs.status |
- |
Get statistics: file count, size, user breakdown |
PDF Templates
| Template |
Style |
| professional |
Blue headers, corporate, modern |
| minimal |
Clean serif, simple layout |
| report |
Navy formal, business reports |
| default |
Balanced sans-serif |
All templates support:
- Logo insertion (PNG/JPG/SVG)
- Custom header text
- Page numbers
- Custom footer
- Tables with styling
- Code blocks
Usage Examples
// Upload a file
gateway.run([{server:'docs', tool:'upload', args:{
source_path: '/tmp/report.pdf',
destination: 'documents/reports/q4.pdf',
user: 'chris'
}}])
// Create PDF from markdown
gateway.run([{server:'docs', tool:'create_pdf', args:{
content: '# Report Title\n\nContent here...',
user: 'chris',
visibility: 'public',
template: 'professional'
}}])
// Create PDF from TEMP staging
gateway.run([{server:'docs', tool:'create_pdf', args:{
temp_id: 'tmp_abc1',
user: 'chris',
visibility: 'public',
cleanup_temp: true
}}])
// Create shareable link
gateway.run([{server:'docs', tool:'create_share', args:{
path: 'public/report.pdf',
user: 'chris',
password: true,
expires_minutes: 1440
}}])
Integration Notes
TEMP → PDF Pipeline
- temp.stage({content, title}) → tmp_XXXX
- docs.create_pdf({temp_id:'tmp_XXXX', user, visibility:'public'})
- cleanup_temp:true auto-removes staging
Corpus Integration
- docs.extract_document({path}) → metadata
- corpus.convert() or corpus.extract() → text content
Visibility Routing
- visibility:'private' → documents/ folder
- visibility:'public' → public/ folder
- visibility:'shared' → shared/ folder
Current Status
- Users: 1 (chris)
- Files: 83
- Total Size: 9.52 MB
- Public URL: https://docs.corlera.com
- Standard folders: documents (private), public, shared
- Custom folders: books, educational, exports, images, sales, etc.