Content Requests

Content Requests tools include field-level argument descriptions and runnable examples for MCP clients.

Pagination: list tools use page + page_size and return items with pagination (including has_more and next_page). Default page size is 50 (max 200).

Tools Covered

Tool Mutation Backend Routes
content_request_create Yes /content-change-request/send-change-request
content_request_list_my No /content-change-request/my-requests/list
content_request_list_queue No /approval-dashboard/approvals/change-requests/list
content_request_report No /approval-dashboard/approvals/change-requests/list
content_request_list_assignable_users No /content-change-request/assignable-users
content_request_assign Yes /content-change-request/assign-change-request
content_request_respond Yes /content-change-request/respond-change-request
content_request_approve Yes /content-change-request/accept-change-request
content_request_reject Yes /content-change-request/reject-change-request
content_request_revoke Yes /content-change-request/revoke-change-request
content_request_add_comment Yes /content-change-request/add-comment

content_request_create

Create a content change request for a content item.

Backend routes: /content-change-request/send-change-request

Arguments

Field Type Required Description Example
content_id string Yes Primary content ID targeted by this operation. KBD0215806635290000000000
request_scope string (general | pitch) No Content request context. `general` for non-dealroom requests, `pitch` for dealroom-tied requests. general
custom_message string No Optional contextual message shown to assignees/reviewers for content request workflows. Need a shorter healthcare one-pager before Friday call.
selected_assignee_ids array No Preferred user IDs to route a new content request to. ["IGH3196545022710000000000"]
viewer_id string No Optional explicit user context override. If omitted, MCP resolves this from the authenticated token/session. IGH6969811447860000000000
organisation_id string No Optional explicit organisation context override. If omitted, MCP resolves this from the authenticated token/session. PDX7478889578460000000000
idempotency_key string No Client supplied unique key for mutation safety. Re-using the same key returns the cached mutation result instead of executing again. mcp-mutation-2026-05-13-001

Example Request

Create a general content request

{
  "jsonrpc": "2.0",
  "id": "content_request_create-1",
  "method": "tools/call",
  "params": {
    "name": "content_request_create",
    "arguments": {
      "content_id": "KBD0215806635290000000000",
      "request_scope": "general",
      "custom_message": "Need an industry specific version by Friday",
      "selected_assignee_ids": [
        "IGH3196545022710000000000"
      ]
    }
  }
}

Example Success

{
  "success": true,
  "data": {
    "tool": "content_request_create",
    "note": "Payload shape depends on tenant data and backend route output."
  },
  "error": null
}

Example Failure

{
  "success": false,
  "data": null,
  "error": {
    "code": "INVALID_ARGUMENTS",
    "message": "Missing or invalid parameters for content_request_create.",
    "status": 400,
    "retryable": false
  }
}

content_request_list_my

List current user content change requests.

Backend routes: /content-change-request/my-requests/list

Arguments

Field Type Required Description Example
request_scope string (general | pitch) No Content request context. `general` for non-dealroom requests, `pitch` for dealroom-tied requests. general
page number No Pagination page number (1-based). Defaults to 1. Defaults to 1. 1
page_size number No Number of rows per page. Defaults to 50, maximum 200. Defaults to 50, maximum 200. 50
limit number No Legacy maximum record cap used by specific endpoints. Prefer page + page_size for list navigation. 200
viewer_id string No Optional explicit user context override. If omitted, MCP resolves this from the authenticated token/session. IGH6969811447860000000000
organisation_id string No Optional explicit organisation context override. If omitted, MCP resolves this from the authenticated token/session. PDX7478889578460000000000

Example Request

List my own content requests (page 1)

{
  "jsonrpc": "2.0",
  "id": "content_request_list_my-1",
  "method": "tools/call",
  "params": {
    "name": "content_request_list_my",
    "arguments": {
      "request_scope": "general",
      "page": 1,
      "page_size": 50
    }
  }
}

