# Function handleGetMeetingPlenarySessionDocuments

- handleGetMeetingPlenarySessionDocuments(args: unknown): Promise<ToolResult>

  Handle the `get_meeting_plenary_session_documents` MCP tool request.

  Retrieves all plenary session documents associated with a specific EP plenary sitting by calling `GET /meetings/{sitting-id}/plenary-session-documents` via epClient. The raw API response is normalised into a standardised ToolResult using buildToolResponse.

  #### Parameters

  - args: unknown

    Raw tool arguments provided by the MCP client. Must conform to GetMeetingPlenarySessionDocumentsSchema:

    - `sittingId` (string, required): EP plenary sitting identifier.
    - `limit` (number, optional): Maximum results to return (1–100, default 20).
    - `offset` (number, optional): Pagination offset (default 0).

  #### Returns Promise<ToolResult>

  A promise that resolves to an MCP ToolResult containing the plenary session documents for the requested sitting.

  #### Throws

  If `args` fails GetMeetingPlenarySessionDocumentsSchema validation (e.g. missing required `sittingId` or out-of-range `limit`).

  #### Throws

  If `sittingId` contains path-traversal characters (`.`, `\`, `?`, `#`) — the underlying client throws an `APIError(400)`.

  #### Throws

  If the European Parliament API is unreachable or returns an error response.

  #### Example

      const result = await handleGetMeetingPlenarySessionDocuments({
        sittingId: 'PV-9-2024-04-22',
        limit: 20,
        offset: 0
      });
      // Returns plenary session documents for sitting PV-9-2024-04-22

  #### Security

  Input is validated with Zod before any API call. `sittingId` is checked against path-traversal characters before URL construction. Personal data in responses is minimised per GDPR Article 5(1)(c). All requests are rate-limited and audit-logged per ISMS Policy AU-002.

  #### Since

  1.0.0

  #### See

  - getMeetingPlenarySessionDocumentsToolMetadata for MCP schema registration
  - handleGetMeetingPlenarySessionDocumentItems for individual agenda-item documents
  - handleGetMeetingForeseenActivities for planned meeting activities
  - Defined in tools/getMeetingPlenarySessionDocuments.ts:70