PaperDock
Ce que fait ce MCP
Provides collaborative online LaTeX project editing, file management, comments, chat, source search, and access to compiled PDFs.
Outils
Schéma d’entrée
{'type': 'object', 'oneOf': [{'required': ['fileId']}, {'required': ['path']}], 'required': ['projectId', 'body'], 'properties': {'body': {'type': 'string', 'maxLength': 4000}, 'path': {'type': 'string', 'minLength': 1}, 'quote': {'type': 'string', 'maxLength': 1000}, 'fileId': {'type': 'string', 'format': 'uuid'}, 'projectId': {'type': 'string', 'format': 'uuid'}, 'selectionTo': {'type': 'integer', 'minimum': 0}, 'contextAfter': {'type': 'string', 'maxLength': 500}, 'contextBefore': {'type': 'string', 'maxLength': 500}, 'selectionFrom': {'type': 'integer', 'minimum': 0}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'required': ['comment'], 'properties': {'comment': {'type': 'object', 'required': ['authorType', 'body', 'filePath', 'quote', 'commentId', 'replies', 'selectionFrom', 'selectionTo', 'status'], 'properties': {'body': {'type': 'string'}, 'quote': {'type': 'string'}, 'status': {'enum': ['open', 'resolved'], 'type': 'string'}, 'replies': {'type': 'array', 'items': {'type': 'object', 'required': ['authorType', 'body'], 'properties': {'body': {'type': 'string'}, 'authorType': {'enum': ['person', 'ai_agent'], 'type': 'string'}}, 'additionalProperties': False}}, 'filePath': {'type': 'string'}, 'commentId': {'type': 'string'}, 'authorType': {'enum': ['person', 'ai_agent'], 'type': 'string'}, 'selectionTo': {'type': 'integer'}, 'selectionFrom': {'type': 'integer'}}, 'additionalProperties': False}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'required': ['projectId', 'path', 'content'], 'properties': {'path': {'type': 'string', 'minLength': 1}, 'content': {'type': 'string'}, 'projectId': {'type': 'string', 'format': 'uuid'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'required': ['file', 'status'], 'properties': {'file': {'type': 'object', 'required': ['kind', 'mimeType', 'path', 'revision', 'sizeBytes'], 'properties': {'kind': {'enum': ['source', 'asset'], 'type': 'string'}, 'path': {'type': 'string'}, 'mimeType': {'type': ['string', 'null']}, 'revision': {'type': 'integer'}, 'sizeBytes': {'type': ['integer', 'null']}}, 'additionalProperties': False}, 'status': {'type': 'string', 'const': 'created'}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'maxLength': 120, 'minLength': 1}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'required': ['initialFilePath', 'project'], 'properties': {'project': {'type': 'object', 'required': ['capabilities', 'name', 'projectId', 'role'], 'properties': {'name': {'type': 'string'}, 'role': {'enum': ['owner', 'editor', 'viewer'], 'type': 'string'}, 'projectId': {'type': 'string'}, 'capabilities': {'type': 'object', 'required': ['chatRead', 'chatWrite', 'commentRead', 'commentWrite', 'projectWrite', 'read', 'write'], 'properties': {'read': {'type': 'boolean'}, 'write': {'type': 'boolean'}, 'chatRead': {'type': 'boolean'}, 'chatWrite': {'type': 'boolean'}, 'commentRead': {'type': 'boolean'}, 'commentWrite': {'type': 'boolean'}, 'projectWrite': {'type': 'boolean'}}, 'additionalProperties': False}}, 'additionalProperties': False}, 'initialFilePath': {'type': 'string', 'const': 'main.tex'}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'allOf': [{'oneOf': [{'required': ['fileId']}, {'required': ['path']}]}, {'oneOf': [{'required': ['operations']}, {'required': ['content']}, {'required': ['rangeToken', 'insert']}]}], 'required': ['projectId', 'baseRevision'], 'properties': {'path': {'type': 'string', 'minLength': 1}, 'fileId': {'type': 'string', 'format': 'uuid'}, 'insert': {'type': 'string'}, 'content': {'type': 'string'}, 'projectId': {'type': 'string', 'format': 'uuid'}, 'operations': {'type': 'array', 'items': {'type': 'object', 'required': ['expectedText', 'from', 'insert', 'to'], 'properties': {'to': {'type': 'integer', 'minimum': 0}, 'from': {'type': 'integer', 'minimum': 0}, 'insert': {'type': 'string'}, 'expectedText': {'type': 'string'}}, 'additionalProperties': False}, 'maxItems': 5000, 'minItems': 1}, 'rangeToken': {'type': 'string', 'maxLength': 2048, 'minLength': 1}, 'baseRevision': {'type': 'integer', 'minimum': 0}, 'expectedUpdatedAt': {'type': 'string'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'required': ['applicationStatus', 'file'], 'properties': {'file': {'type': 'object', 'required': ['kind', 'mimeType', 'path', 'revision', 'sizeBytes'], 'properties': {'kind': {'enum': ['source', 'asset'], 'type': 'string'}, 'path': {'type': 'string'}, 'mimeType': {'type': ['string', 'null']}, 'revision': {'type': 'integer'}, 'sizeBytes': {'type': ['integer', 'null']}}, 'additionalProperties': False}, 'applicationStatus': {'enum': ['applied', 'applying', 'not_applied', 'pending_review'], 'type': 'string'}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'required': ['projectId'], 'properties': {'limit': {'type': 'integer', 'maximum': 200, 'minimum': 1}, 'projectId': {'type': 'string', 'format': 'uuid'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'required': ['messages', 'truncated'], 'properties': {'messages': {'type': 'array', 'items': {'type': 'object', 'required': ['authorType', 'body'], 'properties': {'body': {'type': 'string'}, 'authorType': {'enum': ['person', 'ai_agent'], 'type': 'string'}}, 'additionalProperties': False}}, 'truncated': {'type': 'boolean'}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'required': ['projectId'], 'properties': {'projectId': {'type': 'string', 'format': 'uuid'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'required': ['comments', 'status'], 'properties': {'status': {'type': 'string', 'const': 'open'}, 'comments': {'type': 'array', 'items': {'type': 'object', 'required': ['authorType', 'body', 'filePath', 'quote', 'commentId', 'replies', 'selectionFrom', 'selectionTo', 'status'], 'properties': {'body': {'type': 'string'}, 'quote': {'type': 'string'}, 'status': {'enum': ['open', 'resolved'], 'type': 'string'}, 'replies': {'type': 'array', 'items': {'type': 'object', 'required': ['authorType', 'body'], 'properties': {'body': {'type': 'string'}, 'authorType': {'enum': ['person', 'ai_agent'], 'type': 'string'}}, 'additionalProperties': False}}, 'filePath': {'type': 'string'}, 'commentId': {'type': 'string'}, 'authorType': {'enum': ['person', 'ai_agent'], 'type': 'string'}, 'selectionTo': {'type': 'integer'}, 'selectionFrom': {'type': 'integer'}}, 'additionalProperties': False}}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'required': ['projectId'], 'properties': {'projectId': {'type': 'string', 'format': 'uuid'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'required': ['files'], 'properties': {'files': {'type': 'array', 'items': {'type': 'object', 'required': ['kind', 'mimeType', 'path', 'revision', 'sizeBytes'], 'properties': {'kind': {'enum': ['source', 'asset'], 'type': 'string'}, 'path': {'type': 'string'}, 'mimeType': {'type': ['string', 'null']}, 'revision': {'type': 'integer'}, 'sizeBytes': {'type': ['integer', 'null']}}, 'additionalProperties': False}}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'properties': {}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'required': ['projects'], 'properties': {'projects': {'type': 'array', 'items': {'type': 'object', 'required': ['capabilities', 'name', 'projectId', 'role'], 'properties': {'name': {'type': 'string'}, 'role': {'enum': ['owner', 'editor', 'viewer'], 'type': 'string'}, 'projectId': {'type': 'string'}, 'capabilities': {'type': 'object', 'required': ['chatRead', 'chatWrite', 'commentRead', 'commentWrite', 'projectWrite', 'read', 'write'], 'properties': {'read': {'type': 'boolean'}, 'write': {'type': 'boolean'}, 'chatRead': {'type': 'boolean'}, 'chatWrite': {'type': 'boolean'}, 'commentRead': {'type': 'boolean'}, 'commentWrite': {'type': 'boolean'}, 'projectWrite': {'type': 'boolean'}}, 'additionalProperties': False}}, 'additionalProperties': False}}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'oneOf': [{'required': ['fileId']}, {'required': ['path']}], 'required': ['projectId'], 'properties': {'path': {'type': 'string', 'minLength': 1}, 'fileId': {'type': 'string', 'format': 'uuid'}, 'lineRange': {'type': 'object', 'required': ['startLine', 'endLine'], 'properties': {'endLine': {'type': 'integer', 'minimum': 1}, 'startLine': {'type': 'integer', 'minimum': 1}}, 'additionalProperties': False}, 'projectId': {'type': 'string', 'format': 'uuid'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'required': ['file'], 'properties': {'file': {'type': 'object', 'required': ['kind', 'mimeType', 'path', 'revision', 'sizeBytes'], 'properties': {'kind': {'enum': ['source', 'asset'], 'type': 'string'}, 'path': {'type': 'string'}, 'mimeType': {'type': ['string', 'null']}, 'revision': {'type': 'integer'}, 'sizeBytes': {'type': ['integer', 'null']}}, 'additionalProperties': False}, 'range': {'type': 'object', 'required': ['endLine', 'endOffset', 'rangeToken', 'startLine', 'startOffset', 'totalLines', 'truncated'], 'properties': {'endLine': {'type': 'integer'}, 'endOffset': {'type': 'integer'}, 'startLine': {'type': 'integer'}, 'truncated': {'type': 'boolean'}, 'rangeToken': {'type': 'string'}, 'totalLines': {'type': 'integer'}, 'startOffset': {'type': 'integer'}}, 'additionalProperties': False}, 'content': {'type': 'string'}, 'downloadUrl': {'type': ['string', 'null']}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'required': ['projectId', 'path'], 'properties': {'path': {'type': 'string', 'minLength': 1, 'description': 'Project-relative entry .tex path, such as main.tex. Not a PDF path or URL.'}, 'projectId': {'type': 'string', 'format': 'uuid'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'required': ['status', 'mainPath', 'mimeType', 'downloadUrl', 'downloadExpiry', 'compiledAt', 'sizeBytes', 'freshness', 'latestCompileStatus', 'isLatestCompile', 'message'], 'properties': {'status': {'enum': ['available', 'not_compiled', 'unavailable'], 'type': 'string'}, 'message': {'type': 'string'}, 'mainPath': {'type': 'string'}, 'mimeType': {'type': 'string', 'const': 'application/pdf'}, 'freshness': {'enum': ['outdated', 'unknown'], 'type': 'string'}, 'sizeBytes': {'type': ['integer', 'null']}, 'compiledAt': {'type': ['string', 'null']}, 'downloadUrl': {'type': ['string', 'null']}, 'downloadExpiry': {'type': ['string', 'null']}, 'isLatestCompile': {'type': 'boolean'}, 'latestCompileStatus': {'enum': ['queued', 'running', 'completed', 'failed', 'canceled', 'expired', None], 'type': ['string', 'null']}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'required': ['projectId', 'commentId', 'body'], 'properties': {'body': {'type': 'string'}, 'commentId': {'type': 'string', 'format': 'uuid'}, 'projectId': {'type': 'string', 'format': 'uuid'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'required': ['commentId', 'reply'], 'properties': {'reply': {'type': 'object', 'required': ['authorType', 'body'], 'properties': {'body': {'type': 'string'}, 'authorType': {'enum': ['person', 'ai_agent'], 'type': 'string'}}, 'additionalProperties': False}, 'commentId': {'type': 'string'}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'required': ['projectId', 'query'], 'properties': {'limit': {'type': 'number', 'maximum': 50, 'minimum': 1}, 'query': {'type': 'string', 'minLength': 1}, 'projectId': {'type': 'string', 'format': 'uuid'}, 'extensions': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'required': ['matches', 'searchedFiles', 'truncated'], 'properties': {'matches': {'type': 'array', 'items': {'type': 'object', 'required': ['column', 'line', 'path', 'revision', 'snippet', 'type'], 'properties': {'line': {'type': 'integer'}, 'path': {'type': 'string'}, 'type': {'type': 'string', 'const': 'content'}, 'column': {'type': 'integer'}, 'snippet': {'type': 'string'}, 'revision': {'type': 'integer'}}, 'additionalProperties': False}}, 'truncated': {'type': 'boolean'}, 'searchedFiles': {'type': 'integer'}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'required': ['projectId', 'body'], 'properties': {'body': {'type': 'string', 'maxLength': 4000}, 'projectId': {'type': 'string', 'format': 'uuid'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'required': ['message'], 'properties': {'message': {'type': 'object', 'required': ['authorType', 'body'], 'properties': {'body': {'type': 'string'}, 'authorType': {'enum': ['person', 'ai_agent'], 'type': 'string'}}, 'additionalProperties': False}}, 'additionalProperties': False}
Schéma d’entrée
{'type': 'object', 'oneOf': [{'required': ['content']}, {'required': ['contentBase64']}], 'required': ['projectId', 'path'], 'properties': {'path': {'type': 'string', 'minLength': 1}, 'sha256': {'type': 'string'}, 'content': {'type': 'string'}, 'mimeType': {'type': 'string'}, 'projectId': {'type': 'string', 'format': 'uuid'}, 'contentBase64': {'type': 'string'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'required': ['file', 'status'], 'properties': {'file': {'type': 'object', 'required': ['kind', 'mimeType', 'path', 'revision', 'sizeBytes'], 'properties': {'kind': {'enum': ['source', 'asset'], 'type': 'string'}, 'path': {'type': 'string'}, 'mimeType': {'type': ['string', 'null']}, 'revision': {'type': 'integer'}, 'sizeBytes': {'type': ['integer', 'null']}}, 'additionalProperties': False}, 'status': {'type': 'string', 'const': 'created'}}, 'additionalProperties': False}
Modifications récentes des outils
Serveurs MCP similaires
cypher-mcp
Provides named Cypher graph queries and code-orientation tools for tracing capabilities, symbols, invariants, provenance, changes…
canton-ccpedia
Searches and explains Canton Network and Daml documentation, governance proposals, forums, code examples, APIs, releases, and eco…
ALM X++ MCP Server
Supports D365 Finance and Operations development with X++ and AOT search, code analysis, Azure DevOps workflows, telemetry querie…
Kaiku
Manages team issues, comments, attachments, projects, wiki pages, and related development workflows.
api-evangelist
Provides API governance analysis, OpenAPI overlays and version diffs, security-sensitive field classification, code samples, matu…
Forge Engine
Manages software design specifications, systems, milestones, tasks, code mappings, project decisions, UI screens, and implementat…
Avalanche AVAX MCP
Searches and retrieves Avalanche documentation, community proposals, CLI guidance, Builder Console workflows, blockchain identifi…
Github
Reads public GitHub repository files, releases, commits, issues, repository metadata, user profiles, and trending repositories.