Atlas / MCP servers / onlyoffice / DocSpace

DocSpaceBLOCK

mcp/onlyoffice/docspace

DocSpace MCP Server

Verdict
BLOCK
Grade
D
Trust score
69 /100
Exposed tools
32 21r · 8w · 3d
Transport
sse · stdio · streamable-http
License
MIT
Stars
31
01

Overview

From the repository's own README, as read at the audited commit. Badges and raw HTML are left out.

[Model Context Protocol] (MCP) is a standardized protocol for managing context between large language models (LLMs) and external systems. This repository provides an MCP server for [ONLYOFFICE DocSpace].

The DocSpace MCP Server connects AI tools directly to ONLYOFFICE DocSpace. This gives AI agents, assistants, and chatbots the ability to manage rooms, collaborate on files, handle permissions, and automate document workflows - all through natural language interactions.

Features

  • Tools with granular control - Access to tools organized into logical

toolsets with fine-grained enable/disable capabilities and meta tools.

  • Multiple transport protocols - Support for stdio, SSE, and Streamable HTTP

transports.

  • Different authentication methods - Supports API keys, Personal Access

Tokens, Basic authentication, and OAuth 2.0 with dynamic client registration. See examples.

  • Request-level configuration - Configure authentication and tool selection

during session initialization using custom HTTP headers.

  • Various distribution formats - Available as Docker image, [Docker MCP

Server](/docs/distribution/docker-mcp.md#user-content-docker-mcp-server), MCP bundle, and Node.js application.

Use Cases

  • Room Management: Create, update, and archive rooms. Configure room types, manage membership, and control access levels.
  • Folder & File Operations: Create folders, upload documents, copy or move items in batches, rename or delete content, and check file or folder detai
Read from source at commit 74c2fba6733fOBSERVED · 2026-10-08
Advertisement
02

Connect

Built from this server's own package name, version and transport as found in its source — not copied from anyone's documentation, so it cannot drift against a page we do not control. Replace the environment placeholders with a token scoped to the least it needs.

claude-code
claude mcp add docspace-mcp --env NODE_TLS_REJECT_UNAUTHORIZED=${NODE_TLS_REJECT_UNAUTHORIZED} -- npx -y @onlyoffice/[email protected]
claude-desktop
{
  "mcpServers": {
    "docspace-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@onlyoffice/[email protected]"
      ],
      "env": {
        "NODE_TLS_REJECT_UNAUTHORIZED": "${NODE_TLS_REJECT_UNAUTHORIZED}"
      }
    }
  }
}
03

Exposed tools (32)

21 read · 8 write · 3 destructive. Blast radius: 3 tools can delete or overwrite — an agent that can be talked into calling a tool can be talked into calling this one.

ToolRiskDescription
archive_roomreadArchive a room.
call_toolreadThis is a meta-tool for calling a tool. The list of available tools can be obtained using the list_tools meta-tool. The input schema can be obtained using the get_tool_input_schema meta-tool.
copy_batch_itemsreadCopy to a folder.
create_folderwriteCreate a folder.
create_roomwriteCreate a room.
delete_filedestructiveDelete a file.
delete_folderdestructiveDelete a folder.
download_file_as_textreadDownload a file as text.
filesreadOperations for working with files.
foldersreadOperations for working with folders.
get_all_peoplereadGet all people.
get_file_inforeadGet file information.
get_folder_contentreadGet content of a folder.
get_folder_inforeadGet folder information.
get_my_folderreadGet the
get_room_access_levelsreadGet a list of available room invitation access levels.
get_room_inforeadGet room information.
get_room_security_inforeadGet a list of users with their access levels to a room.
get_room_typesreadGet a list of available room types.
get_rooms_folderreadGet the
get_tool_input_schemareadThis is a meta-tool for getting an input schema for a specific tool. The list of available tools can be obtained using the list_tools meta-tool.
get_tool_output_schemareadThis is a meta-tool for getting an output schema for a specific tool. The list of available tools can be obtained using the list_tools meta-tool.
list_toolsreadThis is a meta-tool for listing available tools of a specific toolset. The list of available toolsets can be obtained using the list_toolsets meta-tool.
list_toolsetswriteThis is a meta-tool for listing available toolsets. Toolset is a set of available tools.
move_batch_itemswriteMove to a folder.
peoplereadOperations for working with users.
rename_folderwriteRename a folder.
roomsreadOperations for working with rooms.
set_room_securitydestructiveInvite or remove users from a room.
update_filewriteUpdate a file.
update_roomwriteUpdate a room.
upload_filewriteUpload a file.
04

