Publish curated MobilityOps source snapshot

This commit is contained in:
Jens committed 2026-09-29 22:03:33 +02:00
commit 7adc072f5e
317 files changed
+48851

No files matched your search

+35
View File
@@ -0,0 +1,35 @@
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://example.test/schemas/mobilityops-events-v1.json",
"title": "MobilityOps event envelope",
"type": "object",
"required": ["event_id", "event_type", "occurred_at", "correlation_id", "aggregate", "data"],
"properties": {
"event_id": {"type": "string", "format": "uuid"},
"event_type": {"const": "vehicle.returned.v1"},
"occurred_at": {"type": "string", "format": "date-time"},
"correlation_id": {"type": "string"},
"aggregate": {
"type": "object",
"required": ["type", "id", "public_ref"],
"properties": {
"type": {"const": "booking"},
"id": {"type": "string", "format": "uuid"},
"public_ref": {"type": "string"}
},
"additionalProperties": false
},
"data": {
"type": "object",
"required": ["vehicle_ref", "inspection_ref", "resulting_vehicle_status", "attention_reasons"],
"properties": {
"vehicle_ref": {"type": "string"},
"inspection_ref": {"type": "string"},
"resulting_vehicle_status": {"enum": ["cleaning", "maintenance", "blocked"]},
"attention_reasons": {"type": "array", "items": {"type": "string"}}
},
"additionalProperties": false
}
},
"additionalProperties": false
}
+79
View File
@@ -0,0 +1,79 @@
{
"_note": "Fleet Ops's own published tool contract. The live ITWorx MCP Hub connector (ITWorx_MCP_Hub repo, connectors/mobilityops/) wraps these under its own dotted namespace (mobilityops.operations.summary, .attention.list, .vehicle.get, .knowledge.search) -- that naming is Hub-owned. deprecated_aliases below are Fleet Ops's own prior internal audit-label names, kept only so existing clients/dashboards referencing them don't break.",
"provider_id": "mobilityops",
"version": "1.2.0",
"required_scope": "mobilityops.read",
"authentication": {
"service_header": "X-Service-Token",
"client_header": "X-Client-Id",
"client_pattern": "^itworx-mcp-hub:(readiness|mobilityops:[A-Za-z0-9][A-Za-z0-9._:-]{0,127})$",
"optional_tenant_header": "X-Tenant-Id",
"tenant_must_match": "northstar-mobility-demo"
},
"observability": {
"response_headers": ["X-Correlation-Id", "X-Tenant-Id", "Cache-Control"],
"knowledge_response_headers": ["X-Sources-Available", "X-Sources-Returned"]
},
"tools": [
{
"name": "fleet_ops_get_operations_summary",
"deprecated_aliases": ["mobilityops_get_operations_summary"],
"description": "Return current high-level vehicle, data-quality and workflow counts for the synthetic Fleet Ops demo tenant.",
"read_only": true,
"inputSchema": {"type": "object", "additionalProperties": false},
"endpoint": {"method": "GET", "path": "/api/v1/integrations/mcp/operations-summary"}
},
{
"name": "fleet_ops_list_attention_vehicles",
"deprecated_aliases": ["mobilityops_list_attention_vehicles"],
"description": "List vehicles that require operational attention, optionally filtered by minimum severity and date.",
"read_only": true,
"inputSchema": {
"type": "object",
"properties": {
"minimum_severity": {"enum": ["low", "medium", "high"], "default": "medium"},
"date": {"type": "string", "format": "date"},
"limit": {"type": "integer", "minimum": 1, "maximum": 50, "default": 20}
},
"additionalProperties": false
},
"endpoint": {"method": "GET", "path": "/api/v1/integrations/mcp/attention-vehicles"}
},
{
"name": "fleet_ops_get_vehicle_details",
"deprecated_aliases": ["mobilityops_get_vehicle_details"],
"description": "Return a read-only operational view of one vehicle by its stable public reference.",
"read_only": true,
"inputSchema": {
"type": "object",
"required": ["vehicle_ref"],
"properties": {"vehicle_ref": {"type": "string", "pattern": "^MO-[0-9]{3}$"}},
"additionalProperties": false
},
"endpoint": {"method": "GET", "path": "/api/v1/integrations/mcp/vehicles/{vehicle_ref}"}
},
{
"name": "fleet_ops_search_knowledge",
"deprecated_aliases": ["mobilityops_search_knowledge"],
"description": "Search versioned Fleet Ops internal procedures through the dedicated RAGcore workspace and return grounded source references.",
"read_only": true,
"inputSchema": {
"type": "object",
"required": ["question"],
"properties": {
"question": {"type": "string", "minLength": 3, "maxLength": 1000},
"max_sources": {"type": "integer", "minimum": 1, "maximum": 8, "default": 4},
"locale": {"enum": ["nl-BE", "en-GB", "fr-BE"], "default": "en-GB"}
},
"additionalProperties": false
},
"endpoint": {"method": "POST", "path": "/api/v1/integrations/mcp/search-knowledge"},
"routing": {
"preferred": "ragcore",
"tenant": "northstar-mobility-demo",
"workspace": "mobilityops",
"collection": "internal-procedures"
}
}
]
}
File diff suppressed because it is too large. Load diff
+13
View File
@@ -0,0 +1,13 @@
# RAGcore contract assumptions
RAGcore is being built separately, so Claude must inspect its actual exposed API before finalizing the adapter. Do not edit RAGcore from this repository.
The MobilityOps adapter needs only these capabilities:
1. health/status;
2. synchronize or ingest a document with stable ID and metadata;
3. ask/search within one tenant/workspace/collection;
4. receive source document ID, title, version, section and excerpt;
5. distinguish unavailable from insufficient evidence.
When the actual RAGcore API differs, adapt MobilityOps behind `KnowledgeProvider`; do not leak RAGcore-specific response shapes into UI/domain code.