Skip to main content
AllMCPs
BrowseBestCategoriesStackCompareToolsGuidesBlog
Log in Submit MCP

Stay in the loop

Get new MCP servers and top picks in your inbox.

AllMCPs

The open directory for discovering and installing Model Context Protocol servers.

AllMCPs on GitHub (opens in a new tab)
Launched onTiny Startupstinystartups.com
Explore
  • Browse servers
  • Best MCP servers
  • Categories
  • MCP clients
  • Agent prompts
  • Stack Builder
  • Compare servers
  • Random discovery New
  • Submit a server
  • Pricing & Boost Boost
Learn
  • Guides hub
  • What is MCP?
  • Install guide
  • Build an MCP server
  • Deploy an MCP server
  • Security guide
  • Troubleshooting
  • MCP for SEO & AEO
  • Protocol versioning
  • Blog & updates
Tools
  • All developer tools
  • Config generator
  • Config validator
  • Config auditor
  • MCP playground
  • Token calculator
  • OpenAPI β†’ MCP
  • Badge generator
For agents
  • REST API docs
  • Trust & traffic Live
  • Remote MCP server SSE β†— (opens in a new tab)
  • llms.txt β†— (opens in a new tab)
  • Catalog JSON β†— (opens in a new tab)
Company
  • About
  • Advertise Sponsor
  • Contact
  • GitHub β†— (opens in a new tab)
  • Terms
  • Privacy
AllMCPs VerifiedAllMCPs VerifiedFeatured on Nick LaunchesFeatured on Nick LaunchesLaunch Llama NewsletterLaunch Llama NewsletterVerified DR - allmcps.comVerified DR - allmcps.comFeatured on SaaSGrowFeatured on SaaSGrowFeatured on Twelve ToolsFeatured on Twelve ToolsFeatured on Saaspa.geFeatured on Saaspa.geFeatured on Findly.toolsFeatured on Findly.toolsFeatured on Startup FameFeatured on Startup FameFeatured on LaunchKiwiFeatured on LaunchKiwiFeatured on ScrollLaunchFeatured on ScrollLaunchFeatured on DailyPingsFeatured on DailyPingsFazier badgeFazier badgeFeatured on NewTool.siteFeatured on NewTool.siteFeatured on saasfame.comFeatured on saasfame.comDR Checker - Domain RatingDR Checker - Domain RatingListed on Turbo0Listed on Turbo0Launched on LaunchBoard - Product Launch PlatformLaunched on LaunchBoard - Product Launch PlatformList on SimilarlabsList on Similarlabshttps://codetrendy.comhttps://codetrendy.comListed on DevTool.ioFeatured on BuildlistFeatured on BuildlistLaunched on Tiny StartupsFeatured on ShowMeBestAIFeatured on ShowMeBestAIFind us on LaunchZoneFind us on LaunchZoneAllMCPs VerifiedAllMCPs VerifiedFeatured on Nick LaunchesFeatured on Nick LaunchesLaunch Llama NewsletterLaunch Llama NewsletterVerified DR - allmcps.comVerified DR - allmcps.comFeatured on SaaSGrowFeatured on SaaSGrowFeatured on Twelve ToolsFeatured on Twelve ToolsFeatured on Saaspa.geFeatured on Saaspa.geFeatured on Findly.toolsFeatured on Findly.toolsFeatured on Startup FameFeatured on Startup FameFeatured on LaunchKiwiFeatured on LaunchKiwiFeatured on ScrollLaunchFeatured on ScrollLaunchFeatured on DailyPingsFeatured on DailyPingsFazier badgeFazier badgeFeatured on NewTool.siteFeatured on NewTool.siteFeatured on saasfame.comFeatured on saasfame.comDR Checker - Domain RatingDR Checker - Domain RatingListed on Turbo0Listed on Turbo0Launched on LaunchBoard - Product Launch PlatformLaunched on LaunchBoard - Product Launch PlatformList on SimilarlabsList on Similarlabshttps://codetrendy.comhttps://codetrendy.comListed on DevTool.ioFeatured on BuildlistFeatured on BuildlistLaunched on Tiny StartupsFeatured on ShowMeBestAIFeatured on ShowMeBestAIFind us on LaunchZoneFind us on LaunchZone
Β© 2026 Jackalope Digital LLC. All rights reserved.
  1. Home
  2. πŸ’» Developer Tools
  3. OPC UA MCP Server
OPC UA MCP Server logo
Health: ActiveRecent health check succeeded.Last checked 9/7/2026, 10:56:15 PM

OPC UA MCP Server

