プロトタイプ · プレビュー版:公式レジストリのすべてのサーバーを掲載し、30分ごとに同期しています。レビューとアカウント機能は今後のステップで始まります。
PopNx MCPAIを使う人のためのMCPサーバー · やさしい言葉で解説

Usda MCP Server

作者:cyanheadsバージョン 0.2.0i★ –iパソコンでもクラウドでも
レジストリ名io.github.cyanheads/usda-mcp-server

インストール

概要

作者による説明(英語の原文)

Search foods, compare nutrients, and look up the full USDA FoodData Central database.

PopNx MCPの3つの柱

この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。

できること

このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。

  • 接続方法: パソコンでもクラウドでも
  • トランスポート: stdio, Streamable HTTP
  • カテゴリ: 検索・AIの記憶
  • 入力が必要なもの:USDA_FDC_API_KEY

インストール

使っているAIアプリを選んで、設定をコピーしてください。

インストールの前に

必要なもの

  • クラウドで動くインストール不要。インターネット経由でつながります
  • npmNode.jsのインストール(npxコマンドに必要)

どのアプリを使っていますか?

上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。

ウェブ、デスクトップ、モバイルのClaudeで使えます:

  1. Settings → Connectors を開く
  2. Add custom connector を押す
  3. 下のアドレスを貼り付けて Add を押す
  4. サインインを求められたら、作者のサービスにサインインする
SettingsConnectors1+ Add2https://…3
https://usda.caseyjhand.com/mcp

または、パソコンで動かす

Claude Desktop → Settings → Developer → Edit Config を開き、claude_desktop_config.json にこれを貼り付けます

{
  "mcpServers": {
    "usda": {
      "command": "npx",
      "args": [
        "-y",
        "@cyanheads/usda-mcp-server"
      ],
      "env": {
        "USDA_FDC_API_KEY": "your-value",
        "MCP_LOG_LEVEL": "your-value"
      }
    }
  }
}

ターミナルでこれを実行します

claude mcp add --transport http usda https://usda.caseyjhand.com/mcp

または、パソコンで動かす

claude mcp add usda --env USDA_FDC_API_KEY=your-value --env MCP_LOG_LEVEL=your-value -- npx -y @cyanheads/usda-mcp-server

動かす前に、空欄の値を入力してください。

Cursorで開く

または、設定を自分でコピーする

プロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます

{
  "mcpServers": {
    "usda": {
      "url": "https://usda.caseyjhand.com/mcp"
    }
  }
}

または、パソコンで動かす

Cursorで開く

または、設定を自分でコピーする

プロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます

{
  "mcpServers": {
    "usda": {
      "command": "npx",
      "args": [
        "-y",
        "@cyanheads/usda-mcp-server"
      ],
      "env": {
        "USDA_FDC_API_KEY": "your-value",
        "MCP_LOG_LEVEL": "your-value"
      }
    }
  }
}

ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。

VS Codeで開く

または、設定を自分でコピーする

プロジェクトの .vscode/mcp.json に貼り付けます

{
  "servers": {
    "usda": {
      "type": "http",
      "url": "https://usda.caseyjhand.com/mcp"
    }
  }
}

または、パソコンで動かす

VS Codeで開く

または、設定を自分でコピーする

プロジェクトの .vscode/mcp.json に貼り付けます

{
  "servers": {
    "usda": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@cyanheads/usda-mcp-server"
      ],
      "env": {
        "USDA_FDC_API_KEY": "your-value",
        "MCP_LOG_LEVEL": "your-value"
      }
    }
  }
}

ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。

ChatGPTがつなげるのは、インターネット上のサーバーだけです:

  1. ウェブ版のChatGPTを開き → Settings → Connectors (Apps)
  2. Create または Add を押す(プランによっては、先に Advanced で Developer mode をオンにする必要があります)
  3. 下のアドレスを貼り付け、名前を付けて保存する
  4. サインインを求められたら、作者のサービスにサインインする
SettingsConnectors1+ Create2https://…3
https://usda.caseyjhand.com/mcp

メニューの名前は、プランや時期によって少し違うことがあります。

選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。

自分で入力する値

  • USDA_FDC_API_KEY 必須 env
    USDA FoodData Central API key from data.gov. Required for all food data requests.
  • MCP_LOG_LEVEL env
    Sets the minimum log level for output (e.g., 'debug', 'info', 'warn').

