Skip to main content
Glama

Adafruit IO MCP by usefulapi

List feed data

adafruitio_list_feed_data
Read-only

Data points of a feed (max 1000 per call). Newest first, except that with start_time the API returns the oldest page after that time. Filter by time range and limit; to read further back call again with the reply's next_page_args (the same filters plus before). GET /feeds/{feed_key}/data.

Input Schema

NameRequiredDescriptionDefault
limitNoMaximum records to return, 1-1000 (default 100).
beforeNoPagination token: next_before from the previous reply (keep the same other arguments).
includeNoComma-separated fields to return: value, lat, lon, ele, id, created_at.
end_timeNoISO 8601 date or date-time, e.g. 2026-10-01T00:00:00Z.
feed_keyYesFeed key (the URL-safe key shown in Adafruit IO, for example 'temperature'; 'group-key.feed-key' also works).
start_timeNoISO 8601 date or date-time, e.g. 2026-10-01T00:00:00Z.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=true, so safety is covered. The description adds genuinely non-obvious behavior: a 1000-record cap and the ordering quirk that results are newest-first except when start_time is supplied, in which case the oldest page after that time is returned. It stops short of describing the response envelope beyond next_page_args.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three dense sentences with the core identity and the 1000-cap front-loaded, followed by ordering and pagination mechanics. Nothing is filler, though the trailing endpoint string is redundant with the tool name and could be dropped without loss.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 6 parameters, full schema coverage, no output schema and read-only annotations, the description supplies what is missing from structured data: page size cap, sort semantics, and the pagination loop. It could say more about the shape of the returned data set, but that gap is minor.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and every parameter is individually documented, so the baseline is 3. The description adds meaning the schema does not: the 1000-per-call interpretation of limit, the conditional effect of start_time on result ordering, and the intended use of before as an iteration token rather than a raw filter.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb-resource pairing ('Data points of a feed') and even names the underlying endpoint GET /feeds/{feed_key}/data, so the agent knows exactly what is returned. It does not explicitly distinguish itself from close siblings like adafruitio_get_last_data or adafruitio_get_data_point, whose purposes overlap, so it falls just short of the top band.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives clear operational context: filter by time range and limit, and to read further back call again with the reply's next_page_args plus `before`. This tells the agent how to paginate, but it never states when to prefer this bulk listing over the single-point or last-value siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.