User RatingsBe the first to rate and review this MCP server! Enrichment pendingWe haven’t run our AI enrichment pass on this listing yet, so the overview, use cases, and FAQ below may be sparse or missing. We work through the catalog over time β€” check back soon.
View Repository5 GitHub StarsTotal stargazers on GitHub for the source repository (5 stars).Visit Website

Read, write, browse, search, and subscribe to live data on an OPC-UA industrial automation server.

Quick Install

Automated & IDE Setup

Copy the AI prompt to install this server into Claude Code, Cursor, or another agent β€” or use 1-click editor setup below.

Add to CursorAdd to VS Code
Manual Client & Custom JSON ConfigExpand JSON β–Ύ

Client Config & Setup

Choose your client or environment
Target File:~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "opc-ua-mcp-server": {
      "command": "npx",
      "args": [
        "-y",
        "opc-ua-mcp-server"
      ]
    }
  }
}

πŸ’‘ Paste the JSON block into your client's configuration file under mcpServers, then restart the application.

Install Directory Badge Claim listing AlternativesπŸ’» More in Developer Tools

Documentation Overview

OPC-UA MCP Server

An MCP server that lets an LLM read, write, browse, search, and subscribe to live data on an OPC-UA industrial automation server - over stdio or HTTP, with a persistent cache and a searchable index of the address space built in.

https://github.com/user-attachments/assets/0b676e6e-17ce-42f5-918f-9a615e939008

Quick start

The fastest way to see it working end-to-end, using the bundled Microsoft OPC-UA test server and a public tunnel Claude can reach:

bash
git clone https://github.com/mwieczorkiewicz/opcua-mcp.git
cd opcua-mcp
make compose-up        # starts a test OPC-UA server, opcua-mcp, and a public HTTPS tunnel
make connector-url      # prints a URL like https://xyz.trycloudflare.com/mcp

Paste that URL into Claude at Settings β†’ Connectors β†’ Add custom connector, then ask it to browse the server or read a value. Stop with make compose-down when you're done - see docs/deployment.md for what that tunnel exposes and how to run against your own OPC-UA server instead.

Building and running locally

bash
go build -o opcua-mcp ./cmd/opcua-mcp.go

# stdio (default) - no OPC-UA connection until the client calls opcua_connect
./opcua-mcp

# HTTP - connects eagerly at startup
SERVER_TRANSPORT=http OPCUA_ENDPOINT=opc.tcp://localhost:4840 ./opcua-mcp

Requires Go 1.26+ and, optionally, Docker for the test server / containerized deployment.

What it does

  • Read / write node values, with type validation on writes so a mismatched value is rejected before it reaches the device.
  • Browse the address space one level at a time or recursively, and look nodes up by name instead of by node ID.
  • Subscribe to push-based live updates - subscriptions persist across restarts and are automatically re-established on reconnect.
  • Cache reads, browse results, and type info on disk (bbolt), so repeat lookups don't round-trip to the device; writes invalidate the relevant entry automatically.
  • Discover and search the address space in the background, indexed with Bleve for fuzzy/partial browse-name lookups.
  • Anonymous, username/password, or certificate auth, with configurable OPC-UA security policy and mode.

See docs/architecture.md for how the caching layer, subscription manager, and discovery index fit together.

MCP tools

ToolDescription
opcua_readRead one or more node values. Subscribed nodes are served from the live cache; others go live unless max_age_ms allows a cached value.
opcua_writeWrite a value to a node. Validates the value's type against the node before writing.
opcua_get_valueRead a single node's value - a convenience wrapper over opcua_read.
opcua_get_value_by_nameRead a value by browse name instead of node ID, via the discovery index.
opcua_browseList a node's immediate children.
opcua_browse_nodesRecursively browse from a node up to a depth limit, nesting children under their parent.
opcua_node_infoGet a node's metadata (data type, access level, etc.).
opcua_find_similar_nodesFuzzy-match browse names against the discovery index.
opcua_subscribeStart push-based updates for one or more nodes at a given interval.
opcua_unsubscribeCancel a subscription, by ID or by naming one of its nodes.
opcua_list_subscriptionsList active subscriptions.
opcua_connect / opcua_disconnectManage the connection explicitly (mainly relevant in stdio mode).
opcua_server_infoGet OPC-UA server metadata.
opcua_discovery_statsStats on the background discovery cache (node count, depth distribution, enabled flags).
opcua_force_discoveryTrigger an immediate discovery refresh instead of waiting for the next cycle.
opcua_debug_search / opcua_ensure_server_nodesDiagnostics for troubleshooting why a node isn't showing up in search.

MCP resources

