Add missing resources to CLI, MCP, and n8n surfaces

Audit all three API surfaces against the console GraphQL schema and add
missing resources: asset, audit, datum, dpia, evidence upload, measure,
obligation, processing activity, rights request, snapshot, task, tia,
trust center (with references/files), and vendor management CLI
commands; MCP tools for deletes, rights requests, trust center, vendor
contacts/services, and compliance external URLs; n8n nodes for
obligation, finding, task, evidence, processing activity, dpia, tia,
rights request, snapshot, audit log, access review, organization
context, trust center, and additional control/measure/vendor operations.

Include MCP e2e test infrastructure (testutil MCP client with API key
auth and JSON-RPC session management) and tests covering all new MCP
tools.

Signed-off-by: Sacha Al Himdani <sacha@getprobo.com>
This commit is contained in:
Sacha Al Himdani
2026-04-21 16:08:37 +02:00
parent f505e23cb0
commit 7be92defcc
220 changed files with 26395 additions and 7 deletions

View File

@@ -18,6 +18,16 @@ import * as updateOp from './update.operation';
import * as deleteOp from './delete.operation';
import * as getOp from './get.operation';
import * as getAllOp from './getAll.operation';
import * as linkMeasureOp from './linkMeasure.operation';
import * as unlinkMeasureOp from './unlinkMeasure.operation';
import * as linkDocumentOp from './linkDocument.operation';
import * as unlinkDocumentOp from './unlinkDocument.operation';
import * as linkAuditOp from './linkAudit.operation';
import * as unlinkAuditOp from './unlinkAudit.operation';
import * as linkObligationOp from './linkObligation.operation';
import * as unlinkObligationOp from './unlinkObligation.operation';
import * as linkSnapshotOp from './linkSnapshot.operation';
import * as unlinkSnapshotOp from './unlinkSnapshot.operation';
export const description: INodeProperties[] = [
{
@@ -55,6 +65,66 @@ export const description: INodeProperties[] = [
description: 'Get many controls',
action: 'Get many controls',
},
{
name: 'Link Audit',
value: 'linkAudit',
description: 'Link an audit to a control',
action: 'Link an audit to a control',
},
{
name: 'Link Document',
value: 'linkDocument',
description: 'Link a document to a control',
action: 'Link a document to a control',
},
{
name: 'Link Measure',
value: 'linkMeasure',
description: 'Link a measure to a control',
action: 'Link a measure to a control',
},
{
name: 'Link Obligation',
value: 'linkObligation',
description: 'Link an obligation to a control',
action: 'Link an obligation to a control',
},
{
name: 'Link Snapshot',
value: 'linkSnapshot',
description: 'Link a snapshot to a control',
action: 'Link a snapshot to a control',
},
{
name: 'Unlink Audit',
value: 'unlinkAudit',
description: 'Unlink an audit from a control',
action: 'Unlink an audit from a control',
},
{
name: 'Unlink Document',
value: 'unlinkDocument',
description: 'Unlink a document from a control',
action: 'Unlink a document from a control',
},
{
name: 'Unlink Measure',
value: 'unlinkMeasure',
description: 'Unlink a measure from a control',
action: 'Unlink a measure from a control',
},
{
name: 'Unlink Obligation',
value: 'unlinkObligation',
description: 'Unlink an obligation from a control',
action: 'Unlink an obligation from a control',
},
{
name: 'Unlink Snapshot',
value: 'unlinkSnapshot',
description: 'Unlink a snapshot from a control',
action: 'Unlink a snapshot from a control',
},
{
name: 'Update',
value: 'update',
@@ -69,6 +139,32 @@ export const description: INodeProperties[] = [
...deleteOp.description,
...getOp.description,
...getAllOp.description,
...linkMeasureOp.description,
...unlinkMeasureOp.description,
...linkDocumentOp.description,
...unlinkDocumentOp.description,
...linkAuditOp.description,
...unlinkAuditOp.description,
...linkObligationOp.description,
...unlinkObligationOp.description,
...linkSnapshotOp.description,
...unlinkSnapshotOp.description,
];
export { createOp as create, updateOp as update, deleteOp as delete, getOp as get, getAllOp as getAll };
export {
createOp as create,
updateOp as update,
deleteOp as delete,
getOp as get,
getAllOp as getAll,
linkMeasureOp as linkMeasure,
unlinkMeasureOp as unlinkMeasure,
linkDocumentOp as linkDocument,
unlinkDocumentOp as unlinkDocument,
linkAuditOp as linkAudit,
unlinkAuditOp as unlinkAudit,
linkObligationOp as linkObligation,
unlinkObligationOp as unlinkObligation,
linkSnapshotOp as linkSnapshot,
unlinkSnapshotOp as unlinkSnapshot,
};