MCP server for AWS IoT Core: device registry, shadows, jobs, rules, messaging.
Copy the AI prompt to install this server into Claude Code, Cursor, or another agent β or use 1-click editor setup below.
π‘ Paste the JSON block into your client's configuration file under mcpServers, then restart the application.
MCP (Model Context Protocol) servers for IoT platforms β giving AI agents full read/write access to device registries, digital twins, and telemetry.
| Server | Platform | Tools | Package |
|---|---|---|---|
eclipse-ditto | Eclipse Ditto digital twins (open source; also compatible with Bosch IoT Things and other Ditto-based deployments) | 48 | |
mqtt | MQTT 5.0 β the standard IoT pub/sub protocol (any broker: Mosquitto, EMQX, HiveMQ, AWS IoT Core, etc.) | 7 | |
aws-iot-core | AWS IoT Core β device registry, shadows, jobs, rules, messaging | 48 | |
azure-iot-hub | Azure IoT Hub β device registry, twins, direct methods, jobs, messaging | 25 | |
sparkplug-b | Sparkplug B β MQTT + protobuf convention for industrial/SCADA data (birth/death, sequenced metrics, commands) | 13 |
Each row links to that server's README for its full tool list, required environment variables, and setup/testing notes.
Each server is a standalone directory under this repo β its own pyproject.toml, uv.lock, Dockerfile, and mcp.json example config. No shared library layer: every server is independently runnable and dockerizable.
Install straight from PyPI with uv or pipx β no clone needed:
Or run from a clone of this repo:
Each server reads its configuration from environment variables (connection strings, broker host, credentials, etc.) β see that server's README for the full list.
Each server directory has an mcp.json with a ready-to-use client config example (Claude Desktop / VS Code / any MCP client). Copy the relevant block into your client's config, filling in the environment variables described in that server's README. All servers are also listed on the official MCP registry under io.github.nagarjunr/<server-name>.
overwrite=False) β race-free via conditional headers where the target API supports them (e.g. Ditto's If-None-Match), otherwise a documented describe-then-create check. Delete tools, where a server needs them, require an explicit confirm=True β there is no bulk/cascading delete.mqtt and sparkplug-b run against a real Eclipse Mosquitto broker (sparkplug-b's tests simulate the "device" side with the same real protocol library the server uses, so both ends of the wire are genuine). aws-iot-core is tested against moto (AWS IoT Core has no free local emulator; LocalStack's IoT support requires a paid plan). azure-iot-hub is tested against respx for its REST tools; its one AMQP-only tool (send_c2d_message β Azure IoT Hub's cloud-to-device send has no REST binding) is tested against a local fake AMQP endpoint built for this repo, since no moto-equivalent exists for Azure and no free Azure IoT Hub emulator exists at all. These are genuine emulators/protocol-level fakes, not naive mocks β see each server's README for specifics and caveats.Adding a new server? Follow the structure and design principles above, add its row to the Servers table, and make sure its test suite runs against a real or faithfully-emulated instance of the target platform (document any exception, as aws-iot-core and azure-iot-hub do). Issues and PRs welcome.
MIT β see LICENSE.
No reviews yet β be the first to share how this listing worked for you.
Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.
[](https://allmcps.com/mcp/aws-iot-core)<a href="https://allmcps.com/mcp/aws-iot-core"><img src="https://allmcps.com/api/badge/aws-iot-core?style=directory" alt="AWS IoT Core on AllMCPs" /></a>