Get Member Debates
parliament_member_debatesSearch a specific MP's Hansard contributions for a verbatim phrase. Enter a member ID and optional topic to retrieve only speeches containing that exact wording.
Instructions
USE THIS TOOL WHEN you have a member_id and want contributions where THAT member used a specific topic phrase verbatim (text-body search).
CALL parliament_find_member(name) FIRST to obtain the integer member_id.
This is a name-based text-body search — it matches contributions whose TEXT contains the topic phrase. A member who spoke in a debate but didn't use your phrase verbatim is filtered out. For verbatim retrieval of every contribution by a member in a known debate (regardless of vocabulary), use parliament_get_debate_contributions(debate_ext_id, member_id=...) instead.
Each contribution's text field is capped at 3000 characters.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| member_id | Yes | Parliament Members API integer ID. Obtain from parliament_find_member. | |
| topic | No | Optional phrase to find in THIS member's contribution text bodies. Hansard searches the words the member actually said, NOT the topic or title of the debate. Pass tokens this member would have spoken — distinctive arguments ('disproportionate sanction'), statutory references ('section 21'), or motion numbers ('Motion C1') — not the bill's name (members rarely say e.g. 'Renters\' Rights Bill' verbatim in their speeches). If you want 'every contribution this member made in a specific debate' regardless of words used, find the debate_ext_id then use parliament_get_debate_contributions(debate_ext_id, member_id=...). | |
| offset | No | Number of contributions to skip before this page. Default 0. Re-call with offset=offset+returned while has_more is true. | |
| limit | No | Maximum contributions to return. Default 20. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| member_id | Yes | Parliament Members API member ID | |
| topic | No | Topic phrase filter applied, if any | |
| offset | No | Skip applied to this page | |
| limit | No | Page size requested | |
| total | Yes | Number of contributions returned in this call | |
| has_more | No | True if a full page was returned (more may exist) | |
| contributions | No | Hansard contributions for the member. Each `text` field is capped at 3000 characters. |