github Python re-analysis due

AIops-tools/OT-AIops

github
maintainer
AIops-tools
license
MIT
first seen
2026-06-28
last seen
2026-06-28
releases · 30d
0
short id

Drift inferred · capture-to-capture

No drift recorded — single capability capture; advisories appear once its surface changes.

capabilities 173 tools
transport stdio · streamable-http · http · sse verified reported listed in the official MCP registry counts 173 tools · 0 res · 0 prompts permission surface via code analysis

tools

  • adopt_alias_map
  • alarm_bad_actors
  • alarm_cascade
  • alarm_flood_analysis
  • alarm_rationalization_worksheet
  • anomaly_scan
  • asset_inventory
  • bacnet_cov_subscribe
  • bacnet_discover
  • bacnet_object_list
  • bacnet_read_points
  • bacnet_read_property
  • bacnet_read_trend_log
  • bacnet_write_property
  • bas_alarm_list
  • bas_command
  • bas_point_list
  • bas_point_read
  • bas_trend_read
  • baseline_check
  • baseline_learn
  • baseline_record_change
  • baseline_status
  • changeover_analysis
  • compliance_dengbao_levels
  • compliance_evidence_bundle
  • compliance_frameworks
  • compliance_mapping
  • compliance_report
  • control_loop_health
  • cross_protocol_asset_model
  • data_quality_fleet_rollup
  • data_quality_scorecard
  • defect_pareto
  • diagnose_dataflow
  • diff_alias_map
  • disinfection_ct
  • downtime_events
  • downtime_root_cause
  • downtime_root_cause_live
  • downtime_triage
  • economizer_check
  • eip_controller_info
  • eip_list_tags
  • eip_read_many
  • eip_read_tag
  • eip_write_tag
  • ethercat_master_state
  • ethercat_read_pdo
  • ethercat_read_sdo
  • ethercat_set_state
  • ethercat_slave_info
  • ethercat_slaves
  • ethercat_write_sdo
  • export_data
  • fins_cpu_info
  • fins_cpu_status
  • fins_read_bits
  • fins_read_many
  • fins_read_words
  • fins_write_words
  • fleet_incidents
  • fleet_status
  • hart_burst_listen
  • hart_burst_sample
  • hart_device_identity
  • hart_dynamic_variables
  • hart_primary_variable
  • health_summary
  • heartbeat_health
  • heat_exchanger_fouling
  • historian_coverage
  • historian_health
  • historian_push
  • historian_query
  • ignition_alarm_status
  • ignition_gateway_status
  • ignition_tag_browse
  • ignition_tag_history
  • ignition_tag_read
  • iolink_device_info
  • iolink_master_info
  • iolink_ports
  • iolink_read_isdu
  • iolink_read_pdin
  • iolink_scan
  • isolation_room_check
  • learn_cause_weights
  • line_bottleneck
  • mc_cclink_link_read
  • mc_cclink_network_health
  • mc_cclink_templates
  • mc_cpu_status
  • mc_read_bits
  • mc_read_many
  • mc_read_words
  • mc_write_words
  • medical_gas_check
  • modbus_apply_template
  • modbus_detect_byte_order
  • modbus_health_summary
  • modbus_list_templates
  • modbus_read_coils
  • modbus_read_discrete
  • modbus_read_holding
  • modbus_read_input
  • monitor_changes
  • mqtt_publish
  • mqtt_read_topic
  • mtconnect_assets
  • mtconnect_current
  • mtconnect_oee_snapshot
  • mtconnect_probe
  • mtconnect_sample
  • oee_compute
  • oee_multidim
  • opcua_alarm_events
  • opcua_anomaly_scan
  • opcua_browse
  • opcua_diagnose_connection
  • opcua_discover_tags
  • opcua_health_summary
  • opcua_read_alarms
  • opcua_read_history
  • opcua_read_many
  • opcua_read_node
  • opcua_server_info
  • opcua_subscribe_sample
  • or_environment_check
  • pdm_forecast
  • plc_program_outline
  • plc_program_section
  • plc_program_visibility
  • plc_program_xref
  • profinet_asset_inventory
  • profinet_dcp_set
  • profinet_discover
  • profinet_identify_station
  • profinet_station_params
  • protocols_supported
  • pv_performance
  • rca_corpus_from_maintenance
  • rca_narrate
  • s7_cpu_info
  • s7_read_area
  • s7_read_db
  • s7_read_many
  • s7_write_db
  • secsgem_equipment_status
  • secsgem_list_alarms
  • secsgem_list_equipment_constants
  • secsgem_list_process_programs
  • secsgem_list_status_variables
  • secsgem_read_equipment_constants
  • secsgem_read_status_variables
  • sortation_health
  • sparkplug_decode_payload
  • sparkplug_live_schema
  • sparkplug_node_list
  • sparkplug_subscribe_sample
  • spc_check
  • stream_publish
  • stream_publish_event
  • subscription_health
  • tag_health
  • uns_browse
  • uns_live_audit
  • uns_live_drift
  • uns_publish
  • uns_schema_drift
  • uns_topic_audit
  • water_quality_compliance
  • zone_comfort
