MCP server for CollHub: documents, projects, comments, workflows and data sources as tools for Claude Code, Claude Desktop, Cursor, VS Code and Codex
Inferred from the transports this listing declares (stdio). A client not listed here hasn’t been ruled out — it just isn’t something Forge can confirm.
Verification confirms publisher identity (repo ownership), not code safety. The security scan covers known CVEs and suspicious install scripts.
Read out of the source npm actually ships, at scan time. The package was never executed. Tools registered dynamically at runtime, or hidden inside bundled or minified code, can be missed — so this is a floor on the tool surface, not a complete census of it.
whoamiWho the server is logged in as on the instance: `user` (email, name) first, then the session (the host profile it belongs to) and the account (id, privileges, memberships). Answer a "who am I logged in as" question with the email.Who the server is logged in as on the instance: `user` (email, name) first, then the session (the host profile it belongs to) and the account (id, privileges, memberships). Answer a "who am I logged in as" question with the email.
No input schema was published for this tool.
loginLog in to the instance in the browser — only when the user asks. Plain: resumes the stored session, opens a browser only when there is none. `switch_user`: opens the browser on the login form (signing the browser out first), so a different account can be entered even when the browser is already sig…Log in to the instance in the browser — only when the user asks. Plain: resumes the stored session, opens a browser only when there is none. `switch_user`: opens the browser on the login form (signing the browser out first), so a different account can be entered even when the browser is already sig…
No input schema was published for this tool.
logoutSign out of the instance — only when the user asks. Ends this host's session on the backend and forgets it here; the user's other sessions and the app stay signed in. The next call to that instance opens a browser login.Sign out of the instance — only when the user asks. Ends this host's session on the backend and forgets it here; the user's other sessions and the app stay signed in. The next call to that instance opens a browser login.
No input schema was published for this tool.
list_principalsUsers and groups — the directory behind principal-typed fields such as a Task's `assignee`, which accept a name on write but store a numeric id. `query` (case-insensitive substring of username, first/last name, email or group name) turns "luca" into the id; `ids` labels ids read back from a documen…Users and groups — the directory behind principal-typed fields such as a Task's `assignee`, which accept a name on write but store a numeric id. `query` (case-insensitive substring of username, first/last name, email or group name) turns "luca" into the id; `ids` labels ids read back from a documen…
No input schema was published for this tool.
search_documentsHybrid semantic + full-text search in one collection; collection_id=0 lists/filters across ALL collections (system fields only, no query). Structured filters need field names from list_metadata_fields; cursor pages. Each query hit reports WHERE it matched: by default the distinct sections holding i…Hybrid semantic + full-text search in one collection; collection_id=0 lists/filters across ALL collections (system fields only, no query). Structured filters need field names from list_metadata_fields; cursor pages. Each query hit reports WHERE it matched: by default the distinct sections holding i…
No input schema was published for this tool.
findBM25 keyword search in one collection — exact terms, ranked by lexical relevance (search_documents for semantic queries). The top results carry their best passages with content and enclosing-section context (breadcrumb, span, durable uri); every result reports `matches`, its total matching passages…BM25 keyword search in one collection — exact terms, ranked by lexical relevance (search_documents for semantic queries). The top results carry their best passages with content and enclosing-section context (breadcrumb, span, durable uri); every result reports `matches`, its total matching passages…
No input schema was published for this tool.
find_similarNo description publishedThis tool published no description. Forge does not invent one.
get_document_infoNo description publishedThis tool published no description. Forge does not invent one.
read_documentNo description publishedThis tool published no description. Forge does not invent one.
read_documentsNo description publishedThis tool published no description. Forge does not invent one.
get_document_passagesNo description publishedThis tool published no description. Forge does not invent one.
get_document_historyGet the version history of a document.Get the version history of a document.
No input schema was published for this tool.
diff_versionsCompare two versions of a document and return a unified diff. Use get_document_history to discover available version numbers. Omit from_version to diff against an empty document (i.e. see everything added in to_version).Compare two versions of a document and return a unified diff. Use get_document_history to discover available version numbers. Omit from_version to diff against an empty document (i.e. see everything added in to_version).
No input schema was published for this tool.
list_document_typesList available document types that can be created — the complete list, never a page. Call this before create_document to discover valid types. A type's `instructions` (own or inherited from its parent type) say how its documents are written — what the body must and must not contain: FOLLOW them whe…List available document types that can be created — the complete list, never a page. Call this before create_document to discover valid types. A type's `instructions` (own or inherited from its parent type) say how its documents are written — what the body must and must not contain: FOLLOW them whe…
No input schema was published for this tool.
create_documentNo description publishedThis tool published no description. Forge does not invent one.
write_documentprivilegedNo description publishedThis tool published no description. Forge does not invent one.
edit_documentprivilegedNo description publishedThis tool published no description. Forge does not invent one.
replace_in_documentNo description publishedThis tool published no description. Forge does not invent one.
renumber_documentNo description publishedThis tool published no description. Forge does not invent one.
mark_headingsNo description publishedThis tool published no description. Forge does not invent one.
unlock_documentUnlock a document after editing. Call this when done writing to release the lock. Unlocking PUBLISHES: it mints the new version and re-extracts the section tree, so a stale TOC (spans_fresh: false) is refreshed by this call — there is no other refresh.Unlock a document after editing. Call this when done writing to release the lock. Unlocking PUBLISHES: it mints the new version and re-extracts the section tree, so a stale TOC (spans_fresh: false) is refreshed by this call — there is no other refresh.
No input schema was published for this tool.
read_streamRead a named stream from a document as text. System streams are "draft" (Markdown), "data" (JSON), "style" (CSS: the theme binding and the document's own rules) and "theme" (CSS: the private slot overlay); an application stream carries a typed extension (props.json, notes.md). A stream whose type i…Read a named stream from a document as text. System streams are "draft" (Markdown), "data" (JSON), "style" (CSS: the theme binding and the document's own rules) and "theme" (CSS: the private slot overlay); an application stream carries a typed extension (props.json, notes.md). A stream whose type i…
No input schema was published for this tool.
write_streamprivilegedNo description publishedThis tool published no description. Forge does not invent one.
update_metadataSet metadata field values on a document — collection fields plus the document type's own (a Task's assignee, due_date, priority; list_metadata_fields with the type_id shows them). Keys are each field's metadata_key; bare type-field names are auto-prefixed to `type:`. Partial merge: only the given f…Set metadata field values on a document — collection fields plus the document type's own (a Task's assignee, due_date, priority; list_metadata_fields with the type_id shows them). Keys are each field's metadata_key; bare type-field names are auto-prefixed to `type:`. Partial merge: only the given f…
No input schema was published for this tool.
rename_documentprivilegedRename a document by changing its `name` field. File-named documents keep their extension ("Report Q3.pdf"); typed documents keep plain titles (see the guide's "Creating documents"). Does not change collection, content, or version. To move across collections or folders, use move_document.Rename a document by changing its `name` field. File-named documents keep their extension ("Report Q3.pdf"); typed documents keep plain titles (see the guide's "Creating documents"). Does not change collection, content, or version. To move across collections or folders, use move_document.
No input schema was published for this tool.
move_documentprivilegedNo description publishedThis tool published no description. Forge does not invent one.
list_labelsList labels — the complete list, never a page — to find ids for update_labels or check existence before create_label. Empty fields are left out; the document_deny_* ACL lists only with include_deny.List labels — the complete list, never a page — to find ids for update_labels or check existence before create_label. Empty fields are left out; the document_deny_* ACL lists only with include_deny.
No input schema was published for this tool.
update_labelsAdd or remove labels on a document. Use list_labels to discover available label IDs. Use get_document_info with include=["labels"] to see current labels.Add or remove labels on a document. Use list_labels to discover available label IDs. Use get_document_info with include=["labels"] to see current labels.
No input schema was published for this tool.
locate_regexNo description publishedThis tool published no description. Forge does not invent one.
get_document_tocNo description publishedThis tool published no description. Forge does not invent one.
upload_documentprivilegedUpload a local file as a new document. Reads the file as binary, auto-detects the document type from the file extension (include it in the name), creates the document, writes content, commits, and unlocks in one step. Use this for importing files (markdown, PDF, images, etc.) into a collection.Upload a local file as a new document. Reads the file as binary, auto-detects the document type from the file extension (include it in the name), creates the document, writes content, commits, and unlocks in one step. Use this for importing files (markdown, PDF, images, etc.) into a collection.
No input schema was published for this tool.
list_collectionsList available collections. Use this first to discover collection IDs before searching or browsing documents.List available collections. Use this first to discover collection IDs before searching or browsing documents.
No input schema was published for this tool.
get_collectionGet full details of a collection including permissions and configuration. Its `instructions`, when set, say how documents there are written and handled: follow them for every document of the collection.Get full details of a collection including permissions and configuration. Its `instructions`, when set, say how documents there are written and handled: follow them for every document of the collection.
No input schema was published for this tool.
create_collectionCreate a new collection. Collections group related documents with custom metadata schemas. Set is_hierarchical=true when the user asks for a "hierarchical collection" or "collection with folders".Create a new collection. Collections group related documents with custom metadata schemas. Set is_hierarchical=true when the user asks for a "hierarchical collection" or "collection with folders".
No input schema was published for this tool.
create_folderCreate a folder inside a hierarchical collection. The collection must have is_hierarchical=true. Use parent_id to nest folders within other folders, or omit to create at the root level.Create a folder inside a hierarchical collection. The collection must have is_hierarchical=true. Use parent_id to nest folders within other folders, or omit to create at the root level.
No input schema was published for this tool.
list_folderList the contents of a folder or project, folders and projects first (an is_folder item can be listed further by its id). For navigating INSIDE a hierarchical collection — a flat collection, or a hierarchical collection's top level, is listed with search_documents(collection_id). depth: 1 (default)…List the contents of a folder or project, folders and projects first (an is_folder item can be listed further by its id). For navigating INSIDE a hierarchical collection — a flat collection, or a hierarchical collection's top level, is listed with search_documents(collection_id). depth: 1 (default)…
No input schema was published for this tool.
list_metadata_fieldsMetadata fields and their types. Without type_id: the collection-level fields (the filter fields for search_documents). With type_id: the EFFECTIVE schema of that document type in the collection — collection fields merged with the type's own (a Task's assignee, due_date, priority, estimate). When W…Metadata fields and their types. Without type_id: the collection-level fields (the filter fields for search_documents). With type_id: the EFFECTIVE schema of that document type in the collection — collection fields merged with the type's own (a Task's assignee, due_date, priority, estimate). When W…
No input schema was published for this tool.
list_projectsList projects across all collections (most recently modified first). A project is a special folder that anchors AI project workflows. Take one in with get_project_brief (brief + counts, sizes the graph read) then get_project_graph; list_folder walks its file tree, set_document_status advances its w…List projects across all collections (most recently modified first). A project is a special folder that anchors AI project workflows. Take one in with get_project_brief (brief + counts, sizes the graph read) then get_project_graph; list_folder walks its file tree, set_document_status advances its w…
No input schema was published for this tool.
create_projectNo description publishedThis tool published no description. Forge does not invent one.
get_project_briefNo description publishedThis tool published no description. Forge does not invent one.
23 of 40 tools published a description.
Tool names and descriptions are written by the publisher and shown verbatim as inert text. They are the strings an MCP client passes to a model, so Forge scans them for prompt-injection patterns — any finding appears with the security scan above. “Privileged” is a keyword match on the tool name, not an audit of what the tool does: a benign-sounding name can still do anything.
MCP server for CollHub: documents, projects, comments, workflows and data sources as tools for Claude Code, Claude Desktop, Cursor, VS Code and Codex
Linked names open Forge’s index of every entry observed exposing that tool. Browse all indexed tools.
The crawl stopped at the depth-4 limit. Anything below that level was never resolved.
The crawl stopped at the 60-package limit. The rest of the tree was never resolved.
36 more resolved packages are not drawn here (display cap: 24). Every dependency carrying an advisory is drawn regardless of the cap. Full inventory (CycloneDX SBOM)
55 declared dependencies never landed in the tree. They are missing from Forge's resolution, not from the package.
+43 more not listed. The counts by reason above cover all of them.
Not followed: peerDependencies. This tree covers runtime dependencies only, so anything those pull in was never resolved.