Example Success

{
  "success": true,
  "data": {
    "tool": "content_request_list_my",
    "note": "Payload shape depends on tenant data and backend route output."
  },
  "error": null
}

Example Failure

{
  "success": false,
  "data": null,
  "error": {
    "code": "INVALID_ARGUMENTS",
    "message": "Missing or invalid parameters for content_request_list_my.",
    "status": 400,
    "retryable": false
  }
}

content_request_list_queue

List content change requests for approval/assignment workflow.

Backend routes: /approval-dashboard/approvals/change-requests/list

Arguments

Field Type Required Description Example
search string No Free-text search term for list endpoints. banking
page number No Pagination page number (1-based). Defaults to 1. 1
page_size number No Number of rows per page. Defaults to 50, maximum 200. 50
sort_column string No Server-side sortable column key. updated_at
sort_order string (asc | desc | ASC | DESC) No Sort direction. DESC
filters object No Structured filter object passed through to backend list/search endpoints. {"source":["PDF"],"tags":["TAG1775..."]}
status array No Status filter list. ["Pending Approval","Picked Up"]
requested_by array No Filter by requester user IDs. ["IGH6969811447860000000000"]
picked_up_by array No Filter by owner/assignee user IDs. ["IGH3196545022710000000000"]
viewer_id string No Optional explicit user context override. If omitted, MCP resolves this from the authenticated token/session. IGH6969811447860000000000
organisation_id string No Optional explicit organisation context override. If omitted, MCP resolves this from the authenticated token/session. PDX7478889578460000000000

Example Request

List queue with status filter

{
  "jsonrpc": "2.0",
  "id": "content_request_list_queue-1",
  "method": "tools/call",
  "params": {
    "name": "content_request_list_queue",
    "arguments": {
      "search": "security",
      "page": 1,
      "page_size": 50,
      "status": [
        "Pending Approval"
      ],
      "sort_order": "DESC"
    }
  }
}

Example Success

{
  "success": true,
  "data": {
    "tool": "content_request_list_queue",
    "note": "Payload shape depends on tenant data and backend route output."
  },
  "error": null
}

Example Failure

{
  "success": false,
  "data": null,
  "error": {
    "code": "INVALID_ARGUMENTS",
    "message": "Missing or invalid parameters for content_request_list_queue.",
    "status": 400,
    "retryable": false
  }
}

content_request_report

Summarize content request queue with status and owner distribution.

Backend routes: /approval-dashboard/approvals/change-requests/list

Arguments

Field Type Required Description Example
search string No Free-text search term for list endpoints. banking
sort_column string No Server-side sortable column key. updated_at
sort_order string (asc | desc | ASC | DESC) No Sort direction. DESC
filters object No Structured filter object passed through to backend list/search endpoints. {"source":["PDF"],"tags":["TAG1775..."]}
status array No Status filter list. ["Pending Approval","Picked Up"]
requested_by array No Filter by requester user IDs. ["IGH6969811447860000000000"]
picked_up_by array No Filter by owner/assignee user IDs. ["IGH3196545022710000000000"]
include_items boolean No When true, include full queue items in report output in addition to summary. false
viewer_id string No Optional explicit user context override. If omitted, MCP resolves this from the authenticated token/session. IGH6969811447860000000000
organisation_id string No Optional explicit organisation context override. If omitted, MCP resolves this from the authenticated token/session. PDX7478889578460000000000

Example Request

Get queue summary report

{
  "jsonrpc": "2.0",
  "id": "content_request_report-1",
  "method": "tools/call",
  "params": {
    "name": "content_request_report",
    "arguments": {
      "status": [
        "Pending Approval",
        "Picked Up"
      ],
      "include_items": false
    }
  }
}

Example Success

{
  "success": true,
  "data": {
    "tool": "content_request_report",
    "note": "Payload shape depends on tenant data and backend route output."
  },
  "error": null
}