Trust audit

BLOCKgrade D · trust 69/100 Do not install this without reading the findings. The audit found something that could harm you or your machine.

LayerWhat it checksResult
L0Provenance & inventoryPASS
L1Static analysis of the codeFAIL
L2Instruction surface (what it tells the agent)PASS
L3Class-specific surfaceWARN
L4Behavioural (sandbox)SKIPPED

What the source does

Filesystem
declared (8 observation(s))
Network
declared (6 observation(s))
Shell
declared (1 observation(s))
Dependencies
pinned
Secrets in source
none-found

Findings (11)

HIGHCode injection · code.eval_exec · CWE-78, CWE-94, CWE-95
scripts/build-mcpb.ts:136
await exec(
Why it matters. evaluates text as code
Fix. remove; use a parser or a dispatch table
HIGHNetwork egress · net.tls_off · CWE-200, CWE-319
scripts/proxy.ts:8
process.env.NODE_TLS_REJECT_UNAUTHORIZED = "0"
Why it matters. certificate verification is disabled
Fix. leave verification on
MEDIUMFilesystem / path · mcp.destructive_tools · CWE-22, CWE-59
delete_file, delete_folder, set_room_security
Why it matters. 3 tool(s) can delete or overwrite
Fix. prefer a read-only mode or scoped tokens; the page states the blast radius
LOWInventory / provenance · inv.hidden_file · CWE-1104
.check-licenses.yml
.check-licenses.yml
Why it matters. hidden member outside the usual dotfiles
Fix. review its purpose
LOWFilesystem / path · fs.traversal · CWE-22, CWE-59
lib/api/core/auth-service.ts:7
import type {Result} from "../../util/result.ts"
LOWFilesystem / path · fs.traversal · CWE-22, CWE-59
lib/api/core/auth-service.ts:8
import {error, ok} from "../../util/result.ts"
LOWFilesystem / path · fs.traversal · CWE-22, CWE-59
lib/api/core/client.ts:7
import type {Result} from "../../util/result.ts"
LOWFilesystem / path · fs.traversal · CWE-22, CWE-59
lib/api/core/client.ts:8
import {error, ok, safeAsync, safeNew, safeSync} from "../../util/result.ts"
LOWFilesystem / path · fs.traversal · CWE-22, CWE-59
lib/api/core/files-service.ts:7
import type {Result} from "../../util/result.ts"
LOWObfuscation / stealth · obf.base64_blob · CWE-506, CWE-94
docs/installation/local-server.md:21
|
INFOPrompt injection · prompt.credential_read · CWE-94, CWE-1427
docs/installation/remote-server.md:21
Access Token (PAT), username/password pair, or raw `Authorization` header.
Why it matters. asks the agent to read credentials

Gates applied: no_behavioural_pass.

Audited 2026-10-08 · audit v0.4.1 · source sha 74c2fba6733ffull audit observations/trust-audit/mcp-server/onlyoffice__docspace.json · Report an issue / request a re-scan
05

Audit history

Every audit this server has had. A grade with a past is a grade somebody is still checking.

DateSourceVerdictGradeScoreChange
2026-10-0874c2fba6733fBLOCKD69first audit
06

Questions

What is the DocSpace MCP server?

DocSpace MCP Server

What tools does DocSpace expose?

32 in total: 21 read-only, 8 that write, and 3 that can delete or overwrite (delete_file, delete_folder, set_room_security). Every one is listed on this page with its risk.

Is DocSpace safe to connect to an agent?

No — not without reading the findings first. The audit graded it D (69/100) and found 2 critical or high issues in the source. Each one is listed on this page with the file and line it is on. Separately from the audit: 3 of its tools can destroy data, so scope the token you give it to what you actually need.

What credentials does DocSpace need?

It reads NODE_TLS_REJECT_UNAUTHORIZED from the environment. Give it a token scoped to the least it needs — an agent that can be talked into calling a tool can be talked into calling it with your credentials.

How does DocSpace run?

It speaks sse, stdio and streamable-http, so it runs as a local process your client starts. It is published on npm as @onlyoffice/docspace-mcp at 3.2.0.

How current is this page?

The grade is for one exact copy of the source (74c2fba6733f), read on 2026-10-08. The repository is watched and re-audited when it changes.

Advertisement