skills & danger signals github-tarball
code evidence vv0.1.1 · github-tarball
evidence-backed findings quoted directly from the published source artifact — not inferred

code files: 465

filesystem 85

  • fs industrial-aiops-industrial-aiops-9a80fba/iaiops/cli/_common.py :8 from pathlib import Path
  • fs industrial-aiops-industrial-aiops-9a80fba/iaiops/cli/analytics.py :10 from pathlib import Path
  • fs industrial-aiops-industrial-aiops-9a80fba/iaiops/cli/collect.py :18 from pathlib import Path
  • fs industrial-aiops-industrial-aiops-9a80fba/iaiops/cli/compliance.py :14 from pathlib import Path
  • fs industrial-aiops-industrial-aiops-9a80fba/iaiops/cli/diagnostics.py :10 from pathlib import Path
  • fs industrial-aiops-industrial-aiops-9a80fba/iaiops/cli/export.py :12 from pathlib import Path
  • fs industrial-aiops-industrial-aiops-9a80fba/iaiops/cli/mqtt.py :6 from pathlib import Path
  • fs industrial-aiops-industrial-aiops-9a80fba/iaiops/cli/oee.py :19 from pathlib import Path
  • fs industrial-aiops-industrial-aiops-9a80fba/iaiops/cli/program.py :11 from pathlib import Path
  • fs industrial-aiops-industrial-aiops-9a80fba/iaiops/cli/readiness.py :14 from pathlib import Path
  • fs industrial-aiops-industrial-aiops-9a80fba/iaiops/cli/scan.py :24 from pathlib import Path
  • fs industrial-aiops-industrial-aiops-9a80fba/iaiops/cli/store.py :18 from pathlib import Path
  • fs industrial-aiops-industrial-aiops-9a80fba/iaiops/connectors/ethercat/transport.py :53 master.open(target.nic or target.host)
  • fs industrial-aiops-industrial-aiops-9a80fba/iaiops/connectors/hart/transport.py :127 def open(self) -> None:
  • fs industrial-aiops-industrial-aiops-9a80fba/iaiops/core/brain/alias_store.py :24 from pathlib import Path
  • fs industrial-aiops-industrial-aiops-9a80fba/iaiops/core/brain/baseline_store.py :19 from pathlib import Path
  • fs industrial-aiops-industrial-aiops-9a80fba/iaiops/core/brain/hvac.py :12 the damper is wide open (dragging hot/humid air in).
  • fs industrial-aiops-industrial-aiops-9a80fba/iaiops/core/brain/plc_program/outline.py :12 from pathlib import Path
  • fs industrial-aiops-industrial-aiops-9a80fba/iaiops/core/collect/session.py :30 from pathlib import Path
  • fs industrial-aiops-industrial-aiops-9a80fba/iaiops/core/discovery/guard.py :29 from pathlib import Path
  • fs industrial-aiops-industrial-aiops-9a80fba/iaiops/core/discovery/passive.py :32 from pathlib import Path
  • fs industrial-aiops-industrial-aiops-9a80fba/iaiops/core/governance/approvals.py :23 from pathlib import Path
  • fs industrial-aiops-industrial-aiops-9a80fba/iaiops/core/governance/audit.py :24 from pathlib import Path
  • fs industrial-aiops-industrial-aiops-9a80fba/iaiops/core/governance/evidence.py :17 from pathlib import Path
  • fs industrial-aiops-industrial-aiops-9a80fba/iaiops/core/governance/forward.py :31 from pathlib import Path
  • fs industrial-aiops-industrial-aiops-9a80fba/iaiops/core/governance/paths.py :11 from pathlib import Path
  • fs industrial-aiops-industrial-aiops-9a80fba/iaiops/core/governance/patterns.py :34 from pathlib import Path
  • fs industrial-aiops-industrial-aiops-9a80fba/iaiops/core/governance/policy.py :14 from pathlib import Path
  • fs industrial-aiops-industrial-aiops-9a80fba/iaiops/core/governance/undo.py :34 from pathlib import Path
  • fs industrial-aiops-industrial-aiops-9a80fba/iaiops/core/knowledge/case_store.py :31 from pathlib import Path
  • fs industrial-aiops-industrial-aiops-9a80fba/iaiops/core/knowledge/store.py :18 from pathlib import Path
  • fs industrial-aiops-industrial-aiops-9a80fba/iaiops/core/retain/prune.py :27 from pathlib import Path
  • fs industrial-aiops-industrial-aiops-9a80fba/iaiops/core/runtime/config.py :32 from pathlib import Path
  • fs industrial-aiops-industrial-aiops-9a80fba/iaiops/core/runtime/connection.py :172 connect=lambda client, target: client.open(),
  • fs industrial-aiops-industrial-aiops-9a80fba/iaiops/core/runtime/secretstore.py :38 from pathlib import Path
  • fs industrial-aiops-industrial-aiops-9a80fba/iaiops/core/sink/export.py :14 from pathlib import Path
  • fs industrial-aiops-industrial-aiops-9a80fba/iaiops/core/sink/iotdb.py :47 self._session.open(False)
  • fs industrial-aiops-industrial-aiops-9a80fba/iaiops/core/sink/prometheus.py :17 from pathlib import Path
  • fs industrial-aiops-industrial-aiops-9a80fba/iaiops/core/sink/reader.py :27 from pathlib import Path
  • fs industrial-aiops-industrial-aiops-9a80fba/iaiops/core/sink/scan_store.py :30 from pathlib import Path
  • fs industrial-aiops-industrial-aiops-9a80fba/iaiops/core/sink/sqlite_local.py :20 from pathlib import Path
  • fs industrial-aiops-industrial-aiops-9a80fba/mcp_server/_shared.py :18 from pathlib import Path
  • fs industrial-aiops-industrial-aiops-9a80fba/mcp_server/profiles.py :29 from pathlib import Path
  • fs industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/alarm_tools.py :232 with path.open("w", newline="", encoding="utf-8") as fh:
  • fs industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/export_tools.py :11 from pathlib import Path
  • fs (weak) industrial-aiops-industrial-aiops-9a80fba/tests/conftest.py :15 from pathlib import Path
  • fs (weak) industrial-aiops-industrial-aiops-9a80fba/tests/eip_plc_harness.py :11 Layers implemented, in the order ``LogixDriver.open()`` drives them:
  • fs (weak) industrial-aiops-industrial-aiops-9a80fba/tests/harness_process.py :31 from pathlib import Path
  • fs (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_airgap_compose.py :12 from pathlib import Path
  • fs (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_alarm_flood.py :333 with dest.open(newline="", encoding="utf-8") as fh:
  • fs (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_brain_is_llm_free.py :24 from pathlib import Path
  • fs (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_discovery_end_to_end.py :22 import shutil
  • fs (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_discovery_passive.py :19 from pathlib import Path
  • fs (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_discovery_passive_live.py :20 import shutil
  • fs (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_discovery_safety.py :283 from pathlib import Path
  • fs (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_discovery_sweep_filtered_live.py :22 import shutil
  • fs (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_egress_gate.py :36 from pathlib import Path
  • fs (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_eip.py :31 def open(self):
  • fs (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_eip_live.py :5 ``LogixDriver.open()`` alone performs a five-step session dance before a single
  • fs (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_eip_pccc_live.py :27 from pathlib import Path
  • fs (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_entrypoints.py :16 from pathlib import Path
  • fs (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_envelope_gate.py :14 from pathlib import Path
  • fs (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_ethercat.py :77 def open(self, nic):
  • fs (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_export.py :48 with out.open(newline="", encoding="utf-8") as fh:
  • fs (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_export_tools.py :9 from pathlib import Path
  • fs (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_hart.py :199 def open(self) -> None:
  • fs (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_historian_read.py :235 def open(self, _enable_rpc_compression: bool) -> None:
  • fs (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_margo_package.py :22 from pathlib import Path
  • fs (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_mc_live.py :27 from pathlib import Path
  • fs (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_mcp_second_impl_live.py :28 import shutil
  • fs (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_modbus_rtu_live.py :36 import shutil
  • fs (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_opcua_cert_trust_live.py :40 from pathlib import Path
  • fs (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_opcua_security.py :21 from pathlib import Path
  • fs (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_output_path_guard.py :26 import pathlib
  • fs (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_patterns.py :11 from pathlib import Path
  • fs (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_plc_program.py :11 from pathlib import Path
  • fs (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_protocol_consistency.py :19 from pathlib import Path
  • fs (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_pv.py :3 from pathlib import Path
  • fs (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_s7_live.py :29 from pathlib import Path
  • fs (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_secretstore.py :11 from pathlib import Path
  • fs (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_secsgem_live.py :28 from pathlib import Path
  • fs (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_skill_sync.py :19 from pathlib import Path
  • fs (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_tsdb_live.py :101 session.open(False)
  • fs (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_undo.py :13 from pathlib import Path
  • fs (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_water_edition.py :15 from pathlib import Path

shell / exec 13

  • shell industrial-aiops-industrial-aiops-9a80fba/iaiops/core/discovery/passive.py :30 import subprocess # nosec B404 — reads the local kernel ARP cache; see _run
  • shell (weak) industrial-aiops-industrial-aiops-9a80fba/tests/harness_process.py :25 import subprocess
  • shell (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_discovery_end_to_end.py :23 import subprocess
  • shell (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_discovery_passive_live.py :21 import subprocess
  • shell (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_discovery_sweep_filtered_live.py :23 import subprocess
  • shell (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_entrypoints.py :13 import subprocess
  • shell (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_mcp_http_live.py :26 import subprocess
  • shell (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_mcp_second_impl_live.py :29 import subprocess
  • shell (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_modbus_rtu_live.py :38 import subprocess # nosec B404 — spawns the local `socat` helper only, no shell
  • shell (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_opcua_cert_trust_live.py :37 import subprocess
  • shell (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_opcua_diagnostics.py :158 import subprocess
  • shell (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_profiles.py :10 import subprocess
  • shell (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_secretstore.py :9 import subprocess

network 49

  • net industrial-aiops-industrial-aiops-9a80fba/demo/oee-line/simulate_line.py :27 import socket
  • net industrial-aiops-industrial-aiops-9a80fba/iaiops/connectors/bas/client.py :19 from urllib.parse import quote
  • net industrial-aiops-industrial-aiops-9a80fba/iaiops/connectors/fins/client.py :24 import socket
  • net industrial-aiops-industrial-aiops-9a80fba/iaiops/connectors/hart/transport.py :19 import socket
  • net industrial-aiops-industrial-aiops-9a80fba/iaiops/connectors/ignition/client.py :21 from urllib.parse import quote
  • net industrial-aiops-industrial-aiops-9a80fba/iaiops/connectors/iolink/client.py :40 import requests
  • net industrial-aiops-industrial-aiops-9a80fba/iaiops/connectors/mtconnect/ops.py :83 import requests
  • net industrial-aiops-industrial-aiops-9a80fba/iaiops/connectors/opcua/diagnostics.py :16 import socket
  • net industrial-aiops-industrial-aiops-9a80fba/iaiops/connectors/opcua/transport.py :42 from urllib.parse import urlparse
  • net industrial-aiops-industrial-aiops-9a80fba/iaiops/core/discovery/runner.py :27 import socket
  • net industrial-aiops-industrial-aiops-9a80fba/iaiops/core/discovery/sweep.py :27 import socket
  • net industrial-aiops-industrial-aiops-9a80fba/iaiops/core/governance/forward.py :27 import socket
  • net industrial-aiops-industrial-aiops-9a80fba/iaiops/core/llm/ollama.py :32 import requests
  • net industrial-aiops-industrial-aiops-9a80fba/iaiops/core/runtime/url_guard.py :38 from urllib.parse import SplitResult, urlsplit
  • net industrial-aiops-industrial-aiops-9a80fba/iaiops/core/sink/influxdb.py :59 import requests
  • net (weak) industrial-aiops-industrial-aiops-9a80fba/tests/eip_plc_harness.py :40 import socket
  • net (weak) industrial-aiops-industrial-aiops-9a80fba/tests/mc_plc_harness.py :49 import socket
  • net (weak) industrial-aiops-industrial-aiops-9a80fba/tests/profinet_dcp_station.py :32 import socket
  • net (weak) industrial-aiops-industrial-aiops-9a80fba/tests/s7_plc_harness.py :48 import socket
  • net (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_discovery_preview.py :226 import socket
  • net (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_discovery_sweep.py :5 ``socket.socket`` listener matrix proves the actual connect path works against
  • net (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_discovery_sweep_filtered_live.py :35 import socket, subprocess, sys, threading, time
  • net (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_egress_live.py :26 import socket
  • net (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_eip_live.py :35 import socket
  • net (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_eip_pccc_live.py :24 import socket
  • net (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_fins.py :14 import socket
  • net (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_forward_security.py :6 import urllib.request
  • net (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_hart.py :13 import socket
  • net (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_iolink.py :14 from urllib.parse import parse_qs, unquote, urlparse
  • net (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_mc_live.py :25 import socket
  • net (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_mcp_http_live.py :25 import socket
  • net (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_modbus_tcp_live.py :33 import socket
  • net (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_mqtt_retained_undo.py :23 import socket
  • net (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_mtconnect.py :171 import requests
  • net (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_mtconnect_live.py :31 from urllib.parse import parse_qs, urlparse
  • net (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_opcua_alarm_events.py :11 import socket
  • net (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_opcua_diagnostics.py :6 import socket
  • net (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_opcua_discovery.py :11 import socket
  • net (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_opcua_endpoints_live.py :20 import socket
  • net (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_opcua_security.py :20 import socket
  • net (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_opcua_server.py :12 import socket
  • net (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_opcua_thirdparty_live.py :29 import socket
  • net (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_plcnext_route.py :20 import socket
  • net (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_prometheus_exporter.py :10 import urllib.error
  • net (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_readiness.py :81 import socket
  • net (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_s7_live.py :26 import socket
  • net (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_secsgem_live.py :26 import socket
  • net (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_tsdb_live.py :31 import socket
  • net (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_uns_live_integration.py :22 import socket

secrets 5

  • secrets industrial-aiops-industrial-aiops-9a80fba/iaiops/cli/init.py :10 import getpass
  • secrets industrial-aiops-industrial-aiops-9a80fba/iaiops/cli/secret.py :9 import getpass
  • secrets industrial-aiops-industrial-aiops-9a80fba/iaiops/core/governance/audit.py :16 import getpass
  • secrets industrial-aiops-industrial-aiops-9a80fba/iaiops/core/governance/forward.py :112 self._token = token if token is not None else os.environ.get("IAIOPS_FORWARD_TOKEN", "")
  • secrets industrial-aiops-industrial-aiops-9a80fba/iaiops/core/runtime/secretstore.py :30 import getpass

database 12

  • db industrial-aiops-industrial-aiops-9a80fba/iaiops/core/governance/audit.py :21 import sqlite3
  • db industrial-aiops-industrial-aiops-9a80fba/iaiops/core/governance/undo.py :30 import sqlite3
  • db industrial-aiops-industrial-aiops-9a80fba/iaiops/core/retain/prune.py :25 import sqlite3
  • db industrial-aiops-industrial-aiops-9a80fba/iaiops/core/sink/export.py :13 import sqlite3
  • db industrial-aiops-industrial-aiops-9a80fba/iaiops/core/sink/prometheus.py :14 import sqlite3
  • db industrial-aiops-industrial-aiops-9a80fba/iaiops/core/sink/scan_store.py :28 import sqlite3
  • db industrial-aiops-industrial-aiops-9a80fba/iaiops/core/sink/sqlite_local.py :17 import sqlite3
  • db (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_audit_integrity.py :6 import sqlite3
  • db (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_cli_scan.py :21 import sqlite3
  • db (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_export.py :11 import sqlite3
  • db (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_prometheus_exporter.py :9 import sqlite3
  • db (weak) industrial-aiops-industrial-aiops-9a80fba/tests/test_scan_store.py :17 import sqlite3

tool registrations 173

  • alarm_flood_analysis industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/alarm_tools.py :62
  • alarm_cascade industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/alarm_tools.py :140
  • alarm_rationalization_worksheet industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/alarm_tools.py :186
  • adopt_alias_map industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/alias_store_tools.py :19
  • diff_alias_map industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/alias_store_tools.py :56
  • health_summary industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/analysis_tools.py :27
  • anomaly_scan industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/analysis_tools.py :50
  • cross_protocol_asset_model industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/asset_model_tools.py :16
  • asset_inventory industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/asset_tools.py :15
  • bacnet_discover industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/bacnet_tools.py :18
  • bacnet_object_list industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/bacnet_tools.py :35
  • bacnet_read_property industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/bacnet_tools.py :54
  • bacnet_read_points industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/bacnet_tools.py :83
  • bacnet_cov_subscribe industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/bacnet_tools.py :105
  • bacnet_read_trend_log industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/bacnet_tools.py :150
  • bacnet_write_property industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/bacnet_tools.py :205
  • bas_point_list industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/bas_tools.py :21
  • bas_point_read industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/bas_tools.py :54
  • bas_alarm_list industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/bas_tools.py :85
  • bas_trend_read industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/bas_tools.py :111
  • bas_command industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/bas_tools.py :166
  • baseline_learn industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/baseline_tools.py :22
  • baseline_check industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/baseline_tools.py :51
  • baseline_record_change industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/baseline_tools.py :80
  • baseline_status industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/baseline_tools.py :104
  • economizer_check industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/building_tools.py :15
  • zone_comfort industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/building_tools.py :56
  • isolation_room_check industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/clinical_tools.py :17
  • medical_gas_check industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/clinical_tools.py :55
  • or_environment_check industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/clinical_tools.py :83
  • compliance_mapping industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/compliance_tools.py :29
  • compliance_frameworks industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/compliance_tools.py :49
  • compliance_dengbao_levels industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/compliance_tools.py :68
  • compliance_report industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/compliance_tools.py :90
  • compliance_evidence_bundle industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/compliance_tools.py :153
  • historian_push industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/compliance_tools.py :189
  • diagnose_dataflow industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/diagnostics_tools.py :17
  • historian_health industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/diagnostics_tools.py :54
  • alarm_bad_actors industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/diagnostics_tools.py :79
  • tag_health industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/diagnostics_tools.py :111
  • subscription_health industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/diagnostics_tools.py :135
  • downtime_root_cause industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/diagnostics_tools.py :178
  • downtime_root_cause_live industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/diagnostics_tools.py :255
  • learn_cause_weights industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/diagnostics_tools.py :314
  • rca_corpus_from_maintenance industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/diagnostics_tools.py :351
  • data_quality_scorecard industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/diagnostics_tools.py :393
  • data_quality_fleet_rollup industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/diagnostics_tools.py :423
  • heartbeat_health industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/diagnostics_tools.py :462
  • downtime_triage industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/downtime_tools.py :19
  • stream_publish industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/egress_tools.py :22
  • uns_publish industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/egress_tools.py :83
  • stream_publish_event industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/egress_tools.py :149
  • eip_controller_info industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/eip_tools.py :20
  • eip_list_tags industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/eip_tools.py :40
  • eip_read_tag industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/eip_tools.py :64
  • eip_read_many industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/eip_tools.py :85
  • eip_write_tag industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/eip_tools.py :128
  • ethercat_master_state industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/ethercat_tools.py :20
  • ethercat_slaves industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/ethercat_tools.py :40
  • ethercat_slave_info industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/ethercat_tools.py :57
  • ethercat_read_sdo industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/ethercat_tools.py :76
  • ethercat_read_pdo industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/ethercat_tools.py :102
  • ethercat_write_sdo industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/ethercat_tools.py :143
  • ethercat_set_state industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/ethercat_tools.py :200
  • export_data industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/export_tools.py :37
  • spc_check industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/fab_tools.py :16
  • defect_pareto industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/fab_tools.py :52
  • changeover_analysis industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/factory_tools.py :15
  • fins_cpu_info industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/fins_tools.py :15
  • fins_cpu_status industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/fins_tools.py :31
  • fins_read_words industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/fins_tools.py :47
  • fins_read_bits industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/fins_tools.py :71
  • fins_read_many industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/fins_tools.py :97
  • fins_write_words industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/fins_tools.py :139
  • fleet_status industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/fleet_tools.py :15
  • fleet_incidents industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/fleet_tools.py :43
  • hart_device_identity industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/hart_tools.py :17
  • hart_primary_variable industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/hart_tools.py :32
  • hart_dynamic_variables industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/hart_tools.py :46
  • hart_burst_sample industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/hart_tools.py :61
  • hart_burst_listen industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/hart_tools.py :84
  • historian_query industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/historian_tools.py :24
  • historian_coverage industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/historian_tools.py :68
  • ignition_gateway_status industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/ignition_tools.py :22
  • ignition_tag_browse industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/ignition_tools.py :56
  • ignition_tag_read industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/ignition_tools.py :89
  • ignition_alarm_status industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/ignition_tools.py :122
  • ignition_tag_history industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/ignition_tools.py :148
  • iolink_master_info industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/iolink_tools.py :14
  • iolink_ports industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/iolink_tools.py :34
  • iolink_device_info industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/iolink_tools.py :56
  • iolink_read_pdin industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/iolink_tools.py :74
  • iolink_read_isdu industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/iolink_tools.py :93
  • iolink_scan industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/iolink_tools.py :115
  • rca_narrate industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/llm_tools.py :34
  • mc_cpu_status industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/mc_tools.py :15
  • mc_read_words industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/mc_tools.py :31
  • mc_read_bits industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/mc_tools.py :49
  • mc_read_many industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/mc_tools.py :67
  • mc_cclink_templates industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/mc_tools.py :89
  • mc_cclink_link_read industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/mc_tools.py :106
  • mc_cclink_network_health industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/mc_tools.py :133
  • mc_write_words industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/mc_tools.py :179
  • modbus_read_holding industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/modbus_tools.py :10
  • modbus_read_input industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/modbus_tools.py :27
  • modbus_read_coils industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/modbus_tools.py :44
  • modbus_read_discrete industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/modbus_tools.py :58
  • modbus_detect_byte_order industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/modbus_tools.py :72
  • modbus_list_templates industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/modbus_tools.py :100
  • modbus_apply_template industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/modbus_tools.py :108
  • modbus_health_summary industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/modbus_tools.py :128
  • monitor_changes industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/monitor_tools.py :14
  • mtconnect_probe industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/mtconnect_tools.py :14
  • mtconnect_current industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/mtconnect_tools.py :34
  • mtconnect_sample industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/mtconnect_tools.py :52
  • mtconnect_assets industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/mtconnect_tools.py :111
  • mtconnect_oee_snapshot industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/mtconnect_tools.py :127
  • oee_compute industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/oee_tools.py :15
  • downtime_events industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/oee_tools.py :93
  • oee_multidim industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/oee_tools.py :119
  • opcua_server_info industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/opcua_tools.py :18
  • opcua_browse industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/opcua_tools.py :30
  • opcua_read_node industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/opcua_tools.py :44
  • opcua_read_many industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/opcua_tools.py :57
  • opcua_subscribe_sample industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/opcua_tools.py :70
  • opcua_read_alarms industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/opcua_tools.py :92
  • opcua_alarm_events industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/opcua_tools.py :112
  • opcua_read_history industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/opcua_tools.py :145
  • opcua_diagnose_connection industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/opcua_tools.py :176
  • opcua_discover_tags industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/opcua_tools.py :197
  • opcua_health_summary industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/opcua_tools.py :230
  • opcua_anomaly_scan industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/opcua_tools.py :251
  • protocols_supported industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/overview_tools.py :31
  • pdm_forecast industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/pdm_tools.py :16
  • plc_program_outline industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/plc_program_tools.py :24
  • plc_program_xref industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/plc_program_tools.py :56
  • plc_program_section industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/plc_program_tools.py :107
  • plc_program_visibility industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/plc_program_tools.py :131
  • control_loop_health industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/process_tools.py :16
  • heat_exchanger_fouling industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/process_tools.py :63
  • profinet_discover industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/profinet_tools.py :19
  • profinet_identify_station industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/profinet_tools.py :42
  • profinet_station_params industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/profinet_tools.py :60
  • profinet_asset_inventory industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/profinet_tools.py :77
  • profinet_dcp_set industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/profinet_tools.py :122
  • pv_performance industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/renewables_tools.py :15
  • s7_cpu_info industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/s7_tools.py :15
  • s7_read_area industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/s7_tools.py :32
  • s7_read_db industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/s7_tools.py :63
  • s7_read_many industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/s7_tools.py :85
  • s7_write_db industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/s7_tools.py :123
  • secsgem_equipment_status industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/secsgem_tools.py :15
  • secsgem_list_status_variables industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/secsgem_tools.py :29
  • secsgem_read_status_variables industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/secsgem_tools.py :41
  • secsgem_list_equipment_constants industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/secsgem_tools.py :54
  • secsgem_read_equipment_constants industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/secsgem_tools.py :66
  • secsgem_list_alarms industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/secsgem_tools.py :79
  • secsgem_list_process_programs industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/secsgem_tools.py :91
  • sparkplug_decode_payload industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/sparkplug_tools.py :18
  • mqtt_read_topic industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/sparkplug_tools.py :50
  • sparkplug_subscribe_sample industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/sparkplug_tools.py :79
  • sparkplug_node_list industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/sparkplug_tools.py :110
  • uns_browse industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/sparkplug_tools.py :136
  • mqtt_publish industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/sparkplug_tools.py :207
  • uns_topic_audit industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/sparkplug_tools.py :249
  • uns_schema_drift industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/sparkplug_tools.py :281
  • uns_live_audit industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/sparkplug_tools.py :304
  • sparkplug_live_schema industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/sparkplug_tools.py :348
  • uns_live_drift industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/sparkplug_tools.py :378
  • line_bottleneck industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/warehouse_tools.py :17
  • sortation_health industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/warehouse_tools.py :50
  • disinfection_ct industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/water_tools.py :16
  • water_quality_compliance industrial-aiops-industrial-aiops-9a80fba/mcp_server/tools/water_tools.py :46

declared dependencies 27

  • mcp@>=1.10,<2.0
  • typer@>=0.12,<1.0
  • rich@>=13.0,<16.0
  • pyyaml@>=6.0,<7.0
  • python-dotenv@>=1.0,<2.0
  • cryptography@>=42.0
  • asyncua@>=2.0,<3
  • pyopenssl@>=25
  • pymodbus@>=3.5,<4
  • pyserial@>=3.5
  • pyS7@>=2.8,<3
  • pymcprotocol@>=0.3,<1
  • pycomm3@>=1.2,<2
  • requests@>=2.31,<3
  • iaiops@*
  • paho-mqtt@>=2.0,<3
  • protobuf@>=4.25,<8
  • secsgem@>=0.3,<1
  • pysoem@>=1.1,<2
  • pnio-dcp@>=1.1,<3
  • BAC0@>=2023.6,<2026
  • hart-protocol@>=2023.6,<2025
  • taospy@>=2.7,<3
  • taos-ws-py@>=0.3,<1
  • apache-iotdb@>=1.0,<3
  • nats-py@>=2.6,<3
  • pyarrow@>=15,<22