# openfda-food-enforcement

Query openFDA food enforcement (recall) records.

Agent View of the PolicyLayer registry record for `openfda-food-enforcement`. HTML page: https://policylayer.com/tools/io-github-derekslinz-meta-data-mcp/openfda-food-enforcement

## Facts

- Tool: `openfda-food-enforcement`
- Server: Meta Data Mcp (`pypi:meta-data-mcp`) — https://policylayer.com/tools/io-github-derekslinz-meta-data-mcp.md
- Install: `npx -y pypi:meta-data-mcp`
- Homepage: https://github.com/derekslinz/meta-data-mcp
- Risk category: Read (Low risk)
- Registry record: grade F, identity unverified
- Server rate-limited: no
- Parameters: 0
- Recommended policy verdict: Allowed

## Example call (MCP tools/call, JSON-RPC 2.0)

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "openfda-food-enforcement",
    "arguments": {}
  }
}
```

## Why openfda-food-enforcement is rated Low

This tool queries public openFDA data about food enforcement and recalls. Querying public health records is a Read operation—it retrieves information without modifying, deleting, or executing external actions. The blast radius of misuse is minimal since the data is already public and the tool cannot issue recalls, modify records, or trigger external processes.

From the tool's own definition: "Tool name 'openfda-food-enforcement' and description 'Query openFDA food enforcement (recall) records' indicate a retrieval operation against a public FDA database."

## Use case

AI agents call openfda-food-enforcement to retrieve information from Meta Data Mcp without modifying anything. It is typically the context-gathering step in research, monitoring, and reporting workflows, before the agent takes action elsewhere.

## Recommended policy (PolicyLayer)

Verdict: **Allowed**. Enforced by the PolicyLayer MCP gateway (https://policylayer.com/mcp-gateway) before a call reaches Meta Data Mcp:

```json
{
  "version": "1",
  "default": "deny",
  "tools": {
    "openfda-food-enforcement": {}
  }
}
```

## Other tools on Meta Data Mcp (395)

- `hackernews-new-stories` — Execute — https://policylayer.com/tools/io-github-derekslinz-meta-data-mcp/hackernews-new-stories.md
- `opendata_plugins_create` — Execute — https://policylayer.com/tools/io-github-derekslinz-meta-data-mcp/opendata-plugins-create.md
- `ovapi-stop-departures` — Execute — https://policylayer.com/tools/io-github-derekslinz-meta-data-mcp/ovapi-stop-departures.md
- `overpass-query` — Execute — https://policylayer.com/tools/io-github-derekslinz-meta-data-mcp/overpass-query.md
- `ssllabs-analyze` — Execute — https://policylayer.com/tools/io-github-derekslinz-meta-data-mcp/ssllabs-analyze.md
- `wikidata-sparql` — Execute — https://policylayer.com/tools/io-github-derekslinz-meta-data-mcp/wikidata-sparql.md
- `arxiv-get-paper` — Read — https://policylayer.com/tools/io-github-derekslinz-meta-data-mcp/arxiv-get-paper.md
- `arxiv-query` — Read — https://policylayer.com/tools/io-github-derekslinz-meta-data-mcp/arxiv-query.md
- `arxiv-search-by-author` — Read — https://policylayer.com/tools/io-github-derekslinz-meta-data-mcp/arxiv-search-by-author.md
- `arxiv-search-by-category` — Read — https://policylayer.com/tools/io-github-derekslinz-meta-data-mcp/arxiv-search-by-category.md
- `arxiv-search-by-title` — Read — https://policylayer.com/tools/io-github-derekslinz-meta-data-mcp/arxiv-search-by-title.md
- `au-data-gov-get-dataset` — Read — https://policylayer.com/tools/io-github-derekslinz-meta-data-mcp/au-data-gov-get-dataset.md
- `au-data-gov-get-organization` — Read — https://policylayer.com/tools/io-github-derekslinz-meta-data-mcp/au-data-gov-get-organization.md
- `au-data-gov-list-groups` — Read — https://policylayer.com/tools/io-github-derekslinz-meta-data-mcp/au-data-gov-list-groups.md
- `au-data-gov-list-organizations` — Read — https://policylayer.com/tools/io-github-derekslinz-meta-data-mcp/au-data-gov-list-organizations.md
- `au-data-gov-list-tags` — Read — https://policylayer.com/tools/io-github-derekslinz-meta-data-mcp/au-data-gov-list-tags.md
- `au-data-gov-search-datasets` — Read — https://policylayer.com/tools/io-github-derekslinz-meta-data-mcp/au-data-gov-search-datasets.md
- `awc-metar` — Read — https://policylayer.com/tools/io-github-derekslinz-meta-data-mcp/awc-metar.md
- `awc-station` — Read — https://policylayer.com/tools/io-github-derekslinz-meta-data-mcp/awc-station.md
- `awc-taf` — Read — https://policylayer.com/tools/io-github-derekslinz-meta-data-mcp/awc-taf.md
- `ca-open-gov-get-dataset` — Read — https://policylayer.com/tools/io-github-derekslinz-meta-data-mcp/ca-open-gov-get-dataset.md
- `ca-open-gov-get-organization` — Read — https://policylayer.com/tools/io-github-derekslinz-meta-data-mcp/ca-open-gov-get-organization.md
- `ca-open-gov-list-groups` — Read — https://policylayer.com/tools/io-github-derekslinz-meta-data-mcp/ca-open-gov-list-groups.md
- `ca-open-gov-list-licenses` — Read — https://policylayer.com/tools/io-github-derekslinz-meta-data-mcp/ca-open-gov-list-licenses.md
- `ca-open-gov-list-organizations` — Read — https://policylayer.com/tools/io-github-derekslinz-meta-data-mcp/ca-open-gov-list-organizations.md
- `ca-open-gov-list-tags` — Read — https://policylayer.com/tools/io-github-derekslinz-meta-data-mcp/ca-open-gov-list-tags.md
- `ca-open-gov-search-datasets` — Read — https://policylayer.com/tools/io-github-derekslinz-meta-data-mcp/ca-open-gov-search-datasets.md
- `cbs-get-metadata` — Read — https://policylayer.com/tools/io-github-derekslinz-meta-data-mcp/cbs-get-metadata.md
- `cbs-get-typed-dataset` — Read — https://policylayer.com/tools/io-github-derekslinz-meta-data-mcp/cbs-get-typed-dataset.md
- `cbs-list-tables` — Read — https://policylayer.com/tools/io-github-derekslinz-meta-data-mcp/cbs-list-tables.md
- …and 365 more: https://policylayer.com/tools/io-github-derekslinz-meta-data-mcp.md

## For agents

This record is a snapshot. Live verdicts and the full registry:

- Check every server in your MCP config at once: `npx -y policylayer stack`
- Vet a server before you add it: install the mcp-precheck skill — `npx skills add https://policylayer.com` (skill text: https://policylayer.com/skill.md)
- Query the registry over MCP: endpoint `https://api.policylayer.com/mcp` — tools `check_mcp_server`, `check_mcp_stack`, `check_tool`, `search_registry`, `get_change_events`

---

Source: the PolicyLayer MCP registry — one continuously verified record per MCP server. Full record: https://policylayer.com/registry?q=io-github-derekslinz-meta-data-mcp · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/io-github-derekslinz-meta-data-mcp
