About Tia Portal Openness Mcpserver
Tia Portal Openness Mcpserver is an MCP server in the Developer Tools category: tIA Portal Openness MCP Server. It has been installed 0 times through Conduid.
Install
git clone https://github.com/chewcw/tia-portal-openness-mcpserverThis server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.
Ask AI
Ask AI about Tia Portal Openness Mcpserver
Powered by Claude · Grounded in docs
Security checks
- ·README presentNot checked yet.
- ·License declaredNot checked yet.
- ·Tests presentNot checked yet.
- ·Dependencies pinnedNot checked yet.
- ·No dynamic code executionNot checked yet.
- ·Scoped permissionsNot checked yet.
README
TIA Portal Openness MCP Server
MCP (Model Context Protocol) server for Siemens TIA Portal Openness, plus a companion CLI for release installation and updates.
What this repository contains
TiaPortalMcpServer/: C# MCP server (target framework:net48) exposing TIA Portal engineering operations as MCP tools.TiaPortalMcpServer.Tests/: unit and integration tests for tool contracts and server behavior.cli/: TypeScript CLI for installing server releases and managing companion skills.
Key capabilities
The server provides tool groups for:
- project lifecycle (
projects_create,projects_open,projects_open_with_upgrade,projects_save,projects_close,projects_get_session_info) - hardware and device management (
devices_list,devices_create,devices_delete,devices_get_attributes,devices_set_attribute,devices_get_app_id,devices_set_app_id,devices_search_catalog) - device item management (
deviceitems_list,deviceitems_get_attributes,deviceitems_plug_move,deviceitems_copy,deviceitems_delete,catalog_search_device_items) - PLC software and block operations (
software_add_block,blocks_list,software_get_block_hierarchy) - tag and tag-table management (
tags_create,tags_list,tags_tagtable_create,tags_tagtable_list,tags_tagtable_get,tags_tagtable_delete,tags_tagtable_export,tags_tagtable_open_editor,tags_group_create,tags_group_list,tags_group_find,tags_group_delete,tags_group_system_get,tags_constants_user_list,tags_constants_system_list) - advanced block operations (external sources, ProDiag, UDTs, types, editor helpers — 19 tools in
BlocksTools) - compilation (
compilation_project,compilation_software) - file import and validation (
files_read_csv,files_read_excel,files_list_sheets,files_validate_format,files_get_info) - HMI targets (
hmi_targets_list,hmi_targets_get,hmi_targets_validate) - sampling/LLM-assisted operations (
sampling_generate_code,sampling_summarize_project,sampling_get_suggestions) - elicitation and utility helpers (
utilities_elicit_user_input,utilities_get_project_info,utilities_list_libraries)
All active tools are declared in TiaPortalMcpServer/Tools/.
Runtime model
- Transport: MCP over
stdio. - Host process: .NET console app using
Microsoft.Extensions.Hosting. - Tool discovery: attribute-based (
[McpServerToolType],[McpServerTool]). - Logging: Serilog to stderr and rolling file logs (
TiaPortalMcpServer/logs/).
Requirements
- Windows machine.
- Siemens TIA Portal V20 installed and licensed.
- User account in the
TIA Portal Openness Usersgroup. - .NET Framework 4.8 runtime/developer pack (for building/running
net48project).
Build and run
From repository root:
dotnet build tia-portal-openness-mcpserver.sln
dotnet run --project TiaPortalMcpServer/TiaPortalMcpServer.csproj
Test
dotnet test TiaPortalMcpServer.Tests/TiaPortalMcpServer.Tests.csproj
Unit tests only:
dotnet test TiaPortalMcpServer.Tests/TiaPortalMcpServer.Tests.csproj --filter "Category!=Integration"
Integration tests only:
dotnet test TiaPortalMcpServer.Tests/TiaPortalMcpServer.Tests.csproj --filter "Category=Integration"
MCP Inspector
npx @modelcontextprotocol/inspector dotnet run --project TiaPortalMcpServer/TiaPortalMcpServer.csproj
CLI quick start
The companion CLI is in cli/ and is intended for npm/npx workflows.
npx @chewcw/tia-portal-openness-mcpserver install --server-version v1.0.0
Environment variables used by the CLI:
GITHUB_TOKEN(optional): token for authenticated GitHub API access.TIA_MCP_INSTALL_DIR(optional): override default install directory.TIA_MCP_AGENT_TYPE(optional): override agent type detection.TIA_MCP_SKILLS_PATH(optional): override skills installation path.
The CLI auto-detects the agent type from OPENCODE_SESSION_ID, OPENCODE_ROOT, CLAUDE_AGENT_METADATA_FILE, or CURSOR_SESSION_ID.
See cli/README.md for full CLI contract and options.
Configuration
Server configuration lives in TiaPortalMcpServer/appsettings.json.
Current keys include:
MCP:Host,MCP:Port(general MCP endpoint settings)FileHandling:MaxFileSizeMB,FileHandling:AllowedRootPathsSeriloglogging levels and sinks
CI/build constraint
This project depends on Siemens Openness assemblies and cannot be built from public NuGet packages alone on generic hosted runners.
Siemens.Engineering.dllmust be resolvable via installed TIA Portal V20 orTiaPortalLocation.- For CI, use a self-hosted Windows runner with TIA Portal V20 installed (or provide the required private assembly bundle).
Repository layout
.
|- TiaPortalMcpServer/ # MCP server
|- TiaPortalMcpServer.Tests/ # tests
|- cli/ # release/install CLI
|- Taskfile.yml # convenience tasks (inspector/tests)
`- tia-portal-openness-mcpserver.sln
README mirrored from the source repository 5 months ago. The original is authoritative.