Skip to main content
Glama
TIA Portal MCP Server

TIA Portal MCP Server

by BJM1122

TIA MCP Doctor

tia_doctor
Read-onlyIdempotent

Diagnoses TIA Portal capability readiness by checking installed files, policy gates and stale native binaries, then optionally validates project version adapters or starts a read-only core.

Instructions

Read-only capability diagnosis shared with the CLI: installed files, policy gates and stale native binaries. By default it attaches to nothing and starts nothing. Optional sections: projectPath or portalVersion adds environment (project path and version-adapter validation); liveCore=true starts the resident read-only core when absent and adds its version, uptime and attached session; onlineReport=true adds the online-monitoring boundary report.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "tia_doctor"
  }
}

Input Schema

NameRequiredDescriptionDefault
requireNoOptional capability that must be ready for ok=true.
liveCoreNo
timeoutMsNoOnly for liveCore.
projectPathNoExact project path to validate (.ap20, .ap15_1, .ap17). Versions other than V20 have snapshot export and block import only.
onlineReportNo
portalVersionNoVersion to validate when no project path is given.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.29.1

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly/idempotent/non-destructive, but the description adds a genuinely non-obvious side effect: liveCore=true will start the resident core process if it is absent, which an agent must know before setting the flag. It also scopes timeoutMs to liveCore only. It does not discuss cost, latency, or what happens on partial failure, so it is strong but not exhaustive.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the core purpose and the default no-attach/no-start guarantee before the optional sections are enumerated. The single long sentence with semicolon-separated clauses is dense but every clause carries information; a short bulleted list of the optional flags would read better without changing length.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 6-parameter diagnostic tool with no output schema, the description does the necessary work of outlining the return sections (environment, core version/uptime/sessions, online-monitoring report). The base report contents beyond the three named check areas are only implied, which is the one remaining gap in an otherwise complete definition.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 67% schema coverage, the description adds real meaning by explaining the effect of projectPath/portalVersion (environment section, version-adapter validation), liveCore (starts core, yields version/uptime/attached session) and onlineReport (boundary report). The `require` enum and timeoutMs are left entirely to the schema, which is a minor gap but acceptable given their inline descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific diagnostic action and enumerates exactly what it inspects: installed files, policy gates and stale native binaries. The 'read-only capability diagnosis' framing plus 'attaches to nothing and starts nothing' by default separates it cleanly from the HMI authoring/import siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives explicit conditions for each optional behavior: projectPath or portalVersion adds environment validation, liveCore=true starts the resident core when absent, onlineReport=true adds the monitoring boundary report. It does not name an alternative tool for any of these needs (e.g. when to prefer a live-session tool over liveCore), so it stops just short of full routing guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.