Georgia Prisoners' Speak Public Data
Read-only public data on Georgia's prisons: population, facilities, deaths, contraband, statutes.
¿Debería usar esto?
Calidad y seguridad
Hallazgos (4)
- HIGHen get_system_statistics
- HIGH
- LOWen get_parole_statistics
- LOWen get_ocga_section
Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.
Costo de contexto
Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.
Instalar
Instalación con un clic
Agrega esto a tu archivo `claude_desktop_config.json`:
{
"mcpServers": {
"gps-public-data": {
"url": "https://data.gps.press/mcp"
}
}
}Puntos de conexión remotos
https://data.gps.press/mcpstreamable-httpQué puede hacer
Inventario de herramientas
Herramientas (18)
🟢get_population_snapshot
Latest GDC population snapshot (the weekly 'Friday report'): `total_in_gdc_custody` (every GDC bed type, including probation detention centers and RSAT), the jail backlog, and the facility-type components. The total is the ONLY population figure; the components are parts of it, not alternative totals.
Esquema de entrada
{
"type": "object",
"properties": {},
"title": "get_population_snapshotArguments"
}🟢get_system_statistics
Headline statistics for the Georgia prison system: population, mortality, demographics, facility counts, releases and health measures, with the update date and data source GPS assembled them from.
Esquema de entrada
{
"type": "object",
"properties": {},
"title": "get_system_statisticsArguments"
}🟢list_facilities(facility_type, county, active_only, name_contains)
List Georgia prison facilities with location, operator, security level, capacity, population, warden and latest food-safety score. Optional filters are applied to the public list after it is fetched: facility_type (e.g. 'State Prison', 'Transitional Center', 'County Prison'), county, name_contains, and active_only.
Esquema de entrada
{
"type": "object",
"properties": {
"facility_type": {
"default": "",
"title": "Facility Type",
"type": "string"
},
"county": {
"default": "",
"title": "County",
"type": "string"
},
"active_only": {
"default": true,
"title": "Active Only",
"type": "boolean"
},
"name_contains": {
"default": "",
"title": "Name Contains",
"type": "string"
}
},
"title": "list_facilitiesArguments"
}🟢get_facility_staff_roster(slug, title, limit)
Staff headcount and list for one GDC facility, from a GDC-produced roster. Answers "how many staff work at X", "how many officers work there", "list the staff at X". `slug` is the facility slug, e.g. 'dooly-state-prison' (use list_facilities to find it). `title` optionally filters by job title. GDC abbreviates heavily: correctional officers appear as "Correctional Ofc", clerical staff as "Admin Support" or "Admin Assistant". Try both the plain word and the abbreviation. ALWAYS report the `observed` date alongside any figure from this tool. A roster is a single-day observation, not a statement about who works there today. A zero for a role is a finding about the roster rather than missing data: the roster holds no nursing, physician or dental titles anywhere in GDC, which is consistent with medical staffing being contracted rather than directly employed. Do not assert that reason as established fact.
Esquema de entrada
{
"type": "object",
"properties": {
"slug": {
"title": "Slug",
"type": "string"
},
"title": {
"default": "",
"title": "Title",
"type": "string"
},
"limit": {
"default": 500,
"title": "Limit",
"type": "integer"
}
},
"required": [
"slug"
],
"title": "get_facility_staff_rosterArguments"
}🟢get_facility(slug)
One facility's full public record plus its most recent state health inspection, if GPS has one. `slug` is the facility's gps.press slug, e.g. 'macon-state-prison'. Use list_facilities to find it.
Esquema de entrada
{
"type": "object",
"properties": {
"slug": {
"title": "Slug",
"type": "string"
}
},
"required": [
"slug"
],
"title": "get_facilityArguments"
}🟢get_parole_statistics
Georgia parole decisions by year — the series GPS assembled from the State Board of Pardons and Paroles' own annual reports, with the metric definitions and the instruments note that says how they were built.
Esquema de entrada
{
"type": "object",
"properties": {},
"title": "get_parole_statisticsArguments"
}🟢get_ocga_section(section)
Full text of a section of the Official Code of Georgia Annotated from GPS's public mirror. `section` is the bare citation without the 'O.C.G.A. §' prefix, e.g. '9-14-42', '42-5-2', '17-9-4'.
Esquema de entrada
{
"type": "object",
"properties": {
"section": {
"title": "Section",
"type": "string"
}
},
"required": [
"section"
],
"title": "get_ocga_sectionArguments"
}🟢get_mortality_data(section, year, facility_contains)
Deaths in GDC custody since 2020 — yearly and monthly counts, cause-of- death breakdown, deaths by facility, facility type, security level and age. With no arguments this returns the whole published document plus a list of its sections. `section` returns one section by name (e.g. 'YEARLY STATISTICS', 'DEATHS BY FACILITY'); `year` filters the yearly and monthly lines to that year; `facility_contains` filters the by-facility ranking AND returns that facility's cause-of-death breakdown. Filters are matched against the published lines, which is why the matching lines are returned verbatim rather than re-tabulated.
Esquema de entrada
{
"type": "object",
"properties": {
"section": {
"default": "",
"title": "Section",
"type": "string"
},
"year": {
"default": "",
"title": "Year",
"type": "string"
},
"facility_contains": {
"default": "",
"title": "Facility Contains",
"type": "string"
}
},
"title": "get_mortality_dataArguments"
}🟢get_settlements_data
What Georgia has paid to settle prison death and injury claims — the 'What Georgia Pays' analysis of state settlement records, returned as the published markdown.
Esquema de entrada
{
"type": "object",
"properties": {},
"title": "get_settlements_dataArguments"
}🟢get_contraband_incidents(facility, year, actor_category, item_category, arrest_made, ...)
Incidents from GDC's own published contraband arrest reports (2010-present, ~1,600 incidents, including reports that survive only in the Internet Archive; page: gps.press/contraband-data/): one row per incident with GDC's wording verbatim, the people as GDC categorised them (staff / officer / contract staff / visitor / civilian), the items, whether an arrest was reported, and the GDC source URL. Filters: facility slug (e.g. dooly-state-prison), year, actor_category (staff | visitor | civilian | officer | gdc_staff | contract_staff), item_category (cellphone, tobacco, marijuana, methamphetamine, ...), arrest_made (yes|no|unstated), q (text match). Structured rows name staff, officers and contract staff as GDC printed them; other people appear by category and role only. The narrative is GDC's own text.
Esquema de entrada
{
"type": "object",
"properties": {
"facility": {
"default": "",
"title": "Facility",
"type": "string"
},
"year": {
"default": 0,
"title": "Year",
"type": "integer"
},
"actor_category": {
"default": "",
"title": "Actor Category",
"type": "string"
},
"item_category": {
"default": "",
"title": "Item Category",
"type": "string"
},
"arrest_made": {
"default": "",
"title": "Arrest Made",
"type": "string"
},
"q": {
"default": "",
"title": "Q",
"type": "string"
},
"page": {
"default": 1,
"title": "Page",
"type": "integer"
},
"per_page": {
"default": 25,
"title": "Per Page",
"type": "integer"
}
},
"title": "get_contraband_incidentsArguments"
}🟢get_contraband_summary(by, facility, year)
Summaries of GDC's published contraband arrest reports. `by` = year | facility | actor-category | role | item-category | stats. Optional facility slug / year filters (not for stats). Counts arrests as GDC reported them; GDC's own running tally is not used because it is not a consistent series across copies of the same report.
Esquema de entrada
{
"type": "object",
"properties": {
"by": {
"default": "year",
"title": "By",
"type": "string"
},
"facility": {
"default": "",
"title": "Facility",
"type": "string"
},
"year": {
"default": 0,
"title": "Year",
"type": "integer"
}
},
"title": "get_contraband_summaryArguments"
}🟢search_quotes(search, category, attribution_type, page, per_page)
Search GPS's published quote collection — statements from incarcerated people, families, officials and staff that GPS has already published. `attribution_type` is 'named' or 'anonymous'. `category` is one of the published categories (call with no arguments and read the results, or see gps.press). Paginated: page starts at 1, per_page caps at 100.
Esquema de entrada
{
"type": "object",
"properties": {
"search": {
"default": "",
"title": "Search",
"type": "string"
},
"category": {
"default": "",
"title": "Category",
"type": "string"
},
"attribution_type": {
"default": "",
"title": "Attribution Type",
"type": "string"
},
"page": {
"default": 1,
"title": "Page",
"type": "integer"
},
"per_page": {
"default": 20,
"title": "Per Page",
"type": "integer"
}
},
"title": "search_quotesArguments"
}🟢get_length_of_stay(offense, year, summary_only)
How long people actually serve in Georgia, by offense and year: average sentence, years served, percentage of sentence served, share released on parole, and the lifer figures — plus the trend summary. `offense` and `year` are passed to the public endpoint. `summary_only` returns just the summary block.
Esquema de entrada
{
"type": "object",
"properties": {
"offense": {
"default": "",
"title": "Offense",
"type": "string"
},
"year": {
"default": "",
"title": "Year",
"type": "string"
},
"summary_only": {
"default": false,
"title": "Summary Only",
"type": "boolean"
}
},
"title": "get_length_of_stayArguments"
}🟢get_drug_admissions
Admissions to Georgia prisons on drug offenses for the latest published report year, broken down by sex, age band and related measures.
Esquema de entrada
{
"type": "object",
"properties": {},
"title": "get_drug_admissionsArguments"
}🟢search_site(query, limit)
Search gps.press — articles, data pages, research library topics and facility pages — and get back ranked titles, URLs and summaries. This reads the public /find/ results page. GPS publishes no JSON search API, so results are parsed out of the rendered page; treat the ranking as the site's own and follow each result's URL before citing it.
Esquema de entrada
{
"type": "object",
"properties": {
"query": {
"title": "Query",
"type": "string"
},
"limit": {
"default": 10,
"title": "Limit",
"type": "integer"
}
},
"required": [
"query"
],
"title": "search_siteArguments"
}🟢get_gps_guide
GPS's orientation file for AI clients (llms.txt) — READ THIS FIRST. Carries the things the data tools cannot: which figure to lead with when two are defensible, how to label budget figures, the exact date of the DOJ findings report, and the claims GPS has publicly corrected and will not repeat. Roughly 2,000 words. The datasets give you accurate numbers. This is what keeps the sentence around the number accurate too.
Esquema de entrada
{
"type": "object",
"properties": {},
"title": "get_gps_guideArguments"
}🟢get_page(path, offset, limit)
Read any gps.press page as clean Markdown. Every page on the site has a Markdown twin at the same URL with `.md` appended; this fetches it. Accepts a full URL, a path, or a bare slug — '/vision2027/', 'vision2027', and the full https URL all work, with or without '.md'. Covers articles, data pages, campaign pages and the intelligence briefings (intelligence/facility/{slug}, intelligence/issue/{slug}). Long pages are truncated; use `offset` and `limit` to page through one. Pair with search_site() to find a page, then read it here rather than guessing its contents.
Esquema de entrada
{
"type": "object",
"properties": {
"path": {
"title": "Path",
"type": "string"
},
"offset": {
"default": 0,
"title": "Offset",
"type": "integer"
},
"limit": {
"default": 0,
"title": "Limit",
"type": "integer"
}
},
"required": [
"path"
],
"title": "get_pageArguments"
}🟢list_intelligence(kind, contains)
List GPS intelligence briefings — per-facility and per-issue analyses. `kind` filters to 'facility' or 'issue'; `contains` filters on the slug. Read any of them in full with get_page(), e.g. get_page('intelligence/facility/dooly-state-prison'). Facility briefings are enumerated from the public index. Issue briefings have no published index, so a maintained list of known slugs is returned and may be incomplete — `issues_note` says so in the payload.
Esquema de entrada
{
"type": "object",
"properties": {
"kind": {
"default": "",
"title": "Kind",
"type": "string"
},
"contains": {
"default": "",
"title": "Contains",
"type": "string"
}
},
"title": "list_intelligenceArguments"
}Comunidad
Evidencia