mcp-server-groupoffice (VitexSoftware/mcp-server-groupoffice) is an MCP server listed on the M8ven Trust Index. It scores 89 out of 100, grade B. It declares 40 tools. The publisher has proved control of what we score (Verified Publisher). It is connected through the M8ven GitHub App, so the listing is re-checked on every push.
Emerging. No concerning findings. Grades remain capped until the project builds reputation through adoption. Grades reflect the full trust pyramid: code, verification depth, and reputation. New projects cap at C until adoption is earned.
How we verified
every push re-verified
Who stands behind it
vitexsoftware.cz (@VitexSoftware) · Verified Publisher
Source: github_app_install · also listed on github_repo_search
Install from
The grade above is for the source repository. Registries can serve a different version, so we mark the ones we were not able to read.
These names and descriptions are the publisher's own, read from the source code. We print them as written. Our assessment is the findings above, not this list.
list_addressbooksList available address books.
query_contactsSearch contacts. `addressbook_id` is merged into the filter as GroupOffice's `addressBookId` property (confirmed against a live instance's /api/doc.php); pass a raw `filter` dict for anything else.
get_contactGet a single Contact by ID.
create_contactCreate a new Contact. `data` follows GroupOffice's Contact/set create schema (e.g. firstName, lastName, emailAddresses, addressBookId).
update_contactUpdate fields on an existing Contact.
delete_contactDelete a Contact by ID.
list_calendarsList available calendars.
query_calendar_eventsSearch calendar events. `calendar_id`/`start` are merged into the filter as GroupOffice's confirmed `calendarId`/`start` properties. Note: CalendarEvent has no `end` property - event length is a `duration` (ISO 8601 duration string, e.g. "PT1H") relative to `start`, not a separate end timestamp. Que…
get_calendar_eventGet a single CalendarEvent by ID.
create_calendar_eventCreate a new CalendarEvent. `data` follows GroupOffice's CalendarEvent/set create schema (e.g. title, start, duration, calendarId - note "duration" not "end", e.g. duration="PT1H" for a 1-hour event).
update_calendar_eventUpdate fields on an existing CalendarEvent.
delete_calendar_eventDelete a CalendarEvent by ID.
list_tasklistsList available task lists.
query_tasksSearch tasks. `tasklist_id` is merged into the filter as GroupOffice's confirmed `tasklistId` property (lowercase "l" - not `taskListId`). Completion is tracked via the `percentComplete` property (0-100), not a boolean `completed` field - pass `filter={"percentComplete": 100}` yourself if your insta…
get_taskGet a single Task by ID.
create_taskCreate a new Task. `data` follows GroupOffice's Task/set create schema (e.g. title, due, tasklistId, responsibleUserId, priority).
update_taskUpdate fields on an existing Task.
delete_taskDelete a Task by ID.
query_notesSearch notes.
get_noteGet a single Note by ID.
create_noteCreate a new Note. `data` follows GroupOffice's Note/set create schema.
update_noteUpdate fields on an existing Note.
delete_noteDelete a Note by ID.
query_projectsSearch projects (GroupOffice Projects v3 module, entity Project3). Note: this module is optional - it returns an error on instances where it isn't installed. Check your instance's /api/doc.php.
get_projectGet a single Project3 record by ID.
create_projectCreate a new project. `data` follows GroupOffice's Project3/set create schema (e.g. name, description).
update_projectUpdate fields on an existing project.
delete_projectDelete a project by ID.
query_commentsList comments attached to a record, e.g. entity='Contact', entity_id='42'. Filtered by GroupOffice's confirmed `entity` (friendly name, not the stored `entityTypeId` int - verified live: querying by `entityTypeId` is rejected as an unsupported filter, while `entity` works) and `entityId` properties.
get_commentGet a single Comment by ID.
create_commentCreate a new Comment. `data` follows GroupOffice's Comment/set create schema (e.g. entityTypeId, entityId, text).
update_commentUpdate fields on an existing Comment.
delete_commentDelete a Comment by ID.
query_historyList audit-log entries for a record, e.g. entity='Contact', entity_id='42'. GroupOffice's history/audit entity is actually named `LogEntry` (not "History"), filtered by its confirmed `entity` (friendly name)/`entityId` properties - see `query_comments` for details. Read-only and generated automatica…
query_usersSearch users. Read-only: user administration (create/update/delete) is deliberately not exposed by this server - it is high-privilege and out of scope.
get_userGet a single User by ID.
query_groupsSearch groups. Read-only: group administration is out of scope.
get_groupGet a single Group by ID.
upload_fileUpload a file as a GroupOffice blob. `content_base64` is the raw file content, base64-encoded. Returns a `blob_id` to attach to another entity's create/update `data` (e.g. a Contact photo or a CalendarEvent/Note attachment field).
download_fileDownload a GroupOffice blob by ID. Returns base64-encoded content; large files will produce a large response (base64 inflates size by ~33%) - prefer this only for reasonably small attachments.
GROUPOFFICE_URLBase URL of your GroupOffice instance, e.g. https://groupoffice.example.comGROUPOFFICE_API_TOKENBearer token from System Settings -> API Keys (requires the "API key generator" community module)GROUPOFFICE_VERIFY_SSLVerify TLS certificatesGROUPOFFICE_TIMEOUTHTTP request timeout, secondsGROUPOFFICE_MAX_RETRIESConnection-level retries on transient network errorsGROUPOFFICE_DEBUGEnable debug loggingGROUPOFFICE_READONLYrejected before any API call unless you explicitly set =false.Tool test coverage
25/40 tools referenced in tests (63%)
Write tests that reference each tool by name so every tool has at least one test.
[](https://m8ven.ai/mcp/vitexsoftware/mcp-server-groupoffice)?variant=verified to the badge URL.Vetting this one by hand? Tool Check is an MCP that scores other MCPs. Add it once and ask Claude, ChatGPT, or any MCP client to grade a server, surface CVEs, check the publisher, and suggest safer alternatives — before you install.
https://m8ven.ai/api/mcp/tool-check