Skip to content

Agentic Data Space Railway X

lenahoffmeier edited this page Jul 8, 2026 · 3 revisions

Description

The workshop shows how AI assistants such as Copilot, Claude, IDE-based agents or chatbot clients interact with a Tractus-X-based data space. The session uses Railway-X as the demonstration context and focuses on how an AI client can access data space capabilities without replacing the existing Industry Core Hub and REST-based integration layer.

It follows a practical structure: it starts with the fundamentals of the Model Context Protocol, the Industry Core Hub and the Railway-X scenario. It then moves into a Copilot demo and self-exploration, where participants connect an AI client to Railway-X. The final part discusses current limitations, productive use cases and architecture options for future agentic data spaces.

Responsible, Contact Person

Prerequisites/Requirements

  1. A running IC-Hub instance (v0.7.0+) with the MCP KIT addon enabled.

  2. An API key or Keycloak credentials for IC-Hub authentication.

  3. An MCP-compatible AI client (Claude Desktop, Claude Code, or Cursor)

Technical Architecture

The architecture combines three primary layers:

Layer Technical Role
AI Client User-facing interface such as Copilot, Claude, IDE agents or custom chatbots
MCP Server Model-facing interface exposing tools, resources and prompts
Industry Core Hub Central domain component containing business logic, configuration and authentication

The overall interaction pattern is:

User
  ↓
AI Client (Copilot / Claude / Agent)
  ↓
MCP Server
  ↓
Industry Core Hub Backend
  ↓
EDC & Data Space Services

The Industry Core Hub remains the central system component. MCP acts as a thin abstraction layer that allows AI agents to discover and invoke capabilities already provided by the hub.

REST APIs versus MCP Tools

One key message of the workshop is that MCP does not replace REST APIs. Instead, MCP introduces an AI-oriented interaction model.

Aspect REST API MCP Tools
Consumer Applications, dashboards, partner systems LLM-based AI agents
Discovery Developers read documentation beforehand Models discover tools at runtime
Contract OpenAPI / Swagger Tool descriptions + JSON schema
Operation Style CRUD-oriented endpoints Intent-oriented actions
Example GET /parts/{id}/twin get_digital_twin(part_id)

The REST API continues to serve as the system of record, while MCP provides an intent-based layer that makes the same business capabilities accessible to LLMs.

MCP Tool Coverage and Data Space Operations

The following table maps the available MCP tools to the underlying data space or local IC-Hub operation. It clarifies whether a tool triggers a data space interaction, reads or writes local IC-Hub data, or orchestrates multiple steps across DTR, EDC and HTTP transfer.

MCP Tool DSP Operation Notes
list_known_partners Local database read No data space call — reads the IC-Hub partner registry.
list_partner_twins DTR catalog request EDC negotiation followed by a partner DTR query for twin shells.
get_twin_details DTR shell lookup EDC negotiation followed by a specific AAS shell descriptor fetch.
list_twin_submodels DTR submodel descriptors EDC negotiation followed by listing submodel descriptors, without payload transfer.
fetch_submodel Submodel HTTP transfer EDC contract negotiation, then data transfer over HTTP.
fetch_partner_dpp DPP submodel transfer Auto-discovers the DPP submodel descriptor, then performs EDC + HTTP transfer.
fetch_dpp Local submodel server read No EDC — reads DPPs hosted by this IC-Hub.
fetch_partner_catalog EDC catalog request Connector Discovery by BPNL, then a DSP catalog request per EDC endpoint. Returns datasets and raw ODRL policies.
fetch_partner_asset DSP negotiation + transfer Connector Discovery, full contract negotiation for an asset_id, EDR token retrieval, then data-plane fetch.
list_my_catalog_parts Local database read No data space call — reads the IC-Hub catalog registry.
get_session_summary In-memory session state No calls — returns entities accumulated in this session.
create_catalog_part Local database write Creates a catalog part entry with status draft. No data space call.
update_catalog_part Local database write Updates catalog part metadata. No data space call.
create_serialized_part Local database write Creates a serialized part instance. Auto-creates missing catalog parts and partner mappings.
share_catalog_part DTR + EDC orchestration 8-step flow: partner → agreement → twin → DTR registration → EDC asset → policy → contract → PartTypeInformation aspect.
register_business_partner Local database write Registers a partner entry. No data space call.
create_catalog_part_twin DTR shell registration Registers a PartType AAS shell descriptor in the DTR.
create_serialized_part_twin DTR shell + aspect creation Registers a PartInstance shell and auto-creates SerialPart V3 aspect.
attach_twin_aspect Submodel upload + DTR registration Uploads submodel payload and registers the descriptor in the DTR shell.
share_dpp DTR twin sharing Shares a DPP twin with a business partner via twin exchange.

Challenges and Current Limitations

The workshop explicitly highlights several limitations of the current architecture.

Challenge Technical Description Required Improvement
Hallucinations LLMs may generate incorrect results Validation and guardrails
Submodel correctness Generated submodels are not validated Automated schema and semantic validation
Policy handling Policies are automatically accepted Policy evaluation and approval workflows
Retry behavior Models do not retry failed operations Workflow orchestration and recovery mechanisms
Context consumption MCP tools continuously consume context Context optimization strategies
Missing business semantics Agents understand structure but not meaning Ontology-based semantic layer

Particularly important is the distinction between technical interoperability and business understanding. While MCP enables technical access to data space services, agents still require additional contextual understanding to interpret data correctly.

Six Eclipse Tractus-X Community Days

Fifth Eclipse Tractus-X Community Days

Fourth Eclipse Tractus-X Community Days

General

Working with KITs

Working with the Webpage

Clone this wiki locally