Eclipse Kapua MCP Server for IoT Device Management tools
Config is the same across clients — only the file and path differ.
{
"mcpServers": {
"kapua-mcp-server": {
"command": "<see-readme>",
"args": []
}
}
}Are you the author?
Add this badge to your README to show your security score and help users find safe servers.
An MCP server that connects AI assistants to Eclipse Kapua and Eurotech Everyware Cloud IoT platforms — enabling natural-language device management, telemetry exploration, and fleet diagnostics.
No automated test available for this server. Check the GitHub README for setup instructions.
Five weighted categories — click any category to see the underlying evidence.
No known CVEs.
No package registry to scan.
Be the first to review
Have you used this server?
Share your experience — it helps other developers decide.
Sign in to write a review.
Others in devops / data
Query and manage PostgreSQL databases directly from AI assistants
MCP server for using the GitLab API
🔥 Official Firecrawl MCP Server - Adds powerful web scraping and search to Cursor, Claude and any other LLM clients.
Manage Supabase projects — databases, auth, storage, and edge functions
MCP Security Weekly
Get CVE alerts and security updates for Kapua Mcp Server and similar servers.
Start a conversation
Ask a question, share a tip, or report an issue.
Sign in to join the discussion.
An MCP server that connects AI assistants to Eclipse Kapua and Eurotech Everyware Cloud IoT platforms — enabling natural-language device management, telemetry exploration, and fleet diagnostics.
Instead of navigating dashboards, writing curl commands, or learning the Kapua REST API, you can manage your IoT fleet through conversation:
You: "Show me all disconnected devices" Assistant: calls
kapua-devices-listwith status=DISCONNECTED — lists 3 offline gatewaysYou: "What happened to gateway-07 in the last hour?" Assistant: calls
kapua-device-events-list— shows a disconnect event 42 minutes agoYou: "Show me its current configuration" Assistant: calls
kapua-device-configurations-read— displays all component configsYou: "Roll it back to the previous snapshot" Assistant: calls
kapua-device-snapshot-rollback— triggers rollback successfully
This turns multi-step diagnostic workflows into a guided conversation without context-switching away from your IDE or terminal.
Create a .venv file in the project root. Choose one of the two authentication methods:
Username/password (default):
cat <<'EOF' > .venv
KAPUA_API_ENDPOINT=https://kapua.example.com/api
KAPUA_USER=my-user
KAPUA_PASSWORD=my-password
EOF
API key (recommended for production):
cat <<'EOF' > .venv
KAPUA_API_ENDPOINT=https://kapua.example.com/api
KAPUA_AUTH_METHOD=apikey
KAPUA_API_KEY=my-api-key
EOF
make build
./bin/kapua-mcp-server # stdio transport (default)
./bin/kapua-mcp-server -http # HTTP transport on localhost:8000
Or without building: go run ./cmd/server
docker build -t kapua-mcp-server .
docker run --rm \
-e KAPUA_API_ENDPOINT=https://kapua.example.com/api \
-e KAPUA_AUTH_METHOD=apikey \
-e KAPUA_API_KEY=my-api-key \
-p 8000:8000 \
kapua-mcp-server
The image is based on gcr.io/distroless/base-debian12:nonroot and supports multi-architecture builds (amd64/arm64).
| Variable | Required | Default | Description |
|---|---|---|---|
KAPUA_API_ENDPOINT | Yes | — | Kapua REST API base URL |
KAPUA_AUTH_METHOD | No | password | Authentication method: password or apikey |
KAPUA_USER | Yes (password) | — | Kapua username (required when KAPUA_AUTH_METHOD=password) |
KAPUA_PASSWORD | Yes (password) | — | Kapua password (required when KAPUA_AUTH_METHOD=password) |
KAPUA_API_KEY | Yes (apikey) | — | Kapua API key (required when KAPUA_AUTH_METHOD=apikey) |
KAPUA_TIMEOUT | No | 30 | HTTP client timeout in seconds |
MCP_ALLOWED_ORIGINS | No | common local hosts (localhost, 127.0.0.1, ::1, 0.0.0.0, host.docker.internal) | Comma-separated allowed origins for HTTP mode (both HTTP/HTTPS variants, with and without the default port). Set * to disable checks. |
LOG_LEVEL | No | INFO | Log level: DEBUG, INFO, WARN, ERROR |
Settings can be provided as environment variables or in a .venv file (one KEY=VALUE per line). Environment variables take precedence.
Add to your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):
{
"mcpServers": {
"kapua-mcp-server": {
"command": "/path/to/kapua-mcp-server",
"args": [],
"env": {
"KAPUA_API_ENDPOINT": "https://kapua.example.com/api",
"KAPUA_USER": "my-user",
"KAPUA_PASSWORD": "my-password"
}
}
}
}