Adafruit IO MCP by usefulapi

Read Adafruit IO feeds, data, groups and dashboards; publish a data point or create a feed.

我該用這個嗎

品質與安全性

A
說明品質
100%
結構描述完整度
78%
命名品質
80%
汙染風險
100%
權限相符程度
100%
協定合規性
100%

根據工具定義與協定合規性的自動化分析。

上下文成本

~3,058Token(工具定義)
~1.1 KB典型回應大小
顯著的注意力影響(128k 上下文的 2.39%)

這是每次將伺服器的工具載入模型上下文時所消耗的約略 token 數量。數量越高,可用於其他工作的注意力就越少。

安裝

一鍵安裝

將以下內容加入你的 `claude_desktop_config.json` 檔案:

{
  "mcpServers": {
    "adafruit-io": {
      "url": "https://adafruit-io.usefulapi.io/mcp"
    }
  }
}

遠端端點

https://adafruit-io.usefulapi.io/mcpstreamable-http

它能做什麼

工具清單

工具(17)

🟢 唯讀🟡 寫入🔴 刪除⚪ 未知
🟢adafruitio_get_user

The Adafruit IO account this key belongs to: id, name, username, time zone, created/updated times, plus the data rate limit when reported. GET /api/v2/user.

輸入結構描述

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢adafruitio_get_throttle

The account's data rate limit (data-record modifications per minute: 30 on free accounts, 60 on Plus) and the current active data rate. Check it before publishing many points. GET /api/v2/{username}/throttle.

輸入結構描述

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢adafruitio_list_feeds

List all of the account's feeds with key, name, description, unit, visibility, enabled flag, last value and last update. GET /feeds.

輸入結構描述

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢adafruitio_get_feed(feed_key)

One feed by key: name, description, unit, visibility, last value, status settings and the groups it belongs to. GET /feeds/{feed_key}.

輸入結構描述

