OnlyOffice MCP server
OnlyOffice: lets a system put Office files in the team drives where people keep them, find them again and read them, without acting as a person.
Connect
Add this URL to your MCP client as a remote server (Streamable HTTP):
https://office.mcps.itmindsinternal.dk/mcp
Your client signs you in with OAuth the first time it connects. There are no API keys, and a person's client sets no custom headers.
Scope requested: https://office.mcps.itmindsinternal.dk/mcp/mcp.read
Applications you can connect through
This server accepts people only through these applications. A token obtained through any other is refused, even when it is yours.
| Application | Kind | Client id |
|---|
Who can sign in
People sign in with Authentik; tokens from any other identity provider are refused.
| Provider | Issuer |
|---|---|
| Authentik | https://auth.it-minds.dk/application/o/itminds-mcp-onlyoffice/ |
How your calls reach the system behind it
- Systems only: a system signs in with Authentik, and each tool needs the entitlement named like the tool. People are refused; they use DocSpace itself.
- MACHINE_CALLERS must be roles for this server to do anything; with off, every call is refused.
- DocSpace is called with this server's own API key, but a system only reaches the team drives (rooms) this server serves AND its token holds an entitlement for: drive:<room>:read, or drive:<room>:write to write where the room allows it. Room entitlements are switched per system in the admin view.
- Personal "My documents" sections, the trash and rooms outside the allow-list are never read or written. The templates drive is read-only.
- Nothing is ever deleted, renamed or moved, and no drive is created or changed.
- Every write happens in two steps: a preview first, then the change once it is confirmed with the token the preview returned.
Systems and unattended runs
System callers, including unattended runs with no person behind them, may call a tool only when their app-only token carries that tool's app role, and only when the system is registered here. A system never acts on behalf of a person.
Tools
People reach a tool either with your own data, where this server reads with its own credential and narrows the result to you, or as you, where the system behind it applies your own permissions. A system needs the app role named like the tool.
| Tool | People | Systems |
|---|---|---|
onlyoffice_whoami | no | role onlyoffice_whoami |
onlyoffice_list_drives | no | role onlyoffice_list_drives |
onlyoffice_browse | no | role onlyoffice_browse |
onlyoffice_search | no | role onlyoffice_search |
onlyoffice_get_file | no | role onlyoffice_get_file |
onlyoffice_download_text | no | role onlyoffice_download_text |
onlyoffice_create_folder writes | no | role onlyoffice_create_folder |
onlyoffice_upload_file writes | no | role onlyoffice_upload_file |
onlyoffice_create_from_template writes | no | role onlyoffice_create_from_template |
onlyoffice_save_version writes | no | role onlyoffice_save_version |