# thingsboard/thingsboard-mcp [Health: Active]

**Category:** 🏭 Industrial & IoT  
**Repository:** https://github.com/thingsboard/thingsboard-mcp  
**GitHub Stars:** 99  
**Views:** 6  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/thingsboard-thingsboard-mcp

## Description
The ThingsBoard MCP Server provides a natural language interface for LLMs and AI agents to interact with your ThingsBoard IoT platform.

## Claude Desktop Quick Installation
Remote MCP endpoint (confidence: high). Install path detected from listing signals. Add as a URL/SSE server in your client:

```json
"mcpServers": {
  "thingsboard-mcp": {
    "url": "http://localhost:8000/sse"
  }
}
```

## Documentation

## What thingsboard/thingsboard-mcp MCP server does

thingsboard/thingsboard-mcp MCP server gives AI agents an MCP interface to a ThingsBoard IoT platform. It can retrieve structured information, change entities, inspect telemetry, and perform operational tasks through natural-language requests. Supported ThingsBoard deployments include Cloud, EU Cloud, self-hosted Community Edition or Professional Edition, and Edge.

The server covers common platform administration and monitoring workflows. Depending on the enabled tool groups, an agent can manage devices and assets, work with customers and users, query alarms, read or write attributes and time-series data, navigate relations, handle OTA packages, and run filtered entity data queries. Entity groups are available for Professional Edition deployments.

## How it works

The server translates MCP tool calls into requests against the configured ThingsBoard instance and returns structured results to the connected client. Docker is the recommended distribution method, although a downloadable JAR and source build are also provided. Java 17 or newer and Maven 3.6 or newer are required when building from source.

STDIO is enabled by default for clients that launch MCP servers as subprocesses. SSE mode runs an HTTP service, with `/sse` as the default connection endpoint and port 8000 as the default HTTP port. An HTTP-based MCP client can connect to the running SSE service.

## Setup and configuration

To use thingsboard/thingsboard-mcp MCP server, provide the base URL of a ThingsBoard instance through `THINGSBOARD_URL`. ThingsBoard 4.3 and newer can authenticate with `THINGSBOARD_API_KEY`. Older versions use `THINGSBOARD_USERNAME` and `THINGSBOARD_PASSWORD` instead. Docker examples pass these values into the container; the JAR can be configured with the same environment variables.

The transport can be selected with `SPRING_AI_MCP_SERVER_STDIO` and `SPRING_WEB_APPLICATION_TYPE`. SSE deployments can also change the bind address, port, and endpoint paths. Connection retry counts, retry delays, timeouts, and logging levels are configurable through environment variables.

The server exposes over 120 tools by default. Tool groups can be disabled individually with variables such as `THINGSBOARD_TOOLS_TELEMETRY`, `THINGSBOARD_TOOLS_DEVICE`, and `THINGSBOARD_TOOLS_EDQ`. This can reduce the tool set for clients with limited context capacity.

## Tools and capabilities

Available groups include:

- Devices: create, update, delete, list, and search by name, type, or group.
- Assets, customers, and users: perform CRUD operations, listing, and searches.
- Alarms: create, acknowledge, clear, delete, and query by severity.
- Telemetry and attributes: read, write, aggregate, and apply time-to-live settings.
- Relations and OTA packages: navigate relationships and manage firmware or software assignments.
- Entity data queries: filter across entity types using attributes and telemetry.

## Limitations and notes

thingsboard/thingsboard-mcp MCP server requires access to a ThingsBoard instance and valid credentials. Some capabilities depend on the ThingsBoard edition; entity groups are marked as Professional Edition functionality. The large default tool inventory may exceed the context limits of some clients, so unused groups should be disabled when necessary.

The documented client configurations cover Claude Desktop, Cursor, VS Code Copilot, and Claude Code. Other clients must support the selected MCP transport and authentication setup. SSE is intended for HTTP-based MCP clients, while STDIO is intended for clients that start the process locally.

_Full upstream README: https://allmcps.com/mcp/thingsboard-thingsboard-mcp/readme_

