FOIA Gras MCP Server
Connect your AI assistant to the FOIA Gras public records database. Search documents, explore meeting minutes, and dig into investigative reporting — right from your conversation.
What is MCP?
The Model Context Protocol (MCP) is an open standard that lets AI assistants connect to external data sources and tools. With the FOIA Gras MCP server, your AI can search thousands of public records documents, meeting minutes, and investigative articles on your behalf.
Instead of copying and pasting from the website, you can ask: “What contracts did the school board approve in 2024?” and the AI will search the actual documents for you.
Connect your AI assistant
Choose your AI client for setup instructions.
Open ChatGPT and go to settings
Enter the MCP server URL
Paste this URL into the server field:
https://ig.foiagras.com/api/public/mcpLeave the Client ID and Client Secret fields blank — ChatGPT registers itself automatically.
Sign in to FOIA Gras
Start asking questions
Available Tools
These tools are available to the AI when connected. They mirror the same capabilities used by the Inspector General chat.
list_entitiesList all available organizations with indexed public records.
search_documentsFull-text search within an organization's documents. Returns excerpts with highlighted matches.
entity_slugrequiredOrganization identifier (from list_entities)queryrequiredSearch query. Supports "quoted phrases", +required, -excluded, after:YYYY-MM-DD, before:YYYY-MM-DDdocument_typeoptionalFilter by type: minutes, agenda, contract, budget, report, resolution, ordinancelimitoptionalMax results (default: 10, max: 50)search_documents_by_nameFind documents by title or filename. Use when looking for a specific document by name.
entity_slugrequiredOrganization identifiername_queryrequiredDocument name or title to search forlimitoptionalMax results (default: 10, max: 50)get_document_detailsGet the full text of a specific document by ID.
document_idrequiredDocument ID from search resultsget_raw_textRead a long document in chunks by specifying an offset.
document_idrequiredDocument IDoffsetoptionalCharacter offset to start from (default: 0)limitoptionalMax characters to return (default: 50,000, max: 100,000)search_document_textSearch within a specific document for a term and return matches with surrounding context.
document_idrequiredDocument IDsearch_termrequiredTerm to search for (case-insensitive)context_chars_beforeoptionalCharacters of context before each match (default: 200)context_chars_afteroptionalCharacters of context after each match (default: 200)max_matchesoptionalMax matches to return (default: 10, max: 50)list_meetingsList meetings for an organization, sorted by most recent first.
entity_slugrequiredOrganization identifierafteroptionalOnly meetings on or after this date (YYYY-MM-DD)beforeoptionalOnly meetings on or before this date (YYYY-MM-DD)meeting_typeoptionalFilter by type (e.g. Regular Board, Committee, Special)limitoptionalMax meetings (default: 20, max: 100)get_meeting_detailsGet full details for a meeting: AI summary, key topics, oversight questions, and complete agenda.
meeting_idrequiredMeeting ID from list_meetings resultssearch_newslettersSearch published FOIA Gras newsletter articles for investigative reporting on a topic.
queryrequiredSearch querylimitoptionalMax results (default: 5, max: 20)Example Queries
Need an account to get started?
Sign in or create an account