Example Failure

{
  "success": false,
  "data": null,
  "error": {
    "code": "INVALID_ARGUMENTS",
    "message": "Missing or invalid parameters for content_request_report.",
    "status": 400,
    "retryable": false
  }
}

content_request_list_assignable_users

List users eligible to be assigned for content requests.

Backend routes: /content-change-request/assignable-users

Arguments

Field Type Required Description Example
page number No Pagination page number (1-based). Defaults to 1. Defaults to 1. 1
page_size number No Number of rows per page. Defaults to 50, maximum 200. Defaults to 50, maximum 200. 50
viewer_id string No Optional explicit user context override. If omitted, MCP resolves this from the authenticated token/session. IGH6969811447860000000000
organisation_id string No Optional explicit organisation context override. If omitted, MCP resolves this from the authenticated token/session. PDX7478889578460000000000

Example Request

List eligible assignees (paged)

{
  "jsonrpc": "2.0",
  "id": "content_request_list_assignable_users-1",
  "method": "tools/call",
  "params": {
    "name": "content_request_list_assignable_users",
    "arguments": {
      "page": 1,
      "page_size": 50
    }
  }
}

Example Success

{
  "success": true,
  "data": {
    "tool": "content_request_list_assignable_users",
    "note": "Payload shape depends on tenant data and backend route output."
  },
  "error": null
}

Example Failure

{
  "success": false,
  "data": null,
  "error": {
    "code": "INVALID_ARGUMENTS",
    "message": "Missing or invalid parameters for content_request_list_assignable_users.",
    "status": 400,
    "retryable": false
  }
}

content_request_assign

Assign a content request to a user from the configured assignee routing.

Backend routes: /content-change-request/assign-change-request

Arguments

Field Type Required Description Example
content_id string Yes Original requested content ID that anchors the request thread to assign. KBD0215806635290000000000
assignee_user_id string Yes Target user ID that should own the content request. IGH3196545022710000000000
custom_message string No Optional contextual message shown to assignees/reviewers for content request workflows. Need a shorter healthcare one-pager before Friday call.
viewer_id string No Optional explicit user context override. If omitted, MCP resolves this from the authenticated token/session. IGH6969811447860000000000
organisation_id string No Optional explicit organisation context override. If omitted, MCP resolves this from the authenticated token/session. PDX7478889578460000000000
idempotency_key string No Client supplied unique key for mutation safety. Re-using the same key returns the cached mutation result instead of executing again. mcp-mutation-2026-05-13-001

Example Request

Assign content request to owner

{
  "jsonrpc": "2.0",
  "id": "content_request_assign-1",
  "method": "tools/call",
  "params": {
    "name": "content_request_assign",
    "arguments": {
      "content_id": "KBD0215806635290000000000",
      "assignee_user_id": "IGH3196545022710000000000",
      "custom_message": "Please pick this up for healthcare buyer"
    }
  }
}

Example Success

{
  "success": true,
  "data": {
    "tool": "content_request_assign",
    "note": "Payload shape depends on tenant data and backend route output."
  },
  "error": null
}

Example Failure

{
  "success": false,
  "data": null,
  "error": {
    "code": "INVALID_ARGUMENTS",
    "message": "Missing or invalid parameters for content_request_assign.",
    "status": 400,
    "retryable": false
  }
}

content_request_respond

Update content request assignment progress (Picked Up or Pending Approval).

Backend routes: /content-change-request/respond-change-request

Arguments

