4,500+ servers built on MCP Fusion
Vinkius
ESPHome logo
Vinkius
LangChain logo

How to Use the ESPHome MCP in LangChain

Run multi-step IoT automation chains with your LangChain agent directly invoking ESPHome devices.

See Vinkius in Action

Works with every AI agent you already use

…and any MCP-compatible client

ESPHome MCP on Cursor AI Code Editor MCP Client ESPHome MCP on Claude Desktop App MCP Integration ESPHome MCP on OpenAI Agents SDK MCP Compatible ESPHome MCP on Visual Studio Code MCP Extension Client ESPHome MCP on GitHub Copilot AI Agent MCP Integration ESPHome MCP on Google Gemini AI MCP Integration ESPHome MCP on Lovable AI Development MCP Client ESPHome MCP on Mistral AI Agents MCP Compatible ESPHome MCP on Amazon AWS Bedrock MCP Support
MCP Servers - Free for Subscribers
LangChain

Connect ESPHome MCP to LangChain

Create your Vinkius account to connect ESPHome to LangChain and route execution through our secure gateway. The platform manages server hosting, runtime updates, and security layers. Configuration requires no manual server provisioning.

GDPR Free for Subscribers

Chain-linked IoT state adjustments with LangChain

`get_entity_state` reads the current status of your ESPHome sensors, letting your LangChain agent feed that data directly into the next step of an execution chain. The agent takes the raw ESPHome REST API response and decides whether to trigger another tool without needing manual glue code in LangChain. You build multi-step reasoning pipelines where the output of checking an ESPHome sensor feeds straight into `switch_action` or `light_action` inside LangChain. LangSmith traces the entire flow, showing you the exact latency and payload of every single ESPHome call.

Direct ESP32 state configuration via LangChain

`number_set` modifies numerical configurations on your ESP32 boards based on real-time decision trees in your LangChain pipeline. Your LangChain agent parses the incoming ESPHome telemetry, compares it against your target values, and sends the update. This removes the need to write custom REST wrappers or handle raw HTTP requests inside your LangChain chains. The MCP Server lets the agent execute `select_option` to change ESPHome device modes or `button_press` to trigger specific local automations.

Real-time telemetry monitoring loops

`get_metrics` extracts Prometheus format metrics directly from your ESPHome nodes to feed into your LangChain decision loops. The LangChain agent reads WiFi signal strength and CPU heap status to determine if an ESP32 node is healthy before executing commands. If the ESPHome metrics indicate a node is struggling, the LangChain chain can bypass sending a `fan_action` or `cover_action` to avoid overloading the micro-controller. You get full visibility into these decisions through your LangSmith tracing dashboard.

Setup guide

Set up ESPHome MCP in LangChain

Prerequisites

  • Python 3.10+ installed
  • langchain-mcp-adapters + langgraph packages
  • Active Vinkius subscription with a valid endpoint token
  1. 1

    Install dependencies

    Run pip install langchain-mcp-adapters langgraph langchain-openai. The MCP adapters package converts MCP tools into native LangChain BaseTool objects.

  2. 2

    Connect via HTTP transport

    Use MultiServerMCPClient with "transport": "http" pointing to your Vinkius endpoint. Replace [YOUR_TOKEN_HERE] with your token from cloud.vinkius.com.

  3. 3

    Create a ReAct agent

    Pass the discovered tools to create_react_agent() from LangGraph. The agent automatically routes ESPHome tool calls through the MCP protocol.

  4. 4

    Run with any LLM

    Swap ChatOpenAI for ChatAnthropic, ChatGoogleGenerativeAI, or any LangChain-compatible model. The MCP tools work identically across all providers.

agent.py
from langchain_mcp_adapters.client import MultiServerMCPClient
from langgraph.prebuilt import create_react_agent
from langchain_openai import ChatOpenAI

async with MultiServerMCPClient({
    "esphome-mcp": {
        "transport": "http",
        "url": "https://edge.vinkius.com/[YOUR_TOKEN_HERE]/mcp",
    }
}) as client:
    tools = client.get_tools()

    agent = create_react_agent(
        ChatOpenAI(model="gpt-4o"),
        tools,
    )
    result = await agent.ainvoke({
        "messages": "List recent ESPHome transactions"
    })
    print(result["messages"][-1].content)

Independent Platform Disclaimer: Vinkius is an independent platform and is not affiliated with, endorsed by, sponsored by, verified by, or otherwise authorized by ESPHome. All third-party trademarks, logos, and brand names are the property of their respective owners. Their use on this website is strictly for informational purposes to identify service compatibility and interoperability.

Why Choose Vinkius

Vinkius connects your tools to AI with real-time monitoring and automatic cost savings — all from one dashboard.

Real-time monitoring

Live

visibility into every interaction

Connect your favorite tools to your AI and see exactly what's happening — every request, every response, in real time.

Built-in savings

60%

lower AI costs

Vinkius compresses data between your apps and your AI automatically. Lower bills every month — no configuration required.

Single dashboard

One

place for every integration

Every tool your AI connects to, managed from a single screen. One account, complete control.

Common questions about ESPHome MCP in LangChain

Install `langchain-mcp-adapters` and use `MultiServerMCPClient` to connect to the Vinkius endpoint. Pass the tools from `client.get_tools()` to your agent constructor so it can run actions like `switch_action` directly.
Yes, the agent can chain tools together in a single execution loop. For example, it can call `get_entity_state` to check a room's status, and then immediately call `cover_action` to close the blinds based on that result.
The MCP Server returns a standard error schema when a device is unreachable. Your LangChain agent receives this error as tool output, allowing it to retry or fail gracefully within your pipeline.
You configure tool access at the agent level by filtering the list returned by the server. Only pass specific tools like `light_action` or `fan_action` to the agent if you want to restrict its control.
The MCP Server only processes local entity states and device action payloads. Your physical sensor data and command history stay within the secure Vinkius sandbox and your local network.

Start using the ESPHome MCP today

We host it, we monitor it, we maintain it. You just paste one token.

Built & Managed by Vinkius 30s setup 10 tools

We've already built the connector for ESPHome. Just plug in your AI agents and start using Vinkius.

No hosting. No infrastructure. No complex setup.
All 10 tools are live and waiting. You're up and running in seconds.

Claude Claude
ChatGPT ChatGPT
Cursor Cursor
Gemini Gemini
Windsurf Windsurf
VS Code VS Code
JetBrains JetBrains
Vercel Vercel
+ other MCP clients

Vinkius gives your AI agents access to the full catalog of app connectors, all fully managed, secure, and enterprise-ready. One subscription, every tool you need.

Zero hosting required Full MCP catalog included Enterprise-grade security Auto-updated by Vinkius

Built, hosted, and secured by Vinkius. You just connect and go.