この設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。

できること

ツールの名前と説明は、サーバーが2026年11月7日に返したそのままの内容です。書いたのは作者で、私たちではありません。プレーンテキストとして表示しています。

  • usda_list_nutrients

    Look up the FDC nutrient reference table — all tracked nutrients with their numeric IDs, names, SR reference numbers, units, and categories. Use to resolve a nutrient name (e.g. "vitamin C") to its FDC ID (1162) before passing it to the nutrients[] filter on other tools. Filter b

  • usda_search_foods

    Search USDA FoodData Central foods by keyword. Returns matching foods with FDC IDs and available preview nutrients: protein (1003), fat (1004), carbohydrate (1005), fiber (1079), and energy (1008, 1062, 2047, 2048), preserving distinct energy estimates. Missing nutrients are omit

  • usda_get_food

    Get the full nutrient profile for one food by FDC ID. Returns all available nutrients (or a filtered subset via the nutrients[] param) with optional per-portion scaling. Use usda_search_foods to discover FDC IDs. Provide unit, optionally with quantity, to scale all nutrient value

  • usda_get_foods

    Fetch nutrient profiles for 2–20 foods in a single API call. More efficient than calling usda_get_food N times when you already have multiple FDC IDs. All values are per 100g (no portion scaling). Use the nutrients[] filter to limit response size — strongly recommended for batch

  • usda_compare_foods

    Compare nutrients side-by-side for 2–5 foods. Returns a structured table — one row per nutrient, one column per food — formatted as markdown. Best for "spinach vs kale iron" or "which has more protein?" questions. Omit nutrients[] to use the 12 most common defaults (energy, prote

基本チェックi

誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月7日にチェック

  • ✓ 合格

    作者とリポジトリが一致

    レジストリ名は、リポジトリを所有するGitHubアカウント cyanheads で確認済みです

  • … 未チェック

    今もメンテナンスされている

    このリポジトリはまだGitHubから読み取っていません

  • … 未チェック

    ライセンスがある

    このリポジトリはまだGitHubから読み取っていません

  • ✓ 合格

    エンドポイントが応答する

    208ミリ秒で応答(HTTP 200)

  • – 対象外

    OAuthでサインイン

    サインイン不要

  • ✓ 合格

    ツールの説明に隠れた指示がない

    5件のツールの説明を読み、AIへの隠れた指示は見つかりませんでした

検索・AIの記憶のほかのサーバーとの比較i

  • このカテゴリのほかの7275件のうち0%よりスターが多い
  • このカテゴリのほかの7275件のうち75%より最近レジストリに公開
  • 基本チェックの結果が、このカテゴリのほかの7275件のうち100%と同じかそれ以上

レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。

よくある質問

Usda MCP Serverは安全ですか?

当てはまる基本チェック3項目のうち3項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。

どんなキーやコードが必要ですか?

入力が必要なもの:USDA_FDC_API_KEY

パソコンで動きますか、それともクラウドですか?

どちらでも使えます。パソコンにインストールしても、クラウド版につないでもかまいません。

今もメンテナンスされていますか?

GitHubリポジトリの最終更新は–、最新バージョン(0.2.0)がレジストリに届いたのは12 日前です。

どのアプリで使えますか?

Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。URLでつながるので、リモートMCPサーバーに対応したアプリ(開発者モードのChatGPTなど)でも使えます。

代わりに使えるものは?

同じカテゴリには:Context7, Codebase Memory, Exa

代わりの候補

同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。

カードの見方:★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i

Context7

作者:upstash

Up-to-date docs for AI agents

パソコンでもクラウドでも★ 64,224MIT昨日更新
インストール

Codebase Memory

作者:DeusData

Codebase knowledge graph for AI agents — 162 languages, sub-ms queries, 99% fewer tokens.

パソコンで動く★ 48,148MIT21 日前更新
インストール

Exa

作者:exa-labs

Connect AI agents to Exa for web search, content fetching, and multi-step research.

クラウドで動く★ 5,213MIT先月更新
インストール

作者のREADME

READMEを開く

作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。

@cyanheads/usda-mcp-server Search foods, compare nutrients, and look up the full USDA FoodData Central database via MCP. STDIO or Streamable HTTP. 5 Tools • 3 Resources

Public Hosted Server: https://usda.caseyjhand.com/mcp


Overview

Nutrition data for roughly 400,000 foods from USDA FoodData Central, the US government's authoritative food composition database. Search by keyword or UPC, pull full nutrient profiles scaled to any portion, and compare foods side by side.

Tools
ToolDescription
usda_search_foodsSearch foods by keyword, ingredient, or UPC/GTIN across SR Legacy, Foundation, Survey (FNDDS), and Branded data sources
usda_get_foodFull nutrient profile for one food by FDC ID, with optional per-portion scaling
usda_get_foodsBatch nutrient fetch for 2–20 FDC IDs in a single request
usda_compare_foodsSide-by-side nutrient comparison for 2–5 foods, formatted as a markdown table
usda_list_nutrientsStatic FDC nutrient reference table (~150 nutrients) with IDs, names, units, and categories
Resources
ResourceDescription
usda://food/{fdcId}Full nutrient profile for a specific food by FDC ID
usda://nutrientsComplete FDC nutrient reference list
skill://usda-guide/SKILL.mdFood selection, serving-weight, and missing-nutrient guidance for agents

Food profiles and the nutrient reference are also reachable via tools. Use usda_search_foods to discover FDC IDs before reading food resources.

Capability reference

usda_search_foods tool
  • Query by keyword, ingredient name, or UPC/GTIN code; optional dataType[] filter across SR Legacy, Foundation, Survey (FNDDS), and Branded, defaulting to ["SR Legacy"] (or ["Branded"] once brandOwner is set)
  • brandOwner and foodCategory filters narrow results; pageSize (max 50, default 10) and pageNumber paginate
  • Returns FDC IDs plus available preview nutrients: protein (1003), fat (1004), carbohydrate (1005), fiber (1079), and energy (1008, 1062, 2047, 2048). Original values, units, order, and distinct energy estimates are preserved; missing entries are omitted. Use usda_get_food for other nutrients or the full profile
  • A page past totalPages returns empty foods[], the requested page, totals, and a notice with a valid pageNumber when the query has matches
  • Typed errors: query_empty (blank query), query_syntax (FDC rejected the query syntax), no_results (nothing matched in the requested data sources)

usda_get_food tool
  • Full nutrient profile for one fdcId; optional nutrients[] filter to specific IDs
  • Optional unit (g / oz / lb / kg / serving) with an optional quantity scales every value from the FDC per-100g basis; quantity defaults to 100 for mass units and 1 for serving. Serving uses the first valid portion, or a positive finite Branded label size in g / GRM / GM (case-insensitive) when no portion exists, multiplied by quantity
  • servingInfo identifies the resolved portion or label serving and its gram weight; allPortions[] contains actual portion definitions only
  • Typed errors: not_found (bad FDC ID), quantity_without_unit, no_portion_data (no valid portion or supported Branded gram label). Volume, IU, milligram labels, missing units, and invalid sizes require an explicit mass-unit request; no density is inferred

usda_get_foods tool
  • Batch fetch for 2–20 FDC IDs in one call; values are per-100g only (no portion scaling)
  • nutrients[] filter strongly recommended — full profiles for 20 foods are large
  • Per-ID partial failure — IDs that return no data land in failed[] instead of aborting the batch

usda_compare_foods tool
  • Side-by-side comparison for 2–5 FDC IDs, pivoted one row per nutrient and one column per food
  • Defaults to 12 commonly compared nutrients (energy, protein, fat, saturated fat, carbs, fiber, total sugars, sodium, potassium, calcium, iron, vitamin C) unless nutrients[] is given
  • All values scaled to a common quantity + unit basis (default 100 g; quantity is an amount in unit, so unit: "oz" alone compares per 100 oz)
  • Proceeds with the valid foods when some IDs return no data; only throws too_few_foods when fewer than 2 resolve
  • Rows where every food is null for that nutrient are filtered out

usda_list_nutrients tool
  • Static reference table of ~150 tracked FDC nutrients — no API call
  • Optional category filter: macronutrients, vitamins, minerals, lipids, amino_acids, other
  • Returns each nutrient's ID, name, SR reference number, unit, and category — resolve a name to the ID used by nutrients[] elsewhere

usda://food/{fdcId} resource
  • Same data as usda_get_food without portion scaling — full nutrient profile per 100g as application/json
  • fdcId must be a bare positive integer (no sign, leading zero, decimal, or exponent); anything else throws invalid_id
  • not_found when the ID doesn't exist in FDC

usda://nutrients resource
  • Complete FDC nutrient reference — same content as usda_list_nutrients with no category filter
  • Served as application/json with a 1-hour public cache hint, since the table is bundled at build time and identical for every caller
skill://usda-guide/SKILL.md resource

Guidance for matching food records, choosing a serving weight, and reporting incomplete nutrient coverage. The same usda-guide ships with plugin installs, npm, Docker, and the desktop bundle.

Features

Built on @cyanheads/mcp-ts-core: stdio and Streamable HTTP transports, pluggable auth (none / jwt / oauth), swappable storage (in-memory, filesystem, Supabase, Cloudflare KV/R2/D1), structured logging with optional OpenTelemetry tracing.

FoodData Central-specific:

  • Type-safe client for the USDA FoodData Central REST API (api.nal.usda.gov/fdc/v1)
  • Normalization layer that handles inconsistent API response shapes across search, single-food, and batch endpoints
  • Batch API endpoint (/foods) with per-food partial failure reporting
  • HTML response detection (rate-limit proxy returns 200 HTML) with service-unavailable error surfacing
  • Static nutrient reference dictionary — ~150 nutrients with FDC IDs, SR numbers, units, and categories; no API call required

Agent-friendly output:

  • Provenance preserved — FDC data source (dataType) on every food result so callers know whether they're reading curated research data or label-derived branded values
  • Partial failure reporting — batch tools (usda_get_foods, usda_compare_foods) return successes alongside structured failed[] / missingData[] entries rather than failing the whole request
  • Cross-reference hints — FDC IDs and tool names in descriptions so agents know exactly which call to make next (search → get → compare workflow)

Getting started

Connect to the hosted instance, no install:

claude mcp add --transport http usda-mcp-server https://usda.caseyjhand.com/mcp

Or run it locally:

claude mcp add usda-mcp-server -e USDA_FDC_API_KEY=your-key -- npx -y @cyanheads/usda-mcp-server

For other clients, add this to the MCP config file:

{

"mcpServers": { "usda-mcp-server": { "command": "npx", "args": ["-y", "@cyanheads/usda-mcp-server"], "env": { "USDA_FDC_API_KEY": "your-api-key" } } } }

Get a free key at api.data.gov/signup. Food search, lookup, and comparison require it; the static nutrient reference works without it. For Docker or a source build, see Running the server.

Configuration

VariableDescriptionDefault
USDA_FDC_API_KEYRequired for FoodData Central-backed tools (search, get, batch, compare) — not for startup or usda_list_nutrients. Get a free key at api.data.gov.—
MCP_TRANSPORT_TYPETransport: stdio or http.stdio
MCP_HTTP_PORTPort for HTTP server.3010
MCP_AUTH_MODEAuth mode: none, jwt, or oauth.none
MCP_LOG_LEVELLog level (RFC 5424).info
LOGS_DIRDirectory for log files (Node.js only). /logs
STORAGE_PROVIDER_TYPEStorage backend.in-memory
OTEL_ENABLEDEnable OpenTelemetry instrumentation (spans, metrics, completion logs).false

See .env.example for the full list of optional overrides.

Running the server

Requires Bun v1.4.0 or higher (or Node.js v24+).

Local development
git clone https://github.com/cyanheads/usda-mcp-server.git

cd usda-mcp-server && bun install cp .env.example .env # set USDA_FDC_API_KEY

  • Build and run:
  # One-time build

bun run rebuild

Run the built server

bun run start:stdio

or

bun run start:http

  • Run checks and tests:
  bun run devcheck   # Lint, format, typecheck, security

bun run test # Vitest test suite bun run lint:mcp # Validate MCP definitions against spec

Docker
docker run --rm -e USDA_FDC_API_KEY=your-key -p 3010:3010 ghcr.io/cyanheads/usda-mcp-server:latest

The image defaults to HTTP transport, stateless session mode, and logs to /var/log/usda-mcp-server. For stdio, use docker run -i --rm -e MCP_TRANSPORT_TYPE=stdio -e USDA_FDC_API_KEY=your-key ghcr.io/cyanheads/usda-mcp-server:latest. To build locally, run `docker build -t usda-mcp-server

冒頭だけを表示しています。続きはリポジトリで読めます

PopNxに聞く