
MCP server exposing ownCloud Infinite Scale (oCIS) as 80 AI-accessible tools
概览
A standalone Model Context Protocol (MCP) server written in Go that exposes ownCloud Infinite Scale as a set of 80+ AI-accessible tools. It enables AI assistants such as Claude, Ollama, and other MCP-compatible clients to manage oCIS users, groups, spaces, files, shares, and more through natural language, communicating exclusively over the public oCIS APIs (LibreGraph, WebDAV, OCS). This MCP server is an external integration for oCIS. It communicates over the public API surface and has no dependency on oCIS internals, allowing independent versioning and release cycles. The server exposes 80 tools in 13 categories: Create in the oCIS web UI under Settings > Security > App tokens. The HTTP transport runs every tool with the server's configured oCIS credential (often an admin app token). The /mcp endpoint therefore controls the full tool inventory, so it must not be reachable by untrusted callers. - Set OCIS_MCP_HTTP_SECRET to a long random value.
README
以下为原文 README 节选,完整内容请查看原文。
oCIS MCP Server
A standalone Model Context Protocol (MCP) server written in Go that exposes ownCloud Infinite Scale as a set of 80+ AI-accessible tools. It enables AI assistants such as Claude, Ollama, and other MCP-compatible clients to manage oCIS users, groups, spaces, files, shares, and more through natural language, communicating exclusively over the public oCIS APIs (LibreGraph, WebDAV, OCS).
Getting Started
See the Getting Started Guide for a full walkthrough.
Quick Setup
# Build
make build
# Configure
export OCIS_URL=https://your-ocis-instance.example.com
export OCIS_ACCESS_TOKEN=your-token
# Run
./ocis-mcp-server
Docker
make docker-build
docker run -e OCIS_URL=... -e OCIS_ACCESS_TOKEN=... owncloud/ocis-mcp-server
Run Tests
make test
make lint
Documentation
Part of ownCloud Infinite Scale
This MCP server is an external integration for oCIS. It communicates over the public API surface and has no dependency on oCIS internals, allowing independent versioning and release cycles.
Tool Inventory
The server exposes 80 tools in 13 categories:
| Category | Tools | Examples |
|---|---|---|
| Users | 6 | ocis_list_users, ocis_create_user, ocis_get_me |
| Groups | 7 | ocis_list_groups, ocis_create_group, ocis_add_group_member |
| Spaces | 14 | ocis_list_spaces, ocis_create_space, ocis_invite_to_space |
| Files | 14 | ocis_list_files, ocis_upload_file, ocis_download_file, ocis_move_file |
| Shares | 11 | ocis_create_share, ocis_create_link, ocis_list_shared_by_me |
| Search | 2 | ocis_search, ocis_search_by_tag |
| Notifications | 2 | ocis_list_notifications, ocis_delete_notification |
| Settings | 3 | ocis_list_roles, ocis_assign_role |
| App Tokens | 3 | ocis_list_app_tokens, ocis_create_app_token |
| Admin | 4 | ocis_health_check, ocis_get_version, ocis_get_capabilities |
| Education | 5 | ocis_list_education_schools, ocis_create_education_user |
| OCM | 4 | ocis_ocm_create_share, ocis_ocm_list_received |
| Workflows | 5 | ocis_upload_and_share, ocis_create_project_space |
Authentication
安装
docker run -e OCIS_URL=... -e OCIS_ACCESS_TOKEN=... owncloud/ocis-mcp-server