TinyMCP
Let LLMs control embedded devices via the Model Context Protocol.
What is TinyMCP?
TinyMCP is a Model Context Protocol (MCP) server that allows AI assistants like Claude, Cursor, and VS Code to let llms control embedded devices via the model context protocol.
Let LLMs control embedded devices via the Model Context Protocol.
This server falls under the Developer Tools category on MCPgee, the world's largest MCP server directory with 33,000+ servers.
Features
- Let LLMs control embedded devices via the Model Context Prot
Use Cases
Maintainer
Works with
Installation
Manual Installation
npx tinymcpConfiguration
Configuration Details
claude_desktop_config.json
Performance
Response Metrics
Resource Usage
How to Set Up and Use TinyMCP
TinyMCP is an MCP server built by Golioth that bridges AI language models like Claude to physical embedded devices connected through the Golioth IoT platform. It translates natural language instructions into Remote Procedure Calls (RPCs) sent to real microcontrollers, enabling you to command hardware without writing firmware-level code. By reading a device's tool schema from LightDB State, TinyMCP dynamically exposes device capabilities as MCP tools, making it possible to blink LEDs, read sensors, or trigger actuators just by chatting with Claude. This is the foundation for AI-driven IoT automation where LLMs act as high-level controllers for Zephyr RTOS and Nordic nRF hardware.
Prerequisites
- Go 1.21+ installed (to build the server from source)
- A Golioth account with a project and at least one registered device
- A Golioth API key with permissions for the target project
- An MCP client such as Claude Desktop, Claude Code, or MCP Inspector
- An embedded device running Golioth-connected firmware (optional: Zephyr RTOS / Nordic nRF for the blinky example)
Clone and build the TinyMCP server
Clone the Golioth TinyMCP repository and build the server binary with the Go toolchain.
git clone https://github.com/golioth/tinymcp.git
cd tinymcp
go build -o tinymcp ./serverGather your Golioth credentials
Log in to the Golioth console at console.golioth.io and note your Project ID and Device ID. Generate or copy an API key scoped to the project under Settings → API Keys.
Set environment variables
Export the three required variables before starting the server. Replace the placeholder values with your real Golioth project ID, device ID, and API key.
export TINYMCP_PROJECT=my-golioth-project
export TINYMCP_DEVICE=my-device-id
export TINYMCP_API_KEY=your-golioth-api-keyStart the TinyMCP server
Run the compiled binary. It starts an HTTP MCP endpoint on port 8080 that your MCP client can connect to.
./tinymcpRegister device tool schema in LightDB State
On your device firmware, write a JSON tool schema to the LightDB State path `mcp/tools/schema`. TinyMCP reads this schema at startup and exposes each entry as a callable MCP tool. This step requires Golioth-connected firmware; the blinky example in the repository provides a ready-to-flash reference.
Connect your MCP client
Add TinyMCP to Claude Code using the HTTP transport. Use `none` as the bearer token unless you have configured authentication.
claude mcp add --transport http tinymcp http://localhost:8080 -H 'Authorization: Bearer none'Verify with MCP Inspector
Open MCP Inspector and point it at http://localhost:8080 to browse the device-derived tools and send test RPCs before involving Claude.
npx @modelcontextprotocol/inspector http://localhost:8080TinyMCP Examples
Client configuration (Claude Desktop)
Add TinyMCP to Claude Desktop's config file using HTTP transport. The server must be running locally before Claude starts.
{
"mcpServers": {
"tinymcp": {
"command": "npx",
"args": ["-y", "tinymcp"],
"env": {
"TINYMCP_PROJECT": "your-golioth-project-id",
"TINYMCP_DEVICE": "your-golioth-device-id",
"TINYMCP_API_KEY": "your-golioth-api-key"
}
}
}
}Prompts to try
Example natural language commands you can send to Claude once TinyMCP is connected and your device schema is registered.
- "Turn on the LED on my nRF device"
- "Toggle the blue LED three times with a 500ms delay"
- "Read the current temperature from my sensor"
- "What tools does my embedded device support?"
- "Send an RPC to restart the device firmware"Troubleshooting TinyMCP
Server starts but no tools appear in the MCP client
Ensure your device has written a valid JSON tool schema to the LightDB State path `mcp/tools/schema` and that the device is online in the Golioth console. TinyMCP reads this schema on startup, so restart the server after pushing the schema.
Authentication error when connecting to Golioth
Double-check that TINYMCP_PROJECT, TINYMCP_DEVICE, and TINYMCP_API_KEY are all exported correctly. The API key must have read/write access to the specific project. Verify by testing the Golioth REST API with the same key using curl.
Claude Desktop does not recognize the HTTP server
Claude Desktop currently favors stdio transport by default. Use Claude Code's `claude mcp add --transport http` command instead, or run the server as a separate process and ensure port 8080 is not blocked by a firewall.
Frequently Asked Questions about TinyMCP
What is TinyMCP?
TinyMCP is a Model Context Protocol (MCP) server that let llms control embedded devices via the model context protocol. It connects AI assistants to external tools and data sources through a standardized interface.
How do I install TinyMCP?
Follow the installation instructions on the TinyMCP GitHub repository. Clone the repo, install dependencies, and add the server config to your AI client.
Which AI clients work with TinyMCP?
TinyMCP works with all major MCP-compatible AI clients including Claude Desktop, Claude Code, Cursor, VS Code (GitHub Copilot), Windsurf, and Cline.
Is TinyMCP free to use?
Yes, TinyMCP is open source and available under the Apache-2.0 license. You can use it freely in both personal and commercial projects.
TinyMCP Alternatives — Similar Developer Tools Servers
Looking for alternatives to TinyMCP? Here are other popular developer tools servers you can use with Claude, Cursor, and VS Code.
Ecc
★ 188.2kThe agent harness performance optimization system. Skills, instincts, memory, security, and research-first development for Claude Code, Codex, Opencode, Cursor and beyond.
Javaguide
★ 155.8kJava 面试 & 后端通用面试指南,覆盖计算机基础、数据库、分布式、高并发、系统设计与 AI 应用开发
Gemini CLI
★ 104.5kA secure MCP server that wraps the Google Gemini CLI, allowing clients to query Gemini models using local OAuth sessions without requiring an API key. It provides tools for model interaction and diagnostics with built-in protection against command in
Awesome MCP Servers
★ 87.3k⭐ Curated list of Model Context Protocol (MCP) servers - tools that extend Claude Desktop, Cursor, Windsurf, and other MCP clients with custom capabilities.
MCP Servers
★ 86.0kModel Context Protocol Servers
CC Switch
★ 77.5kA cross-platform desktop All-in-One assistant for Claude Code, Codex, OpenCode, OpenClaw, Gemini CLI & Hermes Agent. Only official website: ccswitch.io
Browse More Developer Tools MCP Servers
Explore all developer tools servers available in the MCPgee directory. Each server includes setup guides for Claude, Cursor, and VS Code.
Set Up TinyMCP in Your Editor
Choose your AI client for step-by-step setup instructions.
Quick Config Preview
Add this to your claude_desktop_config.json or .cursor/mcp.json
Ready to use TinyMCP?
Browse our complete directory of 33,000+ MCP servers, read setup guides for your editor, and start building with the Model Context Protocol.