Tools: CMIS and FIT-Connect
GovBridge tools for public authorities: cmis_* for case file search in the DMS, fit_* for OZG delivery via FIT-Connect, with parameters and results.
GovBridge gives the model a fixed list of tools: cmis_* for the DMS, fit_* for
FIT-Connect. Which ones an endpoint offers depends on the provisioned protocol. No
other operations are possible, including raw CMIS SQL (least privilege).
The tool names are German identifiers and stay that way in every language. They are part of the API contract, not display text.
CMIS: case files and documents
Read tools (always available)
| Tool | Purpose | Required parameters |
|---|---|---|
cmis_akte_suchen | Search folders/case files (cmis:folder) by name pattern | query |
cmis_dokument_suchen | Search documents (cmis:document) by name and/or full text | – (query and/or fulltext) |
cmis_metadaten_lesen | Read an object's properties | objectId |
cmis_dokument_holen | Fetch a document's content (subject to the size policy) | objectId |
Optional limit parameter on the searches: number of results, default 25, maximum 100.
Write tools (only when enabled)
Only with allow_writes = true are they listed in tools/list and executed. Otherwise
even a direct call ends with a tool error. When connected through the Marketplace
template, SovrGPT also asks for approval in the chat before every call
(confirm_writes): each action individually, with the details shown, valid for one hour
(Approvals in the chat).
| Tool | Purpose | Required parameters |
|---|---|---|
cmis_dokument_ablegen | Create a new document in a folder (createDocument) | folderId, name, plus text or contentBase64 |
cmis_dokument_verschieben | Move an object between folders (moveObject) | objectId, sourceFolderId, targetFolderId |
Result formats
- Searches return name, base type,
objectIdand, where available, size; the model continues with theobjectId. cmis_metadaten_lesenreturns the object properties as formatted JSON.cmis_dokument_holenapplies the size policy: text up to 32 KB inline as a resource, allowlisted binary types (PDF, DOC/X, XLS/X, PNG, JPEG) up to 5 MB as a base64 blob, anything larger or not listed only as a reference (cmis://<objectId>) with metadata, without the bytes.
FIT-Connect: delivering applications
An endpoint provisioned for fit-connect offers the fit_* set. It maps the
sender flow of FITKO's FIT-Connect Submission API v2: applications go end-to-end
encrypted to a destination. backend_base_url points to the submission API instance, and
the service account (OAuth2 client credentials or basic) authenticates the adapter. The
model only fills in the domain fields and never triggers raw API calls.
Read tool (always available)
| Tool | Purpose | Required parameters |
|---|---|---|
fit_zustellpunkt_pruefen | Status of a destination, the supported metadata versions and whether an encryption key is stored | destinationId |
Write tool (only when enabled and approved)
fit_antrag_senden only exists with allow_writes = true. When connected through the
Marketplace template, SovrGPT asks for approval in the chat before every submission
(confirm_writes), because a submitted application cannot be withdrawn. The card shows
every detail of the application; it is submitted exactly once and with exactly these
details, as long as the approval is valid (one hour). Text in the chat is not an approval
(Approvals in the chat).
| Tool | Purpose | Required parameters |
|---|---|---|
fit_antrag_senden | Submit an application E2E-encrypted (announce → attachments → finalize) | destinationId, serviceName, serviceIdentifier, plus data or dataBase64 |
Further optional parameters: dataMimeType (default application/json),
submissionSchemaUri (FIM or domain schema URI) and attachments (max. 10
attachments, each max. 5 MB, as filename + contentBase64 + mimeType).
How fit_antrag_senden proceeds
- Check the destination and fetch the public encryption key (JWK).
announce: register the submission with the announced attachment IDs.- Upload the attachments: each one encrypted individually as a compact JWE.
finalize: transmit the encryptedmetadata.json(with SHA-512 hashes) and the encrypted application data. The return value is thesubmissionIdplus status.
Details on the mandatory encryption: Security & privacy.
CMIS 1.1 browser binding
Towards the backend, GovBridge speaks the CMIS 1.1 browser binding, the JSON-over-HTTP variant of the OASIS standard CMIS:
- Search via
cmisselector=querywith a CMIS SQLSELECTstatement, built exclusively from escaped string literals; model text never reaches the query verbatim (injection protection). - Metadata via
cmisselector=object. - Content via
cmisselector=content, with a hard byte cap before buffering. - Writing via
cmisaction=createDocumentorcmisaction=move(multipart form). - The repository service document is resolved once per endpoint and cached for 5 minutes.
You set the backend address per endpoint (backend_base_url); the adapter reads from
there in real time.
Covered DMS
Because CMIS is an open standard, one adapter covers several DMS products without a product-specific connector:
| DMS | Standard | Connection |
|---|---|---|
| VIS suite (PDV) | CMIS 1.1 | direct |
| nscale (Ceyoniq/Kyocera) | CMIS 1.1 | direct |
| Fabasoft | CMIS 1.1 | direct |
| Alfresco | CMIS 1.1 | direct |
| OpenText / Documentum | CMIS 1.1 | direct |
Each requires that your installation offers the CMIS 1.1 browser binding (GovBridge does not speak the AtomPub or Web Services bindings) and a service account (basic or OAuth2 client credentials).
MCP methods
Towards SovrGPT, GovBridge speaks the MCP methods it needs: initialize (protocol
negotiation 2025-06-18, fallback 2024-11-05), tools/list (filters write tools by
allow_writes), tools/call and ping. More on the protocol:
MCP server.