ResourceDescription
opcua://node/{node_id}Node data, e.g. opcua://node/ns=2;i=1. Accepts a comma-separated list for multiple nodes.
opcua://serverOPC-UA server information.

Configuration

Configuration is loaded (via viper) from three sources, in ascending order of precedence:

  1. Built-in defaults (shown in the tables below).
  2. An optional config file - TOML, YAML, JSON, or any other format viper supports. By default ./config.{yaml,yml,toml,json,...} is read if present; point at an explicit path with CONFIG_FILE=/path/to/config.toml. A config file is entirely optional - env vars alone are still enough.
  3. Environment variables (SERVER_*, OPCUA_*, MCP_*, SEARCH_*, STORE_*) - always win over the config file, so existing env-var-only deployments keep working unchanged.

A config file mirrors the env var names, lowercased and nested under each prefix, e.g. SERVER_HTTP_PORT becomes:

yaml
server:
  http_port: "8080"

Server

VariableDefaultDescription
SERVER_TRANSPORTstdiostdio or http
SERVER_HTTP_PORT8080Port for HTTP transport
SERVER_LOG_LEVELinfodebug, info, warn, error
SERVER_LOG_FORMATjsonjson or text
SERVER_LOG_OUTPUTstdoutstdout, stderr, or file (forced to stderr in stdio mode, since stdout carries the MCP stream)
SERVER_LOG_FILE-Log file path, required if SERVER_LOG_OUTPUT=file
SERVER_LOG_ADD_SOURCEfalseAdd source file/line to log entries

OPC-UA connection

VariableDefaultDescription
OPCUA_ENDPOINTopc.tcp://localhost:4840Server endpoint
OPCUA_AUTH_MODEanonymousanonymous, username, or certificate
OPCUA_USERNAME / OPCUA_PASSWORD-Required if AUTH_MODE=username
OPCUA_CERT_FILE / OPCUA_KEY_FILE-Required if AUTH_MODE=certificate
OPCUA_SERVER_CERT-Server certificate file path
OPCUA_SECURITY_POLICYNoneNone, Basic128Rsa15, Basic256, Basic256Sha256, Aes128_Sha256_RsaOaep
OPCUA_SECURITY_MODENoneNone, Sign, SignAndEncrypt
OPCUA_REQUEST_TIMEOUT30sPer-request timeout
OPCUA_SESSION_TIMEOUT60sSession timeout
OPCUA_MAX_RETRIES3Connection retry attempts
OPCUA_RETRY_DELAY1sDelay between retries

MCP

VariableDefaultDescription
MCP_NAMEOPC-UA MCP ServerServer name reported to clients
MCP_VERSION1.0.0Server version reported to clients
MCP_ENABLE_TOOLStrueEnable tools
MCP_ENABLE_RESOURCEStrueEnable resources
MCP_ENABLE_PROMPTSfalseEnable prompts
MCP_HTTP_PATH/mcpHTTP endpoint path

Discovery and search

VariableDefaultDescription
SEARCH_ENABLE_DISCOVERYtrueEnable background node discovery
SEARCH_DISCOVERY_INTERVAL30sHow often to re-crawl the address space
SEARCH_DISCOVERY_ROOT_NODEi=85Root node to crawl from (Objects folder)
SEARCH_MAX_DISCOVERY_DEPTH10Maximum crawl depth
SEARCH_MAX_NODES_PER_BROWSE10000Cap on nodes returned per browse call
SEARCH_ENABLE_SEARCHtrueEnable the Bleve search index
SEARCH_INDEX_PATH./search_indexSearch index directory
SEARCH_MAX_RESULTS100Max results per search
SEARCH_MIN_SCORE0.1Minimum match score
SEARCH_ENABLE_CACHEtrueMaster switch for read-through caching. false makes every opcua_read/opcua_write/opcua_browse_nodes call go live, matching pre-cache behavior exactly

Persistent store

Backs read-through caching and subscription persistence with an on-disk bbolt database.

VariableDefaultDescription
STORE_DB_PATHmcp_opcua_store.dbDatabase file path
STORE_OPEN_TIMEOUT5sHow long to wait for the file lock on open
STORE_TYPEINFO_TTL24hFreshness window for cached type info
STORE_BROWSE_TTL5mFreshness window for cached browse results
STORE_BATCH_WINDOW25msHow often subscription notifications flush to the store
STORE_BATCH_MAX_ITEMS250Max notifications flushed per batch
STORE_NOTIFY_CHAN_BUFFER1024Buffer size for incoming subscription notifications