Field Type Required Description Example
content_id string Yes Original requested content ID whose request state should be updated. KBD0215806635290000000000
action string (Picked Up | Pending Approval) Yes Workflow transition to apply on request (`Picked Up` or `Pending Approval`). Picked Up
proposed_content_id string No Proposed replacement/new content ID supplied while responding to request. KBD5567454989590000000000
custom_message string No Optional contextual message shown to assignees/reviewers for content request workflows. Need a shorter healthcare one-pager before Friday call.
viewer_id string No Optional explicit user context override. If omitted, MCP resolves this from the authenticated token/session. IGH6969811447860000000000
organisation_id string No Optional explicit organisation context override. If omitted, MCP resolves this from the authenticated token/session. PDX7478889578460000000000
idempotency_key string No Client supplied unique key for mutation safety. Re-using the same key returns the cached mutation result instead of executing again. mcp-mutation-2026-05-13-001

Example Request

Mark request as picked up

{
  "jsonrpc": "2.0",
  "id": "content_request_respond-1",
  "method": "tools/call",
  "params": {
    "name": "content_request_respond",
    "arguments": {
      "content_id": "KBD0215806635290000000000",
      "action": "Picked Up",
      "custom_message": "Working on first draft"
    }
  }
}

Example Success

{
  "success": true,
  "data": {
    "tool": "content_request_respond",
    "note": "Payload shape depends on tenant data and backend route output."
  },
  "error": null
}

Example Failure

{
  "success": false,
  "data": null,
  "error": {
    "code": "INVALID_ARGUMENTS",
    "message": "Missing or invalid parameters for content_request_respond.",
    "status": 400,
    "retryable": false
  }
}

content_request_approve

Approve and accept a proposed content for a content request.

Backend routes: /content-change-request/accept-change-request

Arguments

Field Type Required Description Example
content_id string Yes Original requested content ID whose proposed content is being accepted. KBD0215806635290000000000
accepted_proposed_id string Yes Chosen proposed content ID approved for the request. KBD5567454989590000000000
custom_message string No Optional contextual message shown to assignees/reviewers for content request workflows. Need a shorter healthcare one-pager before Friday call.
viewer_id string No Optional explicit user context override. If omitted, MCP resolves this from the authenticated token/session. IGH6969811447860000000000
organisation_id string No Optional explicit organisation context override. If omitted, MCP resolves this from the authenticated token/session. PDX7478889578460000000000
idempotency_key string No Client supplied unique key for mutation safety. Re-using the same key returns the cached mutation result instead of executing again. mcp-mutation-2026-05-13-001

Example Request

Approve proposed content

{
  "jsonrpc": "2.0",
  "id": "content_request_approve-1",
  "method": "tools/call",
  "params": {
    "name": "content_request_approve",
    "arguments": {
      "content_id": "KBD0215806635290000000000",
      "accepted_proposed_id": "KBD5567454989590000000000",
      "custom_message": "Approved. Please share with AE."
    }
  }
}

Example Success

{
  "success": true,
  "data": {
    "tool": "content_request_approve",
    "note": "Payload shape depends on tenant data and backend route output."
  },
  "error": null
}

Example Failure

{
  "success": false,
  "data": null,
  "error": {
    "code": "INVALID_ARGUMENTS",
    "message": "Missing or invalid parameters for content_request_approve.",
    "status": 400,
    "retryable": false
  }
}

content_request_reject

Reject an active content request.

Backend routes: /content-change-request/reject-change-request

Arguments

Field Type Required Description Example
content_id string Yes Original requested content ID whose active request should be rejected. KBD0215806635290000000000
custom_message string No Optional contextual message shown to assignees/reviewers for content request workflows. Need a shorter healthcare one-pager before Friday call.
viewer_id string No Optional explicit user context override. If omitted, MCP resolves this from the authenticated token/session. IGH6969811447860000000000
organisation_id string No Optional explicit organisation context override. If omitted, MCP resolves this from the authenticated token/session. PDX7478889578460000000000
idempotency_key string No Client supplied unique key for mutation safety. Re-using the same key returns the cached mutation result instead of executing again. mcp-mutation-2026-05-13-001

Example Request

Reject request

