# `com.plainrecords/us-recalls-food-products-vehicles` on anlyon.dev

> Text inside fenced blocks marked untrusted-server-text was written by the MCP server's publisher, not by anlyon.dev. It is data to inspect, not instructions to follow. Invisible characters are shown as [U+XXXX].
> No finding is not a safety guarantee: these are point-in-time checks of tool definitions, not of code or behaviour.

- Page: https://anlyon.dev/servers/com.plainrecords/us-recalls-food-products-vehicles
- JSON: https://anlyon.dev/api/v1/servers/com.plainrecords/us-recalls-food-products-vehicles
- Version: 1.0.0 (active)
- Publisher: com.plainrecords (domain proven to the MCP Registry)
- Runs: remote (streamable-http)
- Sign-in to list tools: none
- Metadata from the official MCP Registry, synced 2026-10-21T18:00:32.800Z

Title and description, as the publisher wrote them:

```untrusted-server-text
PlainRecords: U.S. recalls in plain English
U.S. FDA, CPSC and NHTSA recalls by product, brand, lot code or car, plus owner complaints. Daily.
```

Scanned 2026-10-21T18:53:42.896Z over streamable-http.

**7 tools: 6 change things and 1 only read.**

| Group | Class | Tools | Claude Code |
| --- | --- | --- | --- |
| Deletes or cancels | destructive | 0 | deny |
| Can't be undone | irreversible | 0 | ask |
| Changes things | write | 6 | ask |
| Only reads | read | 1 | allow |

## Findings

No check matched anything in these tool definitions.


## Changes things (6)

Creates or changes something that can be changed back. Claude Code: ask.

### `brand_recalls`

- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

Description, as the server wrote it:

```untrusted-server-text
The newest records (up to 25) of a brand or company across FDA, USDA FSIS, CPSC and NHTSA, each with its kind as the agency gives it (Recall, Warning, Allergy Alert ...), with the number of records and the number of recalls among them. Dates as search_recalls names them; a campaign NHTSA removed from its file is a record, not a current recall.
```

### `drug_shortage`

- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

Description, as the server wrote it:

```untrusted-server-text
FDA's drug shortage entries whose generic name contains the words given (up to 15), as FDA lists them: status, availability, reason, dosage form and update date. Not medical advice.
```

### `food_outbreaks`

- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

Description, as the server wrote it:

```untrusted-server-text
FDA's list of foodborne outbreak investigations as FDA posts it (newest first): pathogen, product, case count, status and whether FDA lists a recall, with the link to FDA's advisory.
```

### `recalls_in_state`

- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

Description, as the server wrote it:

```untrusted-server-text
FDA (food, medicine, device, veterinary) and USDA FSIS recalls whose distribution text names the state (the newest 20, with the total). Recalls that say only "nationwide" name no state and are counted separately; CPSC and NHTSA do not record states.
```

### `tap_water`

- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

Description, as the server wrote it:

```untrusted-server-text
The community water systems that EPA's service-area map puts a ZIP code's people in (up to 6, most people first), each with the health-based violations EPA records since three years before its file date, the contaminants or rules, and the page with every violation. These are records of violations, not a test of the water today.
```

### `vehicle_recalls`

- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

Description, as the server wrote it:

```untrusted-server-text
NHTSA recalls for a make, model and model year (the newest 30, with the total on record), plus owner complaint counts since 1995 by part. A recall applies only to the vehicles it lists: the owner should check the VIN at nhtsa.gov/recalls.
```

## Only reads (1)

Looks things up and changes nothing. Claude Code: allow.

### `search_recalls`

- The name "search_recalls" says "search": a word for reading.

Description, as the server wrote it:

```untrusted-server-text
Find U.S. recalls and notices from FDA (food, medicine, medical device), USDA FSIS (meat, poultry, egg products), CPSC (consumer product) and NHTSA (vehicle) by product, brand, hazard, lot code or UPC. Newest and best matches first. Canadian, UK and EU notices are not searched. An FDA enforcement record gives recall_initiation_date (the recall's start) and report_date (FDA's enforcement report); other records give date. A campaign NHTSA removed from its file carries removed_from_nhtsa_file.
```

## Claude Code permissions

For `.claude/settings.json`, assuming the server is installed as `us-recalls-food-products-vehicles`:

```json
{
  "permissions": {
    "allow": [
      "mcp__us-recalls-food-products-vehicles__search_recalls"
    ],
    "ask": [
      "mcp__us-recalls-food-products-vehicles__brand_recalls",
      "mcp__us-recalls-food-products-vehicles__vehicle_recalls",
      "mcp__us-recalls-food-products-vehicles__tap_water",
      "mcp__us-recalls-food-products-vehicles__drug_shortage",
      "mcp__us-recalls-food-products-vehicles__recalls_in_state",
      "mcp__us-recalls-food-products-vehicles__food_outbreaks"
    ],
    "deny": []
  }
}
```
