Primary-source commodities data for AI agents — EIA, FRED, CFTC, USDA, USGS via x402 on Base.
Inferred from the transports this listing declares (streamable-http). A client not listed here hasn’t been ruled out — it just isn’t something Forge can confirm.
Verification confirms publisher identity (repo ownership), not code safety. The security scan covers known CVEs and suspicious install scripts.
Read from a real MCP initialize → tools/list handshake against the declared endpoint. No tool was ever invoked — tools/list is the read-only introspection call the protocol defines for this. It reflects what the server advertised at that moment; a hosted endpoint is not pinned to any version and can change without notice.
https://api.commodities.sh/api/mcp11 tools · 498mscatalog.listList every commodity instrument in the catalog with sector, unit, primary source, and freshness metadata. Call this first to discover valid codes before price.latest or inventory.get. Free discovery tool — no payment required.List every commodity instrument in the catalog with sector, unit, primary source, and freshness metadata. Call this first to discover valid codes before price.latest or inventory.get. Free discovery tool — no payment required.
No input schema was published for this tool.
price.latestReturn the latest cash/fundies observation for one instrument code. Use catalog.list to discover codes such as CL, GC, or ZC. Response follows the shared observation contract with provenance and license tags.Return the latest cash/fundies observation for one instrument code. Use catalog.list to discover codes such as CL, GC, or ZC. Response follows the shared observation contract with provenance and license tags.
| Parameter | Type | Description |
|---|---|---|
| code* | string | Instrument code from catalog.list. Example: CL, GC, ZC. |
inventory.getFetch EIA weekly petroleum inventory levels. Omit series to list all latest inventory points, or pass a series key to get week-over-week change, vs-5y deviation, and a surprise label for that series.Fetch EIA weekly petroleum inventory levels. Omit series to list all latest inventory points, or pass a series key to get week-over-week change, vs-5y deviation, and a surprise label for that series.
| Parameter | Type | Description |
|---|---|---|
| series | string | Optional EIA inventory series key. Omit to return all latest inventory rows. Example: crude_stocks. |
positioning.getReturn the latest CFTC Commitments of Traders managed-money positioning for an instrument code. Includes long, short, net, and week-over-week net change with source URL.Return the latest CFTC Commitments of Traders managed-money positioning for an instrument code. Includes long, short, net, and week-over-week net change with source URL.
| Parameter | Type | Description |
|---|---|---|
| code* | string | Instrument code from catalog.list. Example: CL, NG, GC, ZC. |
spread.getCompute a derived spread observation: 3-2-1 crack, soybean crush, WTI-Brent basis, or calendar (calendar requires licensed curve data and may return available=false). Prefer crack/crush/basis for live derived values with formula and inputs.Compute a derived spread observation: 3-2-1 crack, soybean crush, WTI-Brent basis, or calendar (calendar requires licensed curve data and may return available=false). Prefer crack/crush/basis for live derived values with formula and inputs.
| Parameter | Type | Description |
|---|---|---|
| type* | string | Spread type to compute. Example: crack for 3-2-1 gasoline/distillate crack. |
| root | string | Optional root symbol for calendar spreads. Example: CL. Ignored for crack/crush/basis. |
price.historyReturn historical observations for an instrument code (up to 500 points). Use after price.latest when you need a short time series for the same code.Return historical observations for an instrument code (up to 500 points). Use after price.latest when you need a short time series for the same code.
| Parameter | Type | Description |
|---|---|---|
| code* | string | Instrument code from catalog.list. Example: CL, GC, ZC. |
| limit | number | Number of historical points to return. Max 500, default 60. |
fx.latestReturn the latest FX rate observation for a pair or FRED FX series. Useful alongside commodity prices when converting cash values across currencies.Return the latest FX rate observation for a pair or FRED FX series. Useful alongside commodity prices when converting cash values across currencies.
| Parameter | Type | Description |
|---|---|---|
| pair* | string | FX pair or series id. Example: EURUSD, USDCNY, DTWEXBGS. |
fundamentals.getFetch a fundamentals document: USDA WASDE, crop progress, export sales, or USGS mineral summaries. Choose kind based on the ags/metals question you are answering.Fetch a fundamentals document: USDA WASDE, crop progress, export sales, or USGS mineral summaries. Choose kind based on the ags/metals question you are answering.
| Parameter | Type | Description |
|---|---|---|
| kind* | string | Fundamentals report kind. Example: wasde for World Agricultural Supply and Demand Estimates. |
snapshot.getBuild a sector snapshot bundling prices, inventories, spreads, and related fundies for energy, metals, ags, or all sectors. Prefer this over calling many single-observation tools when you need a full sector picture.Build a sector snapshot bundling prices, inventories, spreads, and related fundies for energy, metals, ags, or all sectors. Prefer this over calling many single-observation tools when you need a full sector picture.
| Parameter | Type | Description |
|---|---|---|
| sector* | string | Sector to snapshot. Use all to receive energy, metals, and ags together. |
calendar.getList EIA, USDA, and CFTC release calendar entries with cadence, typical Eastern time, and next-hint notes. Free discovery tool — call before scheduling agents around inventory or WASDE prints.List EIA, USDA, and CFTC release calendar entries with cadence, typical Eastern time, and next-hint notes. Free discovery tool — call before scheduling agents around inventory or WASDE prints.
No input schema was published for this tool.
decision.getBuild a deterministic decision pack for energy, metals, ags, or all sectors. Returns method, signals with direction/rationale, an embedded snapshot, and a disclaimer — no ML model, rule-based only.Build a deterministic decision pack for energy, metals, ags, or all sectors. Returns method, signals with direction/rationale, an embedded snapshot, and a disclaimer — no ML model, rule-based only.
| Parameter | Type | Description |
|---|---|---|
| sector* | string | Sector for the decision pack. Use all to bundle every sector. |
11 of 11 tools published a description.
Tool names and descriptions are written by the publisher and shown verbatim as inert text. They are the strings an MCP client passes to a model, so Forge scans them for prompt-injection patterns — any finding appears with the security scan above. “Privileged” is a keyword match on the tool name, not an audit of what the tool does: a benign-sounding name can still do anything.
Primary-source commodities data for AI agents — EIA, FRED, CFTC, USDA, USGS via x402 on Base.
Linked names open Forge’s index of every entry observed exposing that tool. Browse all indexed tools.
This entry publishes no npm package, so Forge has no dependency tree for it. That is a gap in coverage — not a statement that it has no dependencies.