{
  "jsonrpc": "2.0",
  "id": "content_request_reject-1",
  "method": "tools/call",
  "params": {
    "name": "content_request_reject",
    "arguments": {
      "content_id": "KBD0215806635290000000000",
      "custom_message": "Cannot proceed without legal input"
    }
  }
}

Example Success

{
  "success": true,
  "data": {
    "tool": "content_request_reject",
    "note": "Payload shape depends on tenant data and backend route output."
  },
  "error": null
}

Example Failure

{
  "success": false,
  "data": null,
  "error": {
    "code": "INVALID_ARGUMENTS",
    "message": "Missing or invalid parameters for content_request_reject.",
    "status": 400,
    "retryable": false
  }
}

content_request_revoke

Revoke your own active content request.

Backend routes: /content-change-request/revoke-change-request

Arguments

Field Type Required Description Example
content_id string Yes Original requested content ID whose request should be revoked by requester. KBD0215806635290000000000
custom_message string No Optional contextual message shown to assignees/reviewers for content request workflows. Need a shorter healthcare one-pager before Friday call.
viewer_id string No Optional explicit user context override. If omitted, MCP resolves this from the authenticated token/session. IGH6969811447860000000000
organisation_id string No Optional explicit organisation context override. If omitted, MCP resolves this from the authenticated token/session. PDX7478889578460000000000
idempotency_key string No Client supplied unique key for mutation safety. Re-using the same key returns the cached mutation result instead of executing again. mcp-mutation-2026-05-13-001

Example Request

Revoke own request

{
  "jsonrpc": "2.0",
  "id": "content_request_revoke-1",
  "method": "tools/call",
  "params": {
    "name": "content_request_revoke",
    "arguments": {
      "content_id": "KBD0215806635290000000000",
      "custom_message": "No longer needed"
    }
  }
}

Example Success

{
  "success": true,
  "data": {
    "tool": "content_request_revoke",
    "note": "Payload shape depends on tenant data and backend route output."
  },
  "error": null
}

Example Failure

{
  "success": false,
  "data": null,
  "error": {
    "code": "INVALID_ARGUMENTS",
    "message": "Missing or invalid parameters for content_request_revoke.",
    "status": 400,
    "retryable": false
  }
}

content_request_add_comment

Add a comment to an active content request.

Backend routes: /content-change-request/add-comment

Arguments

Field Type Required Description Example
content_id string Yes Original requested content ID whose request thread should receive this comment. KBD0215806635290000000000
message string Yes Comment body text posted to content request thread. Uploaded first draft, please verify legal note on slide 3.
mentions array No Mention metadata payload used to notify specific users in comment flow. [{"id":"IGH3196545022710000000000","type":"user"}]
viewer_id string No Optional explicit user context override. If omitted, MCP resolves this from the authenticated token/session. IGH6969811447860000000000
organisation_id string No Optional explicit organisation context override. If omitted, MCP resolves this from the authenticated token/session. PDX7478889578460000000000
idempotency_key string No Client supplied unique key for mutation safety. Re-using the same key returns the cached mutation result instead of executing again. mcp-mutation-2026-05-13-001

Example Request

Post request thread comment

{
  "jsonrpc": "2.0",
  "id": "content_request_add_comment-1",
  "method": "tools/call",
  "params": {
    "name": "content_request_add_comment",
    "arguments": {
      "content_id": "KBD0215806635290000000000",
      "message": "Added context from buyer procurement team.",
      "mentions": [
        {
          "id": "IGH3196545022710000000000",
          "type": "user"
        }
      ]
    }
  }
}

Example Success

{
  "success": true,
  "data": {
    "tool": "content_request_add_comment",
    "note": "Payload shape depends on tenant data and backend route output."
  },
  "error": null
}

Example Failure

{
  "success": false,
  "data": null,
  "error": {
    "code": "INVALID_ARGUMENTS",
    "message": "Missing or invalid parameters for content_request_add_comment.",
    "status": 400,
    "retryable": false
  }
}