Skip to main content
Glama

Police Shootings Summary

police_shootings_summary
Read-onlyIdempotent

Aggregate counts of U.S. fatal police shootings since 2015, from The Washington Post Fatal Force database. Group by state, year, race, armed_with, threat_type, gender, mental_illness, or body_camera; optionally scope to one state and/or one year first. Returns only counts — never names (use police_shootings for individual incidents). CC BY-NC-SA 4.0, attributed to The Washington Post.

Input Schema

NameRequiredDescriptionDefault
yearNoCalendar year to scope to (2015-present). Optional.
stateNoTwo-letter USPS state code to scope to (e.g. "CA"). Optional.
group_byNoHow to bucket the counts. Default "year".

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly, idempotent, non-destructive and open-world behavior, so the safety profile is covered. The description adds valuable traits beyond that: results are aggregate counts only (never names), the data source and vintage, and the license. It omits any pagination or volume expectations, but adds real context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loads what the tool produces, then grouping options, then the sibling routing. The trailing CC BY-NC-SA attribution sentence is provenance rather than invocation guidance but is brief and defensible.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple 3-param, no-required-arg aggregation tool with no output schema, the description conveys the source, scope, grouping, return shape (counts only), and the alternative tool. Little an agent needs is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% with an enum on group_by, so the schema already documents all three parameters fully. The description enumerates the same grouping values and scoping options without adding syntax or format detail beyond the schema. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb (aggregate counts) and resource (U.S. fatal police shootings from the Fatal Force database), including the scope constraint 'since 2015'. It explicitly distinguishes itself from the sibling police_shootings by noting it returns only counts, never names.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Names the alternative explicitly ('use police_shootings for individual incidents') and describes the optional scoping workflow (state and/or year first). The condition selecting this tool over its sibling is fully spelled out.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.