MCP.Market

Eclipse Ditto MCP server

by nagarjunr·io.github.nagarjunr/eclipse-ditto·v0.1.1

MCP server for the Eclipse Ditto digital twin HTTP API (things, policies, connections, more).

B78/100grade B
What users say
No reviews yet
Be the first
Safety scan
B78/100

full report

Adoption
New

0 stars23 downloads/wk

Reviews

Write one

Nobody has reviewed Eclipse Ditto yet.

If you have run it, two minutes of your experience saves the next person an afternoon.

Eclipse Ditto tools (48, 20 write)

write = sends, deletes, buys or posts

Read from the package source without running it. The installed server may list more.

  • claim_thingwrite action

    Send a claim message to gain access to a thing. Wraps POST /things/{thingId}/inbox/claim.

  • count_things

    Count things matching a search filter, without fetching them.

  • create_connectionwrite action

    Create a new connection; its ID is generated by Ditto. Wraps POST /api/2/connections.

  • delete_connectionwrite action

    Delete a connection. Wraps DELETE /api/2/connections/{connectionId}. Irreversible.

  • delete_featurewrite action

    Delete a whole feature. Wraps DELETE /things/{thingId}/features/{featureId}.

  • delete_feature_definitionwrite action

    Remove a feature's definition. Wraps DELETE .../features/{featureId}/definition.

  • delete_feature_propertieswrite action

    Delete a feature's whole properties (or desiredProperties) object, or one property by path.

  • delete_policywrite action

    Delete a policy. Wraps DELETE /api/2/policies/{policyId}. Irreversible.

  • delete_policy_entrywrite action

    Delete one policy entry. Wraps DELETE /policies/{policyId}/entries/{label}.

  • delete_thingwrite action

    Delete a thing. Wraps DELETE /api/2/things/{thingId}. Irreversible.

  • delete_thing_attributeswrite action

    Delete a thing's whole attributes object, or one attribute by path.

  • delete_thing_definitionwrite action

    Remove a thing's definition. Wraps DELETE /things/{thingId}/definition.

  • get_connection

    Fetch a connection's config. Wraps GET /api/2/connections/{connectionId}. Requires devops credentials.

  • get_connection_logs

    Get a connection's logs. Wraps GET /connections/{connectionId}/logs.

  • get_connection_metrics

    Get a connection's metrics. Wraps GET /connections/{connectionId}/metrics. Requires devops credentials.

  • get_connection_status

    Get a connection's live status. Wraps GET /connections/{connectionId}/status. Requires devops credentials.

  • get_devops_config

    Get cluster-wide runtime configuration. Wraps GET /devops/config?path=... Requires devops credentials.

  • get_feature

    Fetch a single feature (definition + properties + desiredProperties).

  • get_feature_definition

    Get a feature's definition. Wraps GET .../features/{featureId}/definition.

  • get_feature_properties

    Get a feature's properties (or desiredProperties), or one property by path.

  • get_logging_config

    Get currently configured log levels. Wraps GET /devops/logging[/{moduleName}]. Requires devops credentials.

  • get_policy

    Fetch a policy. Wraps GET /api/2/policies/{policyId}.

  • get_policy_entries

    Get all policy entries, or one entry by label. Wraps GET /policies/{policyId}/entries[/{label}].

  • get_thing

    Fetch the full digital twin (attributes and features) for a thing.

  • get_thing_attributes

    Get a thing's attributes, or one attribute by JSON pointer path.

  • get_thing_definition

    Get a thing's definition (WoT model reference). Wraps GET /things/{thingId}/definition.

  • get_thing_features

    Fetch only the feature state (sensor/actuator data) for a thing.

  • get_thing_policy_id

    Get the policy ID controlling access to a thing. Wraps GET /things/{thingId}/policyId.

  • get_things

    Bulk-fetch multiple things by ID in one request.

  • list_connections

    List all configured connections. Wraps GET /api/2/connections. Requires devops credentials.

  • list_things

    Search/list digital twins (things) registered in Ditto.

  • patch_thingwrite action

    Partially update a thing (creates it if it doesn't exist yet).

  • poll_thing_changes

    Open a short-lived SSE connection and collect live thing-change events.

  • put_featurewrite action

    Create or replace a whole feature. Wraps PUT /things/{thingId}/features/{featureId}.

  • put_policywrite action

    Create a new policy, or replace an existing one (with overwrite=True).

  • put_thingwrite action

    Create a new thing, or replace an existing one (with overwrite=True).

  • send_connection_commandwrite action

    Send a lifecycle/diagnostic command to a connection. Wraps POST /connections/{connectionId}/command.

  • send_devops_piggybackwrite action

    Send a low-level admin (piggyback) command to the Ditto cluster.

  • send_messagewrite action

    Send a live message to (or from) a thing or one of its features.

  • set_feature_definition

    Set a feature's definition. Wraps PUT .../features/{featureId}/definition.

  • set_feature_properties

    Set a feature's whole properties (or desiredProperties) object, or one property by path.

  • set_logging_config

    Set a log level for a logger. Wraps PUT /devops/logging[/{moduleName}]. Requires devops credentials.

  • set_policy_entrywrite action

    Create or replace one policy entry. Wraps PUT /policies/{policyId}/entries/{label}.

  • set_thing_attributes

    Set a thing's whole attributes object, or one attribute by path.

  • set_thing_definition

    Set a thing's definition. Wraps PUT /things/{thingId}/definition.

  • set_thing_policy_id

    Repoint a thing at a different policy. Wraps PUT /things/{thingId}/policyId.

  • update_connectionwrite action

    Update an existing connection's config. Wraps PUT /api/2/connections/{connectionId}.

  • whoami

    Return the identity Ditto has authenticated this connector as. Wraps GET /api/2/whoami.

Public scan report

scanner v0.1.9 · 2026-09-24 · same rubric, same numbers if you re-run it

no findings
  • Code scan4 source files scanned25/25
  • –Live reliabilityno gateway calls yet and no remote to proben/a
  • –Tool poisoningtools not inspected (local package is not executed); not countedn/a
  • Auth qualitystatic API keys via environment variables6/15
  • Maintenancelast push 51 days ago12/15
  • Maintainer identityregistry namespace matches repository owner; GitHub account older than a year8/10
Overall 78/100. Components that don't apply are left out of the denominator. Any critical finding is an F.RubricAppeal a findingJSON

How Eclipse Ditto compares

Against every graded MCP server, from our own scans and uptime checks. Updated after each scan run.

Safety score
78/100
higher than 57% of 48,273 servers
Tools
48
the typical server has 7
Tools that change things
42%
typical: 0%. Fewer write tools means less an agent can break
Downloads a week
23
more than 10% of 11,915 servers with a package

What its tools let an agent do: 22 read · 1 create · 13 change · 9 delete · 3 send or post

Install Eclipse Ditto in Claude Code, Cursor or VS Code

claude mcp add eclipse-ditto -- uvx eclipse-ditto-mcp-server
Add to Cursor

What the publisher says

From the Eclipse Ditto repository's README, as published. We do not edit it. Read it on GitHub

IoT MCP Servers

MCP (Model Context Protocol) servers for IoT platforms — giving AI agents full read/write access to device registries, digital twins, and telemetry.

Servers

Each row links to that server's README for its full tool list, required environment variables, and setup/testing notes.

Structure

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.

<server-name>/
├── <server-name>mcpserver.py   # FastMCP server (single file)
├── pyproject.toml              # own dependencies
├── uv.lock
├── Dockerfile
├── mcp.json                    # example MCP client config
└── README.md                   # tools, env vars, setup for this server

Requirements

  • Python 3.12+
  • uv for dependency management and running servers
  • Docker, only if you want to run a server's own test suite against a real/emulated instance (see that server's README)

