Agricultural Marketing Service · Capability
USDA AMS MARS API (MyMarketNews) — Reports
USDA AMS MARS API (MyMarketNews) — Reports. 2 operations. Lead operation: USDA AMS List Reports. Self-contained Naftiko capability covering one Agricultural Marketing Service business surface.
What You Can Do
GET
Listreports
— USDA AMS List Reports
/v1/reports
GET
Getreport
— USDA AMS Get Report
/v1/reports/{slug-id}
MCP Tools
usda-ams-list-reports
USDA AMS List Reports
read-only
idempotent
usda-ams-get-report
USDA AMS Get Report
read-only
idempotent
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: USDA AMS MARS API (MyMarketNews) — Reports
description: 'USDA AMS MARS API (MyMarketNews) — Reports. 2 operations. Lead operation: USDA AMS List Reports. Self-contained
Naftiko capability covering one Agricultural Marketing Service business surface.'
tags:
- Agricultural Marketing Service
- Reports
created: '2026-05-19'
modified: '2026-05-19'
binds:
- namespace: env
keys:
AGRICULTURAL_MARKETING_SERVICE_API_KEY: AGRICULTURAL_MARKETING_SERVICE_API_KEY
capability:
consumes:
- type: http
namespace: mars-reports
baseUri: https://marsapi.ams.usda.gov/services/v1.2
description: USDA AMS MARS API (MyMarketNews) — Reports business capability. Self-contained, no shared references.
resources:
- name: reports
path: /reports
operations:
- name: listreports
method: GET
description: USDA AMS List Reports
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: q
in: query
type: string
description: Search query to filter reports by name or description.
- name: allSections
in: query
type: boolean
description: Return all report sections (true/false).
- name: dateType
in: query
type: string
description: Date type to filter by (published, report).
- name: startDate
in: query
type: string
description: Start date for filtering reports (YYYY-MM-DD).
- name: endDate
in: query
type: string
description: End date for filtering reports (YYYY-MM-DD). Maximum 180 days from startDate.
- name: slug_id
in: query
type: string
description: Filter by specific report slug ID.
- name: class
in: query
type: string
description: Filter by commodity class (e.g., Livestock, Dairy, Fruit/Veg).
- name: limit
in: query
type: integer
description: Maximum number of records to return (max 100000).
- name: offset
in: query
type: integer
description: Number of records to skip for pagination.
- name: sort_by
in: query
type: string
description: Field to sort results by.
- name: sort_order
in: query
type: string
description: Sort order (asc or desc).
- name: reports-slug_id
path: /reports/{slug_id}
operations:
- name: getreport
method: GET
description: USDA AMS Get Report
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: slug_id
in: path
type: string
description: Unique identifier (Slug_ID) for the market news report.
required: true
- name: startDate
in: query
type: string
description: Start date for filtering data within the report (YYYY-MM-DD).
- name: endDate
in: query
type: string
description: End date for filtering data (YYYY-MM-DD). Maximum 180 days from startDate.
- name: limit
in: query
type: integer
description: Maximum records to return.
- name: offset
in: query
type: integer
description: Number of records to skip.
authentication:
type: basic
username: '{{env.AGRICULTURAL_MARKETING_SERVICE_USER}}'
password: '{{env.AGRICULTURAL_MARKETING_SERVICE_PASS}}'
exposes:
- type: rest
namespace: mars-reports-rest
port: 8080
description: REST adapter for USDA AMS MARS API (MyMarketNews) — Reports. One Spectral-compliant resource per consumed
operation, prefixed with /v1.
resources:
- path: /v1/reports
name: reports
description: REST surface for reports.
operations:
- method: GET
name: listreports
description: USDA AMS List Reports
call: mars-reports.listreports
with:
q: rest.q
allSections: rest.allSections
dateType: rest.dateType
startDate: rest.startDate
endDate: rest.endDate
slug_id: rest.slug_id
class: rest.class
limit: rest.limit
offset: rest.offset
sort_by: rest.sort_by
sort_order: rest.sort_order
outputParameters:
- type: object
mapping: $.
- path: /v1/reports/{slug-id}
name: reports-slug-id
description: REST surface for reports-slug_id.
operations:
- method: GET
name: getreport
description: USDA AMS Get Report
call: mars-reports.getreport
with:
slug_id: rest.slug_id
startDate: rest.startDate
endDate: rest.endDate
limit: rest.limit
offset: rest.offset
outputParameters:
- type: object
mapping: $.
- type: mcp
namespace: mars-reports-mcp
port: 9090
transport: http
description: MCP adapter for USDA AMS MARS API (MyMarketNews) — Reports. One tool per consumed operation, routed inline
through this capability's consumes block.
tools:
- name: usda-ams-list-reports
description: USDA AMS List Reports
hints:
readOnly: true
destructive: false
idempotent: true
call: mars-reports.listreports
with:
q: tools.q
allSections: tools.allSections
dateType: tools.dateType
startDate: tools.startDate
endDate: tools.endDate
slug_id: tools.slug_id
class: tools.class
limit: tools.limit
offset: tools.offset
sort_by: tools.sort_by
sort_order: tools.sort_order
outputParameters:
- type: object
mapping: $.
- name: usda-ams-get-report
description: USDA AMS Get Report
hints:
readOnly: true
destructive: false
idempotent: true
call: mars-reports.getreport
with:
slug_id: tools.slug_id
startDate: tools.startDate
endDate: tools.endDate
limit: tools.limit
offset: tools.offset
outputParameters:
- type: object
mapping: $.