curate_full_text
ChatGPTLike curate_snippets, but returns the full document text (as a tokenizedText array) for each matching curated meeting document, not just the matching fragments. Topic hits reference positions in tokenizedText by index. Responses can be large, so pagination is more aggressive (max 100 documents per page) — follow next_payload to retrieve additional pages. Requires one or more state codes (states_list); optionally filter by topic IDs and a date range (defaults to the last 7 days, max two weeks). Data refreshes once per day, Monday through Friday.
curate_locations
ChatGPTList the geographic locations (municipalities) tracked by Curate, with state, location type, FIPS code, and metadata such as population and coordinates. Filter by state codes and/or FIPS codes. Data refreshes once per day, Monday through Friday.
curate_snippets
ChatGPTSearch curated local-government meeting documents for topic "hits". Returns labeled snippets — the matching text fragment plus the page and the municipality page URL where it was found. IMPORTANT: states_list (one or more state codes) is required — calling without it is not supported. Filter by topic IDs from curate_topics (run that first to discover IDs). Calling without topic_ids returns an unmanageable result set — always filter by topic. Date range defaults to the last 7 days; maximum is 2 weeks. Data refreshes once per day, Monday through Friday. Use curate_full_text instead when you need the entire document text rather than just the matching snippets.
curate_topics
ChatGPTList the topics tracked by Curate, with their IDs, names, and categories. Optionally filter to specific topic IDs. Call this first to discover topic IDs — then pass them to curate_snippets or curate_full_text to avoid unmanageably large result sets.
get_action_types
ChatGPTRetrieve all of your organization's Action types from PolicyNote. Action types categorize actions (e.g., meeting, phone call, email) and are configured on your PolicyNote account.
get_actions_by_id
ChatGPTFetch full details for one or more Actions by their IDs. Returns complete action records including linked entities, attendees, creator, issues, labels, timestamps, and summary. Results are returned under actions[]. Linked bills/regulations are at actions[].linked_entities[] (each with id = fusion ID, and document_type of leg or reg); attendees and created_by are FiscalNote platform users. Use this when you already have action IDs (e.g., from a prior search_actions call).
get_active_sessions
ChatGPTReturns all currently active legislative sessions across all US states. Use this to discover valid session identifiers before filtering search_legislation results by session.
get_cq_document
ChatGPTFetch the full content of a Congressional Quarterly document, including its HTML body (bodyHtml), by its document ID. Pass the cqOid value returned by a CQ search tool (search_cq_transcripts, search_cq_testimonies, search_cq_hearings, search_cq_events, search_cq_news) as documentId. This is the CQ equivalent of pn_get_document_text — CQ documents are retrieved here, not via pn_doc_path.
get_elections_by_id
ChatGPTFetch full election data for one or more elections by their IDs, including a candidates array with vote totals, party, and election outcomes. Accepts up to 50 IDs per request. Use this when you already have election IDs (e.g., from a prior search_elections call).
get_issues
ChatGPTRetrieve all of your organization's Issues and Labels from PolicyNote. Issues and Labels are used to organize and categorize legislation, regulations, and actions within your account. The IDs returned here can be passed as filter parameters to search_legislation, search_regulation, and search_actions.
get_legislation_analytics
ChatGPTFetch proprietary FiscalNote analytics for one or more US bills by their IDs. Accepts up to 200 bill IDs and returns scored insights such as likelihood of passage and other predictive signals. Only available for US legislation.
get_legislation_events
ChatGPTFetch committee hearings and committee markups for one or more US bills by their IDs. Accepts up to 200 bill IDs and an optional date range to filter events. Returns event metadata including event type, date, committee, and associated bills. Only available for US legislation.
get_legislation_votes
ChatGPTFetch all recorded committee and chamber votes for one or more US bills by their IDs. Accepts up to 200 bill IDs and returns vote outcomes, vote counts, and how individual members voted. Only available for US legislation.
get_projects
ChatGPTRetrieve all of your organization's Projects and Tags from PolicyNote. Projects and Tags are used to organize and categorize legislation, regulations, and actions within your account. The IDs returned here can be passed as the projects and tags filter parameters to search_legislation, search_regulation, and search_actions. This is the preferred equivalent of get_issues, which returns the same data using the legacy issues/labels names.
get_related_legislation
ChatGPTFetch bills the legislature itself has declared related to a single US bill (e.g. companion bills, amendments) by its ID. Returns related_legislation[], each with fusion_id (null when FiscalNote has not yet linked the bill to a tracked document), external_id, and relationship_type (amendment, companion, consideration, or other). For AI-computed similar bills, use get_similar_legislation instead. Only available for US legislation.
get_similar_legislation
ChatGPTFetch AI-computed similar bills for a single US bill by its ID, based on content and semantic similarity. Use the optional limit parameter (default 100, maximum 1000) to cap the number of results. Returns similar_legislation[], each with fusion_id, external_id, title, session, score (0 to 1, higher is more similar), and llm_explanation (null when LLM scoring was not run). Results are cached after the first call: the first request for a given bill can take up to 30 seconds while the similarity pipeline runs, and later calls return immediately. For bills the legislature itself declared related, use get_related_legislation instead. Only available for US legislation.
get_state_transcript
ChatGPTFetch the full content of a state legislature transcript by its transcript_id. Use the transcript_id from search_state_transcripts results. Returns structured JSON by default (format=json), with speaker attribution and timing data per segment. Pass format=txt for plain text. In the JSON response, start_time and end_time on each segment are seconds from the start of the media file for that transcript chunk — not the full session, since one event may be split across multiple chunks (each with its own transcript_id). Use event_id to group all chunks belonging to the same event.
lookup_districts
ChatGPTLook up the legislative districts for a US address or ZIP code. Provide a full address (street1, city, state, zip) for precise districts, or a ZIP code alone for a less precise match. If full-address validation fails, the lookup automatically falls back to ZIP-based results (indicated by the "source" field). Returns each district's id, elected body, and government name. Rate limit: 5 requests per day, shared across all VoterVoice tools (lookup_districts and lookup_officials); exceeding it returns an HTTP 429 error.
lookup_officials
ChatGPTLook up the elected officials (federal and state legislators) representing a US address. A full address (street1, city, state, zip) is required — ZIP-only lookups are not supported. Returns each official's name, title, party, contact information, and the body and district they represent. Rate limit: 5 requests per day, shared across all VoterVoice tools (lookup_districts and lookup_officials); exceeding it returns an HTTP 429 error. On trial plans, use this call when you need both officials and districts — it returns both in one response, saving against your daily cap.
pn_get_document_text
ChatGPTFetch the full text content of a legislative or regulatory document. IMPORTANT: Only call this tool if a documents[] array was present in a prior tool response AND the specific document object contains a pn_doc_path field. Do not call this tool if pn_doc_path is absent. Pass the pn_doc_path value exactly as returned — it will start with /fn-document-service/. Note: sources[] entries do not have a pn_doc_path and cannot be fetched with this tool. Returns extracted plain text suitable for summarization or analysis.
search_actions
ChatGPTSearch over all of your organization's Actions from PolicyNote. Actions represent logged activities such as meetings, phone calls, emails, and notes. Supports filtering by text search, date range, issues, labels, linked items, attendees, and creators. Results are returned under actions[] with total for the overall match count and a continuation_token for paging. These are brief records (id, title, summary, type, dates) — linked entities, attendees, creator, projects/tags, and files are only returned by get_actions_by_id. To fetch full details for specific action IDs, use get_actions_by_id instead. Results are paginated: default page size is 50, maximum is 500 (use the limit parameter). The response includes a truncated field — true when results were capped and more pages exist. When truncated is true, either paginate using continuation_token or explicitly tell the user that the results are incomplete before drawing any conclusions.
search_cq_events
ChatGPTSearch Congressional Quarterly transcripts from newsmaker press conferences, speeches, and congressional floor proceedings (e.g., floor statements, debates). Supports full-text, title, date range, and Congress-number filters. Returns paginated results: use skip and limit to page through them, and totalFound for the total match count. Each hit includes a cqOid — pass it to get_cq_document to retrieve the full document text.
search_cq_hearings
ChatGPTSearch Congressional Quarterly transcripts from congressional committee and floor hearings. Supports full-text, title, date range, and Congress-number filters. Returns paginated results: use skip and limit to page through them, and totalFound for the total match count. Each hit includes a cqOid — pass it to get_cq_document to retrieve the full document text.
search_cq_news
ChatGPTSearch Congressional Quarterly news articles covering budget, health, energy, environment, and other policy areas from Congress, K Street, and the White House. Filter by publication type with news_types (cq_budget, capitol_power, cq_magazine, cq_news, cq_health); omit it to search all types. Supports full-text, title, date range, and Congress-number filters. Returns paginated results: use skip and limit to page through them, and totalFound for the total match count. Each hit includes a cqOid — pass it to get_cq_document to retrieve the full document text.
search_cq_testimonies
ChatGPTSearch Congressional Quarterly written and oral testimony documents submitted by witnesses before congressional committees. Supports full-text, title, date range, and Congress-number filters. Returns paginated results: use skip and limit to page through them, and totalFound for the total match count. Each hit includes a cqOid — pass it to get_cq_document to retrieve the full document text.
search_cq_transcripts
ChatGPTSearch Congressional Quarterly transcripts from congressional proceedings and newsmaker events (hearings, floor sessions, press briefings, and other recorded events). Supports full-text, title, date range, and Congress-number filters. Returns paginated results: use skip and limit to page through them, and totalFound for the total match count. Each hit includes a cqOid — pass it to get_cq_document to retrieve the full document text.
search_elections
ChatGPTSearch for US elections by year. The year parameter is required. Returns election metadata including election type, position, state/district, and date. Supports filtering by election type ("general", "special", "presidential"), position, state, district, and date range. Does NOT return candidate data — use get_elections_by_id with the returned election IDs to fetch candidate details. Requires the elections:read permission.
search_legislation
ChatGPTSearch for legislation. Supports keyword queries, locality codes, status, sponsor, date range, and pagination. Issue and label IDs must be retrieved first from the appdata/issues endpoint. IMPORTANT: For non-US localities, locality_code must include BOTH the bare ISO code AND its "PS-" prefixed variant (e.g., ["GB", "PS-GB"] for the UK; ["EU", "PS-EU"] for the EU). US localities (e.g. "US", "US-CA") do not need the prefix. Returns legislation metadata (title, status, sponsors, actions, etc.) but not the organization-specific issues, labels, or notes. To fetch full details for known IDs, use search_legislation_by_id instead.
search_legislation_by_id
ChatGPTFetch full details for one or more legislation records by their IDs. Accepts up to 200 IDs in a single request. Returns the complete legislative record including title, status, sponsors, actions, and related PolicyNote data. Supports BRIEF, DEFAULT, and FULL fieldsets to control response verbosity. Use this when you already have legislation IDs (e.g., from a prior search_legislation call).
search_organizations
ChatGPTSearch for organizations including US legislative committees, federal agencies, trade associations, lobbying firms, and other political entities. Supports filtering by name, type ("committee" or "generic_organization"), locality code, and active status. Locality entitlements are applied automatically based on your account. Results are returned under results[]. Contact info (phones, addresses, websites, emails) is a top-level results[].contacts object. For committees, member legislators are under results[].members[] only when include_members is set; generic organizations return no members — use search_people filtered by role_related_org_id for those. To fetch full details for known organization IDs, use search_organizations_by_id instead. Results are paginated: default page size is 10, maximum is 500 (use the limit parameter). The response includes a truncated field — true when results were capped and more pages exist. When truncated is true, either paginate using continuation_token or explicitly tell the user that the results are incomplete before drawing any conclusions.
search_presidential_transcripts
ChatGPTSearch presidential transcripts from the 119th Congress, ordered by date descending. Results include AI-generated transcripts (available in real time) and proofread transcripts (editorially reviewed, may take a couple of days to appear). Supports a full-text search query via text. Returns paginated results: use skip and limit (max 20) to page through them, and totalFound for the total match count. Each hit includes the full document body (bodyHtml) inline, so no separate document fetch is needed.
search_regulation
ChatGPTSearch for regulatory documents. Supports keyword queries, locality codes, regulation type, issuing agency, date ranges, and pagination. Issue and label IDs must be retrieved first from the appdata/issues endpoint. The type filter accepts: "comments", "dockets", "public_inspection_desk", "reg_notices", "reg_materials", or "other". IMPORTANT: For non-US localities, locality_code must include BOTH the bare ISO code AND its "PS-" prefixed variant (e.g., ["GB", "PS-GB"] for the UK). US localities do not need the prefix. Returns regulation metadata but not the organization-specific issues, labels, or notes. To fetch full details for known IDs, use search_regulation_by_id instead.
search_regulation_by_id
ChatGPTFetch full details for one or more regulatory documents by their IDs. Accepts up to 200 IDs in a single request. Returns the complete regulatory record including title, agency, document type, and related PolicyNote data. Use this when you already have regulation IDs (e.g., from a prior search_regulation call).
search_state_transcript_events
ChatGPTSearch for state legislature events (floor sessions, committee hearings, etc.) that have been transcribed. Filter by one or more state codes (e.g. ["us-ca", "us-ny"]) and an optional date range. To find the transcript(s) for an event, use search_state_transcripts with the same state/date filters and match on the event_date and title — there is no direct event-id lookup. Returns paginated results: use page and size (max 100) to page through them, and total (overall match count) and pages (total page count) to detect when more results exist.
search_state_transcripts
ChatGPTSearch for completed state legislature transcripts by state code (e.g. ["us-tx", "us-fl"]) and optional date range. Each result includes a transcript_id — pass it to get_state_transcript to retrieve the full text content. One legislature event may produce multiple transcript entries (one per video chunk); use event_id to group related transcripts back to their source event. Returns paginated results: use page and size (max 100) to page through them, and total (overall match count) and pages (total page count) to detect when more results exist.
curate_full_text
Claudecurate_locations
Claudecurate_snippets
Claudecurate_topics
Claudeget_action_types
Claudeget_actions_by_id
Claudeget_active_sessions
Claudeget_cq_document
Claudeget_elections_by_id
Claudeget_issues
Claudeget_legislation_analytics
Claudeget_legislation_events
Claudeget_legislation_votes
Claudeget_projects
Claudelookup_districts
Claudelookup_officials
Claudepn_get_document_text
Claudesearch_actions
Claudesearch_cq_events
Claudesearch_cq_hearings
Claudesearch_cq_news
Claudesearch_cq_testimonies
Claudesearch_cq_transcripts
Claudesearch_elections
Claudesearch_legislation
Claudesearch_legislation_by_id
Claudesearch_organizations
Claudesearch_organizations_by_id
Claudesearch_people
Claudesearch_people_by_id
Claudesearch_presidential_transcripts
Claudesearch_regulation
Claudesearch_regulation_by_id
Claude