Model Context Protocol (MCP) server for managing Asset Administration Shells (AAS) via Eclipse BaSyx
SaferSkills independently audited Aas Mcp (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
<div align="center"> <img src="https://raw.githubusercontent.com/SmartFactory-KL/aas-mcp/main/docs/images/logo-aas-mcp-purple-500.png" alt="aas-mcp"> </div>
<div align="center"> <a href="https://pypi.org/project/aas-mcp"><img src="https://img.shields.io/pypi/v/aas-mcp?color=%2334D058" alt="PyPI - Version"></a> <a href="https://github.com/astral-sh/ruff"><img src="https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json" alt="Ruff"></a> </div>
aas-mcp is a Model Context Protocol (MCP) server that provides AI assistants with tools to interact with Asset Administration Shells (AAS) via the Eclipse BaSyx REST API.
This MCP server enables AI assistants to perform full CRUD operations on AAS Shells, Submodels, and Submodel Elements, making it ideal for industrial automation, digital twin management, and AAS-based workflows.
pip install aas-mcpRequires: Python 3.10+
# Start the MCP server
aas-mcpThe MCP server provides 25+ tools for AAS management:
#### Shell Management
get_shells - Retrieve all AAS Shellsget_shell - Get a specific Shell by IDcreate_shell - Create a new Shellupdate_shell - Update an existing Shelldelete_shell - Delete a Shell#### Submodel Management
get_submodels - Retrieve all Submodelsget_submodel - Get a specific Submodel by IDcreate_submodel - Create a new Submodelupdate_submodel - Update an existing Submodeldelete_submodel - Delete a Submodelget_submodel_value - Get Submodel raw valueupdate_submodel_value - Update Submodel valueget_submodel_metadata - Get Submodel metadata#### Submodel Element Management
get_submodel_elements - Get all elements from a Submodelget_submodel_element - Get a specific element by pathcreate_submodel_element - Create a new elementupdate_submodel_element - Update an existing elementdelete_submodel_element - Delete an elementget_submodel_element_value - Get element raw valueupdate_submodel_element_value - Update element value#### Reference Management
get_submodel_refs - Get Submodel references from a Shellcreate_submodel_ref - Create a Submodel referencedelete_submodel_ref - Delete a Submodel reference#### Health & Monitoring
get_health_status - Check AAS environment healthis_healthy - Boolean health checkTo use this server with MCP clients like Claude Desktop, add it to your client's configuration:
{
"mcpServers": {
"aas-mcp": {
"command": "aas-mcp",
"env": {
"SHELLSMITH_BASYX_ENV_HOST": "http://localhost:8081"
}
}
}
}ℹ️ Change the value of SHELLSMITH_BASYX_ENV_HOST to match your BaSyx Environment host URLThe configuration format is similar for other MCP clients like LM Studio.
The MCP server connects to an Eclipse BaSyx environment. The default host is:
http://localhost:8081You can override it in several ways:
export SHELLSMITH_BASYX_ENV_HOST=https://your-host:1234.env file in your working directory with: SHELLSMITH_BASYX_ENV_HOST=https://your-host:1234Each tool also accepts a host parameter to override the default configuration dynamically.
We welcome contributions! Please see our contributing guidelines for setup, testing, and coding standards.
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.