@baruchiro/paperless-mcp
Version:
Model Context Protocol (MCP) server for interacting with Paperless-NGX document management system. Enables AI assistants to manage documents, tags, correspondents, and document types through the Paperless-NGX API.
34 lines (33 loc) • 2.16 kB
JavaScript
;
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.createPaperlessApiMock = createPaperlessApiMock;
exports.createDocument = createDocument;
function emptyPaginationResponse(results = []) {
return {
count: results.length,
next: null,
previous: null,
all: [],
results,
};
}
function createPaperlessApiMock() {
return {
getCorrespondents: () => __awaiter(this, void 0, void 0, function* () { return emptyPaginationResponse(); }),
getDocumentTypes: () => __awaiter(this, void 0, void 0, function* () { return emptyPaginationResponse(); }),
getTags: () => __awaiter(this, void 0, void 0, function* () { return emptyPaginationResponse(); }),
getCustomFields: () => __awaiter(this, void 0, void 0, function* () { return emptyPaginationResponse(); }),
};
}
function createDocument(overrides = {}) {
return Object.assign({ id: 1, correspondent: null, document_type: null, storage_path: null, title: "Document 1", content: "OCR content", tags: [], created: "2026-01-01T00:00:00.000Z", created_date: "2026-01-01", modified: "2026-01-01T00:00:00.000Z", added: "2026-01-01T00:00:00.000Z", deleted_at: null, archive_serial_number: null, original_file_name: "doc1.pdf", archived_file_name: "2026/doc1.pdf", owner: null, user_can_change: true, is_shared_by_requester: false, notes: [], custom_fields: [], page_count: 1, mime_type: "application/pdf" }, overrides);
}