# Nutrition MCP (remote · docuslide-mcp-production.up.railway.app)

USDA FoodData Central nutrition data: search foods, compare macros, and analyze meals.

- Trust score: 36/100 (low)
- Change this week: −23
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-08-11

## Components

- remote · `docuslide-mcp-production.up.railway.app`: 36/100 (this document), [markdown](https://verifymcp.io/servers/andrewvg23-nutrition-mcp/docuslide-mcp-production.md), [page](https://verifymcp.io/servers/andrewvg23-nutrition-mcp/docuslide-mcp-production)

## Channel facts

- Endpoint: `https://docuslide-mcp-production.up.railway.app/mcp`
- Transports: `streamable-http`
- Auth: `none`
- Version: `0.1.0`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-08-11.

- **Endpoint Security**: 89/100
  - The endpoint's TLS certificate is valid, in date, and uses a strong key.
  - The endpoint enforces authorisation, advertised via RFC 9728 protected-resource metadata.
  - HTTPS is enforced; there's no plaintext access path.
  - HSTS check failed: the Strict-Transport-Security header is absent.
  - DNSSEC check failed: this domain isn't protected by DNSSEC.
  - The authorisation server offers only Dynamic Client Registration (RFC 7591), which MCP 2026-07-28 deprecated in favour of Client ID Metadata Documents.
- **Transport & Reachability**: 0/100
  - Transport blocked by authentication: the endpoint requires auth we don't have to verify streamable-http.
- **Schema Quality & AI Usability**: 0/100
  - Schema blocked by authentication: the endpoint requires auth we don't have to read it.
- **Stability & Change Management**: 0/100
  - Stability not yet verified: not enough scan history yet (needs a 30-day window).
- **Tool Coverage**: 0/100
  - Tool coverage blocked by authentication: the endpoint requires auth we don't have to read its tools.
- **Capabilities**: 0/100
  - Capabilities blocked by authentication: the endpoint requires auth we don't have to read them.

**Unverified: 5 categories.** Categories scored 0 because we could not verify them: authentication we do not have, an unreachable endpoint, or not enough scan history. We only credit what we can confirm.

## Install

### Claude

```bash
claude mcp add --transport http andrewvg23-nutrition-mcp https://docuslide-mcp-production.up.railway.app/mcp
```

### Codex

```toml
[mcp_servers.andrewvg23-nutrition-mcp]
url = "https://docuslide-mcp-production.up.railway.app/mcp"
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "andrewvg23-nutrition-mcp": {
      "type": "remote",
      "url": "https://docuslide-mcp-production.up.railway.app/mcp",
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add andrewvg23-nutrition-mcp --url https://docuslide-mcp-production.up.railway.app/mcp --transport streamable-http
```

### Hermes

```yaml
mcp_servers:
  andrewvg23-nutrition-mcp:
    url: "https://docuslide-mcp-production.up.railway.app/mcp"
```

### Other

```json
{
  "mcpServers": {
    "andrewvg23-nutrition-mcp": {
      "type": "http",
      "url": "https://docuslide-mcp-production.up.railway.app/mcp"
    }
  }
}
```

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-08-11 (score 36, 0)

- [functional] We updated how we score, so this day's move reflects our rubric, not a change to the server

### 2026-08-05 (score 36, −23)

- [security regression] Endpoint reachability: reachable → behind authorisation
- [security regression] Transport: pass → unverified
- [security improvement] Authorization: unverified → pass
- [security] First check of Authorization: partial
- [functional regression] Capabilities: pass → unverified
- [functional regression] Tool coverage: 100 → unverified
- [functional] First check of Schema quality: unverified

### 2026-08-04 (score 59)

First indexed and scored.

## MCP tools (4)

### `search_foods` (~188 tokens)

Search the USDA food database by name and return matching foods.

Always call this first to resolve a food name into an fdc_id — the other
tools need that id. Results include key macros per 100g so you can often
answer simple questions without a follow-up call.

Args:
    query: Food name to search for, e.g. "raw spinach" or "cheddar cheese".
    limit: Maximum results to return, 1-50. Defaults to 10.
    data_type: Restrict to one USDA dataset. "Foundation" and "SR Legacy"
        are whole/unbranded foods with the highest quality data;
        "Branded" covers packaged supermarket products;
        "Survey (FNDDS)" covers prepared dishes. Omit to search all.

Input parameters:

- `data_type`
- `limit` (integer)
- `query` (string, required)

### `get_food_nutrition` (~123 tokens)

Get the full nutrient breakdown for one food at a given serving weight.

Returns macros, micronutrients, percent daily values, and a list of common
portion sizes with their gram weights — use those to convert a user's
"1 cup" or "1 medium" into the grams argument on a follow-up call.

Args:
    fdc_id: The food's FoodData Central id, from search_foods.
    grams: Serving weight in grams. Defaults to 100.

Input parameters:

- `fdc_id` (integer, required)
- `grams` (number)

### `compare_foods` (~114 tokens)

Compare several foods side by side at the same serving weight.

Use this for "which has more protein" style questions. Check the `failed`
list in the response — if it is non-empty some foods could not be loaded
and the comparison is incomplete.

Args:
    fdc_ids: FoodData Central ids to compare, at most 10.
    grams: Serving weight applied to every food, in grams. Defaults to 100.

Input parameters:

- `fdc_ids` (array, required)
- `grams` (number)

### `analyze_meal` (~137 tokens)

Total the nutrition across several foods to analyze a whole meal.

Check `failed` and `partial` in the response before reporting totals — a
non-empty `failed` list means some items were left out of the sum.

Args:
    items: List of entries, each with an `fdc_id` (int, required) and
        `grams` (number, defaults to 100). At most 25 items.
        Example: [{"fdc_id": 173944, "grams": 150},
                  {"fdc_id": 168462, "grams": 80}]

Input parameters:

- `items` (array, required)

## Diagnostics

Captured diagnostic sections: TLS, DNSSEC, Authorisation, Transports. The full working is on the page: https://verifymcp.io/servers/andrewvg23-nutrition-mcp/docuslide-mcp-production#diagnostics

## Score history

- 2026-08-11: 36
- 2026-08-10: 36
- 2026-08-09: 36
- 2026-08-08: 36
- 2026-08-07: 36
- 2026-08-06: 36
- 2026-08-05: 36
- 2026-08-04: 59

## Links

- Remote endpoint: https://docuslide-mcp-production.up.railway.app/mcp
- Repository: https://github.com/AndrewVG23/nutrition_mcp
- Changelog RSS feed: https://verifymcp.io/servers/andrewvg23-nutrition-mcp/docuslide-mcp-production.xml
- Changelog JSON feed: https://verifymcp.io/servers/andrewvg23-nutrition-mcp/docuslide-mcp-production.json
- HTML version of this page: https://verifymcp.io/servers/andrewvg23-nutrition-mcp/docuslide-mcp-production