{
  "type": "object",
  "properties": {
    "feed_key": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200,
      "description": "Feed key (the URL-safe key shown in Adafruit IO, for example 'temperature'; 'group-key.feed-key' also works)."
    }
  },
  "required": [
    "feed_key"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢adafruitio_get_feed_details(feed_key)

A feed with its details block: first and last data point and the number of stored points. GET /feeds/{feed_key}/details.

輸入結構描述

{
  "type": "object",
  "properties": {
    "feed_key": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200,
      "description": "Feed key (the URL-safe key shown in Adafruit IO, for example 'temperature'; 'group-key.feed-key' also works)."
    }
  },
  "required": [
    "feed_key"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢adafruitio_list_feed_data(feed_key, start_time, end_time, limit, include, ...)

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.

輸入結構描述

{
  "type": "object",
  "properties": {
    "feed_key": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200,
      "description": "Feed key (the URL-safe key shown in Adafruit IO, for example 'temperature'; 'group-key.feed-key' also works)."
    },
    "start_time": {
      "type": "string",
      "description": "ISO 8601 date or date-time, e.g. 2026-10-01T00:00:00Z."
    },
    "end_time": {
      "type": "string",
      "description": "ISO 8601 date or date-time, e.g. 2026-10-01T00:00:00Z."
    },
    "limit": {
      "description": "Maximum records to return, 1-1000 (default 100).",
      "type": "integer",
      "minimum": 1,
      "maximum": 1000
    },
    "include": {
      "description": "Comma-separated fields to return: value, lat, lon, ele, id, created_at.",
      "type": "string",
      "pattern": "^(value|lat|lon|ele|id|created_at)(,(value|lat|lon|ele|id|created_at))*$"
    },
    "before": {
      "description": "Pagination token: next_before from the previous reply (keep the same other arguments).",
      "type": "string",
      "minLength": 1,
      "maxLength": 500
    }
  },
  "required": [
    "feed_key"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢adafruitio_get_last_data(feed_key, include)

The most recent data point of a feed (value, location, created_at). GET /feeds/{feed_key}/data/last.

輸入結構描述

{
  "type": "object",
  "properties": {
    "feed_key": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200,
      "description": "Feed key (the URL-safe key shown in Adafruit IO, for example 'temperature'; 'group-key.feed-key' also works)."
    },
    "include": {
      "description": "Comma-separated fields to return: value, lat, lon, ele, id, created_at.",
      "type": "string",
      "pattern": "^(value|lat|lon|ele|id|created_at)(,(value|lat|lon|ele|id|created_at))*$"
    }
  },
  "required": [
    "feed_key"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢adafruitio_get_data_point(feed_key, data_id)

One stored data point of a feed by its id. GET /feeds/{feed_key}/data/{id}.

輸入結構描述

{
  "type": "object",
  "properties": {
    "feed_key": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200,
      "description": "Feed key (the URL-safe key shown in Adafruit IO, for example 'temperature'; 'group-key.feed-key' also works)."
    },
    "data_id": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100,
      "description": "Data point id (the `id` field of a data point)."
    }
  },
  "required": [
    "feed_key",
    "data_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢adafruitio_get_feed_chart(feed_key, hours, resolution, field, start_time, ...)

Aggregated chart data for a feed: values sliced by `resolution` minutes over the last `hours` (or a start/end range), using avg, sum, min, max, val or val_count. Good for trends without downloading every point. GET /feeds/{feed_key}/data/chart.

輸入結構描述

{
  "type": "object",
  "properties": {
    "feed_key": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200,
      "description": "Feed key (the URL-safe key shown in Adafruit IO, for example 'temperature'; 'group-key.feed-key' also works)."
    },
    "hours": {
      "description": "Hours of history (ignored when start_time and end_time are given).",
      "type": "integer",
      "minimum": 1,
      "maximum": 8760
    },
    "resolution": {
      "description": "Slice size in minutes.",
      "anyOf": [
        {
          "type": "number",
          "const": 1
        },
        {
          "type": "number",
          "const": 5
        },
        {
          "type": "number",
          "const": 10
        },
        {
          "type": "number",
          "const": 30
        },
        {
          "type": "number",
          "const": 60
        },
        {
          "type": "number",
          "const": 120
        },
        {
          "type": "number",
          "const": 240
        },
        {
          "type": "number",
          "const": 480
        },
        {
          "type": "number",
          "const": 960
        }
      ]
    },
    "field": {
      "description": "Aggregation (default avg).",
      "type": "string",
      "enum": [
        "avg",
        "sum",
        "val",
        "min",
        "max",
        "val_count"
      ]
    },
    "start_time": {
      "type": "string",
      "description": "ISO 8601 date or date-time, e.g. 2026-10-01T00:00:00Z."
    },
    "end_time": {
      "type": "string",
      "description": "ISO 8601 date or date-time, e.g. 2026-10-01T00:00:00Z."
    }
  },
  "required": [
    "feed_key"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢adafruitio_list_groups

List the account's groups (named sets of feeds) with their feeds. GET /groups.

輸入結構描述

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢adafruitio_get_group(group_key)

One group by key with its feeds. GET /groups/{group_key}.

輸入結構描述

{
  "type": "object",
  "properties": {
    "group_key": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200,
      "description": "Group key."
    }
  },
  "required": [
    "group_key"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢adafruitio_list_dashboards

List the account's dashboards with key, name, description and visibility. GET /dashboards.

輸入結構描述

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢adafruitio_get_dashboard(dashboard_key)

One dashboard by key. GET /dashboards/{dashboard_key}.

輸入結構描述

{
  "type": "object",
  "properties": {
    "dashboard_key": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200,
      "description": "Dashboard key."
    }
  },
  "required": [
    "dashboard_key"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢adafruitio_list_blocks(dashboard_key)

The blocks (widgets: gauges, toggles, charts, sliders...) of a dashboard with their feeds, position and properties. Integration secrets in properties are removed. GET /dashboards/{dashboard_key}/blocks.

輸入結構描述

{
  "type": "object",
  "properties": {
    "dashboard_key": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200,
      "description": "Dashboard key."
    }
  },
  "required": [
    "dashboard_key"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢adafruitio_list_activities(start_time, end_time, limit)

The account's activity log (feed/data/dashboard changes), optionally within a time range. GET /activities.

輸入結構描述

{
  "type": "object",
  "properties": {
    "start_time": {
      "type": "string",
      "description": "ISO 8601 date or date-time, e.g. 2026-10-01T00:00:00Z."
    },
    "end_time": {
      "type": "string",
      "description": "ISO 8601 date or date-time, e.g. 2026-10-01T00:00:00Z."
    },
    "limit": {
      "description": "Maximum entries, 1-1000.",
      "type": "integer",
      "minimum": 1,
      "maximum": 1000
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴adafruitio_publish_data_point(feed_key, value, lat, lon, ele)

WRITE: publish one data point (a value) to a feed. This can drive REAL DEVICES: anything subscribed to the feed (relays, motors, lights, heaters, locks, dashboard toggles) will receive and may act on the value, and it cannot be undone from here. Only publish a value the user has asked for. Counts against the account's data rate limit (30 per minute on free accounts, 60 on Plus). POST /feeds/{feed_key}/data.

輸入結構描述

{
  "type": "object",
  "properties": {
    "feed_key": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200,
      "description": "Feed key (the URL-safe key shown in Adafruit IO, for example 'temperature'; 'group-key.feed-key' also works)."
    },
    "value": {
      "anyOf": [
        {
          "type": "string",
          "maxLength": 1000
        },
        {
          "type": "number"
        }
      ],
      "description": "The value to publish (text or number, up to 1000 characters)."
    },
    "lat": {
      "description": "Latitude of the reading.",
      "type": "number",
      "minimum": -90,
      "maximum": 90
    },
    "lon": {
      "description": "Longitude of the reading.",
      "type": "number",
      "minimum": -180,
      "maximum": 180
    },
    "ele": {
      "description": "Elevation of the reading in meters.",
      "type": "number",
      "minimum": -20000,
      "maximum": 100000
    }
  },
  "required": [
    "feed_key",
    "value"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴adafruitio_create_feed(name, description, group_key)

WRITE: create a new, empty feed (private by default), optionally inside an existing group. Adds a feed only; it does not change or delete anything existing, and fails if the name is taken. POST /feeds.

輸入結構描述

{
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 128,
      "description": "Feed name (the key is derived from it)."
    },
    "description": {
      "description": "Optional description.",
      "type": "string",
      "maxLength": 1000
    },
    "group_key": {
      "description": "Optional existing group key to create the feed in.",
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    }
  },
  "required": [
    "name"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

社群

為此伺服器評分

證據

近期觀測

已驗證未記錄版本17 個工具