Quick start

Install straight from PyPI with uv or pipx — no clone needed:

uvx eclipse-ditto-mcp-server      # or: mqtt5-mcp-server / aws-iot-core-mcp-server / azure-iot-hub-mcp-server / sparkplug-b-mcp-server

Or run from a clone of this repo:

git clone https://github.com/nagarjunr/iot-mcp-servers.git
cd iot-mcp-servers/<server-name>
uv sync
uv run <server-name>mcpserver.py

Each server reads its configuration from environment variables (connection strings, broker host, credentials, etc.) — see that server's README for the full list.

Using with an MCP client

Shortened. The full README is on GitHub.

Nothing above is checked by us. What we check is on the safety report.

Eclipse Ditto: common questions

Is Eclipse Ditto MCP server safe?
Mostly: it is graded B (78/100). Read the Eclipse Ditto safety report
How do I install Eclipse Ditto?
It runs on your machine. Copy the Claude Code, Cursor, VS Code or Claude Desktop config from the install section.
Does Eclipse Ditto need an API key?
Yes. The registry entry asks for DITTO_PASSWORD, DITTO_BEARER_TOKEN, DITTO_DEVOPS_PASSWORD.
Is Eclipse Ditto maintained?
The last commit was 90 days ago (2026-08-04). The latest release is v0.1.1.
How does Eclipse Ditto compare with other MCP servers?
safety score 78/100 (higher than 57% of 48,273 servers); tools 48 (the typical server has 7); tools that change things 42% (typical: 0%. Fewer write tools means less an agent can break). Full comparison.

More from nagarjunr →