Enables Bluetooth LE connectivity for discovering, connecting to, and communicating with Nordic Thingy:52 devices
Provides tools for controlling Nordic Thingy:52 IoT devices via Bluetooth LE, including LED control, sound playback, and sensor data reading (temperature, humidity, pressure, CO2, TVOC)
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Nordic Thingy:52 MCP Servercheck the temperature and air quality in my office"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
๐ฎ Nordic Thingy:52 MCP Server
Control your Nordic Thingy:52 IoT device directly from Claude Desktop using the Model Context Protocol (MCP)
Transform your Claude Desktop into an IoT control center! This MCP server enables Claude to discover, connect to, and control Nordic Thingy:52 devices via Bluetooth LE - all through natural language conversation.

โจ Features
๐ Auto-Discovery: Scan for nearby Thingy devices
๐ Easy Connection: Connect via Bluetooth LE with a single command
๐ก LED Control: Set RGB colors, create lighting effects
๐ Sound Control: Play built-in sounds and tones
๐ Sensor Reading: Monitor temperature, humidity, pressure, CO2, and TVOC
๐ค AI Integration: Control everything through natural Claude conversations
๐ Real-time Updates: Instant feedback and status monitoring
๐ Prerequisites
Hardware
Nordic Thingy:52 device (Purchase here)
Computer with Bluetooth LE support
Battery or USB power for Thingy
Software
Python 3.10 or higher
Claude Desktop app (Download here)
macOS (tested) or Linux with BlueZ (Windows support via bleak)
๐ Quick Start
1. Installation
# Clone the repository
git clone https://github.com/yourusername/mcp-server-nordic-thingy.git
cd mcp-server-nordic-thingy
# Create virtual environment
python3 -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
# Install dependencies
pip install -r requirements.txt2. Configure Claude Desktop
Add the server to your Claude Desktop configuration:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"nordic-thingy": {
"command": "python3",
"args": ["/absolute/path/to/mcp_server_nordic_thingy.py"]
}
}
}3. Restart Claude Desktop
Close and reopen Claude Desktop to load the server.
4. Start Using!
Try these prompts in Claude:
"Find my Nordic Thingy and connect to it"
"Turn the Thingy LED red"
"Check the temperature and air quality"
"Play a beep sound"๐ Documentation
Available Tools
Tool | Description | Example Prompt |
| Discover nearby devices | "Scan for Thingy devices" |
| Connect to a device | "Connect to XX:XX:XX:XX:XX:XX" |
| Disconnect device | "Disconnect from Thingy" |
| Set RGB LED color | "Set LED to red" |
| Turn off LED | "Turn off the LED" |
| Play sound (1-8) | "Play sound 3" |
| Quick beep | "Make it beep" |
| Read all sensors | "Check all sensors" |
| Connection status | "Is Thingy connected?" |
Sensor Data
The Thingy:52 provides:
๐ก๏ธ Temperature (ยฐC)
๐ง Humidity (%)
๐ฝ Pressure (hPa)
๐ซ๏ธ CO2 (ppm) - Air quality
๐ฌ๏ธ TVOC (ppb) - Volatile organic compounds
๐จ Color sensor (RGB + Clear)
๐ฏ Example Use Cases
1. Home Office Monitor
"Monitor my office air quality. Check CO2 every 5 minutes and alert me if it's unhealthy (>1000 ppm)"2. Smart Notifications
"When you detect motion (temperature change), flash the LED blue and beep twice"3. Temperature Alerts
"If the temperature goes above 25ยฐC, set the LED to red and play sound 5"4. Mood Lighting
"Create a relaxing atmosphere: set the LED to a calm blue color"5. Meeting Room Status
"Create a meeting room indicator:
- Green LED: Good air quality, room available
- Yellow LED: Moderate air quality
- Red LED: Poor air quality, needs ventilation"More examples in
๐ ๏ธ Development
Project Structure
mcp-server-nordic-thingy/
โโโ mcp_server_nordic_thingy.py # Main MCP server
โโโ requirements.txt # Python dependencies
โโโ README.md # This file
โโโ PROMPT_GUIDE.md # Comprehensive prompt examples
โโโ CONTRIBUTING.md # Contribution guidelines
โโโ LICENSE # MIT License
โโโ examples/ # Example scripts
โ โโโ basic_control.py
โ โโโ sensor_monitor.py
โ โโโ automation.py
โโโ docs/ # Additional documentation
โโโ API.md # API reference
โโโ TROUBLESHOOTING.md # Common issues
โโโ HARDWARE.md # Hardware detailsRunning Tests
# Install dev dependencies
pip install -r requirements-dev.txt
# Run tests
pytest tests/
# Run with coverage
pytest --cov=. tests/Local Testing
Test the MCP server without Claude:
# Run server in test mode
python3 mcp_server_nordic_thingy.py --test
# Or use the test client
python3 examples/test_client.py๐ค Contributing
We welcome contributions! Here's how you can help:
Ways to Contribute
๐ Report bugs
๐ก Suggest features
๐ Improve documentation
๐ฏ Share useful prompts
๐ง Submit pull requests
โญ Star the repo!
Getting Started
Fork the repository
Create a feature branch (
git checkout -b feature/AmazingFeature)Commit your changes (
git commit -m 'Add AmazingFeature')Push to the branch (
git push origin feature/AmazingFeature)Open a Pull Request
See CONTRIBUTING.md for detailed guidelines.
Share Your Prompts!
Found a great way to use the Thingy? Share your prompts in PROMPT_GUIDE.md!
๐ Troubleshooting
Thingy Not Found
Check Power: Ensure Thingy is powered on (blue LED should pulse)
Bluetooth: Enable Bluetooth on your computer
Distance: Keep Thingy within 10 meters
Interference: Move away from other Bluetooth devices
Reset: Hold Thingy button for 5 seconds to reset
Connection Failed
# Check Bluetooth status
hcitool dev # Linux
system_profiler SPBluetoothDataType # macOS
# Scan manually
hcitool lescan # Linux
# Reset Bluetooth (macOS)
sudo pkill bluetoothdClaude Can't Find Server
Check
claude_desktop_config.jsonpath is correctVerify Python path:
which python3Check server logs in Claude Desktop Developer Tools
Restart Claude Desktop
More troubleshooting in
๐ Resources
Nordic Thingy:52
MCP (Model Context Protocol)
Claude Desktop
๐ Learning Path
Beginners
Read Quick Start
Try basic prompts
Explore sensor reading
Intermediate
Create conditional automations
Build sequences
Monitor air quality
Advanced
Multi-device control
Database integration
Web dashboard
Custom tool development
๐ Showcase
Community Projects
Smart Plant Monitor by @username
Automated plant care using humidity and temperature sensors
Home Lab Monitor by @username
Server room monitoring with multiple Thingys
Meeting Room Assistant by @username
Intelligent meeting room status indicator
Add your project! Submit a PR to appear here.
๐ Stats
๐ก๏ธ 6 environmental sensors
๐ก 16.7 million LED colors
๐ 8 built-in sounds
โก 30-day battery life
๐ก 10m Bluetooth range
๐ 240 mAh Li-Po battery
๐ License
This project is licensed under the MIT License - see the LICENSE file for details.
MIT License
Copyright (c) 2025 Nordic Thingy MCP Contributors
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software")...๐ Acknowledgments
Anthropic for Claude and MCP
Nordic Semiconductor for the amazing Thingy:52 hardware
Bleak library maintainers for excellent Bluetooth LE support
All contributors who make this project better
๐ Support
๐ฌ GitHub Issues: Report bugs or request features
๐ง Email: your-email@example.com
๐ฆ Twitter: @yourhandle
๐ฌ Discord: Join our community (if available)
๐บ๏ธ Roadmap
v1.0 (Current)
โ Basic Bluetooth LE connection
โ LED control
โ Sound playback
โ Sensor reading
โ MCP integration
v1.1 (Planned)
๐ Continuous sensor monitoring
๐ Data logging
๐ Web dashboard
๐ Smart alerts
๐จ Advanced LED effects
v2.0 (Future)
๐ค ML-based anomaly detection
๐ Home Assistant integration
๐ฑ Mobile app
๐ Multi-Thingy coordination
โ๏ธ Cloud sync
Vote on features in
๐ Getting Started in 60 Seconds
# 1. Clone
git clone https://github.com/yourusername/mcp-server-nordic-thingy.git
cd mcp-server-nordic-thingy
# 2. Install
pip install -r requirements.txt
# 3. Configure Claude (edit with your path)
echo '{
"mcpServers": {
"nordic-thingy": {
"command": "python3",
"args": ["'$(pwd)'/mcp_server_nordic_thingy.py"]
}
}
}' > ~/Library/Application\ Support/Claude/claude_desktop_config.json
# 4. Restart Claude Desktop
# 5. Try it!
# In Claude: "Find my Thingy and turn it red"Built with โค๏ธ by the Nordic Thingy MCP community
If you find this useful, please โญ star the repository!