If the store fails to open (e.g. a stale lock from a prior ungraceful shutdown, or a read-only filesystem), the server logs a warning and keeps running with caching forced off and subscription tools returning an error - every other tool is unaffected.

Telemetry

opcua-mcp collects anonymous, aggregate usage telemetry (which tools get used, cache hit rate, error categories - never node IDs, endpoint URLs, node values, or credentials) to help prioritize maintenance of this open-source project. It's on by default; see docs/telemetry.md for exactly what is and isn't collected.

Opt out with either:

VariableEffect
DO_NOT_TRACK=1The cross-project community convention (consoledonottrack.com)
OPCUA_MCP_TELEMETRY=falseThis project's own switch

Docker

Terminal
docker build -t opcua-mcp .
docker run -p 8080:8080 -e SERVER_TRANSPORT=http -e OPCUA_ENDPOINT=opc.tcp://your-server:4840 opcua-mcp

Multi-stage build on Chainguard's minimal Go image, running from scratch - no shell, small attack surface. Mount ./search_index and ./mcp_opcua_store.db as volumes to persist discovery/cache/subscription state across restarts. Full auth-mode examples, the Compose dev stack, and the Claude-connector tunnel setup are in docs/deployment.md.

Development

Read the full README β†’View source on GitHub β†’

Related MCP Servers

View all in Developer Tools View all alternatives
  • Seatable logoSeatable

    MCP server for SeaTable β€” read, write, search, link, and query data in your bases

    πŸ’» Developer Tools0 views
    Compare vs Seatable β†’
  • Metabase logoMetabase

    Lets AI clients search, explore, query, and visualize data in a Metabase instance.

    πŸ’» Developer Tools0 views
    Compare vs Metabase β†’
  • T
    Tldraw

    Draw and visually collaborate with your agents on tldraw's canvas.

    πŸ’» Developer Tools0 views
    Compare vs Tldraw β†’
  • Legalize logoLegalize

    Official MCP connector for Legalize: read and search its whole open corpus, at any point in time.

    πŸ’» Developer Tools1 views
    Compare vs Legalize β†’

Reviews

No reviews yet β€” be the first to share how this listing worked for you.

Frequently Asked Questions about OPC UA MCP Server

Add the following block to your claude_desktop_config.json under mcpServers: "mcpServers": { "opc-ua-mcp-server": { "command": "npx", "args": ["-y", "OPC-UA MCP Server"] } }

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewOPC UA MCP Server AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/opc-ua-mcp-server?style=directory)](https://allmcps.com/mcp/opc-ua-mcp-server)
HTML Embed
<a href="https://allmcps.com/mcp/opc-ua-mcp-server"><img src="https://allmcps.com/api/badge/opc-ua-mcp-server?style=directory" alt="OPC UA MCP Server on AllMCPs" /></a>

Technical Specs & Signals

CategoryπŸ’»Developer Tools
More technical detailsExpand β–Ύ
TransportSTDIO
RuntimeNode.js
Last updatedSep 7, 2026
Views0
Unique ViewsTotal visits recorded for this listing page on AllMCPs.
Installs0
Installs & Copy ActionsTotal times users copied install commands or configuration snippets for this server.
GitHub stars5
GitHub Star CountTotal stargazers on GitHub representing community popularity (5 stars).
31Quality signal: Emerging Β· 31/100How this signal is calculated β–Ύ
Server availabilityNot measured

Not scored for repo-hosted servers β€” we can't reach the running server, only its GitHub page. Hosted MCP endpoints are health-checked live.

Verified ownership10/20
Documentation & tools11/30
Adoption & activity2/15
Community engagement0/10

A guidance signal from public completeness & health data β€” not a user rating. New listings start lower and rise as they add docs, get verified, and grow adoption. Signals we can't observe for a listing are skipped, not counted against it.

β˜… FeaturedMoxie Docs MCP logo

Moxie Docs MCP

MCP & Agent Skills for Automated Documentation, and codebase conventions + context

Explore Server β†’

Own this project?

This directory is pre-filled from public sources. Claim via GitHub README, site badge, or DNS TXT to unlock edit access and the Official badge β€” proof is checked automatically, then reviewed by our team.

Free dofollow backlink: add your website and place the AllMCPs badge on it β€” no claim needed. We detect it automatically and keep it verified as long as the badge stays live.

Claim & get free dofollow

Share & Embed

Add our SVG badge (dark/light directory styles) or embeddable widget to your site.

Explore more

More in πŸ’» Developer Tools β†’Best MCP servers for Developers β†’Alternatives to OPC UA MCP Server β†’Install in Claude DesktopInstall in CursorInstall in VS Code