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.
Most clients that implement the MCP protocol have a common configuration file in JSON format, inside which you can add ONLYOFFICE DocSpace MCP server as follows:
{
"mcpServers": {
"onlyoffice-docspace": {
"env": {
"DOCSPACE_BASE_URL": "https://your-instance.onlyoffice.com",
"DOCSPACE_API_KEY": "your-api-key"
},
"command": "npx",
"args": ["--yes", "@onlyoffice/docspace-mcp"]
}
}
}
For a more detailed example of the MCP server installation process, see how it can be done using Claude Desktop.
The only way to configure ONLYOFFICE DocSpace MCP server is through environment variables. Below is a table with the names of available environment variables and their descriptions:
Name | Description |
---|---|
DOCSPACE_BASE_URL |
The base URL of the DocSpace instance. This configuration is required for making API requests to DocSpace. |
DOCSPACE_ORIGIN |
The origin of the DocSpace instance. This configuration is not required but can be used to specify the Origin header in requests to DocSpace. |
DOCSPACE_USER_AGENT |
The user agent to use for requests. This configuration is not required but can be used to specify the User-Agent header in requests to DocSpace. |
DOCSPACE_API_KEY |
The API key for accessing the DocSpace API. This configuration is required if nether DOCSPACE_AUTH_TOKEN nor DOCSPACE_USERNAME and DOCSPACE_PASSWORD are provided. |
DOCSPACE_AUTH_TOKEN |
The authentication token for accessing the DocSpace API. This configuration is required if neither DOCSPACE_API_KEY nor DOCSPACE_USERNAME and DOCSPACE_PASSWORD are provided. |
DOCSPACE_USERNAME |
The username for accessing the DocSpace API using basic authentication. This configuration is required if neither DOCSPACE_API_KEY nor DOCSPACE_AUTH_TOKEN are provided. This is used in conjunction with DOCSPACE_PASSWORD . |
DOCSPACE_PASSWORD |
The password for accessing the DocSpace API using basic authentication. This configuration is required if neither DOCSPACE_API_KEY nor DOCSPACE_AUTH_TOKEN are provided. This is used in conjunction with DOCSPACE_USERNAME . |
Model Context Protocol describes several different concepts, however ONLYOFFICE DocSpace MCP server implements Tools only.
Below is a table with the names of available tools and their descriptions:
# | Name | Description |
---|---|---|
1 | files_archive_room |
Archive a room. |
2 | files_copy_batch_items |
Copy to a folder. |
3 | files_create_folder |
Create a folder. |
4 | files_create_room |
Create a room. |
5 | files_delete_file |
Delete a file. |
6 | files_delete_folder |
Delete a folder. |
7 | files_get_file_info |
Get file information. |
8 | files_get_folder |
Get content of a folder. |
9 | files_get_folder_info |
Get folder information. |
10 | files_get_folders |
Get subfolders of a folder. |
11 | files_get_my_folder |
Get the 'My Documents' folder. |
12 | files_get_operation_statuses |
Get active file operations. |
13 | files_get_room_info |
Get room information. |
14 | files_get_room_security_info |
Get a list of users with their access levels to a room. |
15 | files_get_rooms_folder |
Get the 'Rooms' folder. |
16 | files_move_batch_items |
Move to a folder. |
17 | files_rename_folder |
Rename a folder. |
18 | files_set_room_security |
Invite or remove users from a room. |
19 | files_update_file |
Update a file. |
20 | files_update_room |
Update a room. |
21 | others_download_as_text |
Download a file as text. |
22 | others_get_available_room_invitation_access |
Get a list of available room invitation access levels. |
23 | others_get_available_room_types |
Get a list of available room types. |
24 | others_upload_file |
Upload a file. |
25 | people_get_all |
Get all people. |
26 | portal_get_quota |
Get the current quota. |
27 | portal_get_tariff |
Get the current tariff. |
28 | settings_get_supported_cultures |
Get a list of the supported cultures, languages. |
29 | settings_get_time_zones |
Get a list of the available time zones. |
This SDK is distributed under the Apache-2.0 license found in the LICENSE file.