ampel
AmpelOracle — 50-tool compliance traffic-light: Go/Caution/Stop signals for ESG, MiCA, AML.
Should I use this
Quality & Safety
Findings (7)
- LOWin gap_report
- LOWin evidence_summary
- LOWin create_entity
- LOWin bridge_report
- LOWin azure_ad_check
- LOWin health_check
- LOWin bus_status
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.
Install
One-Click Install
Add this to your `claude_desktop_config.json` file:
{
"mcpServers": {
"ampel": {
"url": "https://tooloracle.io/ampel/mcp/"
}
}
}Remote endpoints
https://tooloracle.io/ampel/mcp/streamable-httpWhat it can do
Tool inventory
Tools (50)
🟢readiness_check(entity_id)
Full DORA readiness score + Ampel per article. Returns GREEN/YELLOW/RED/GREY for all 26 articles, score 0-100, days until deadline.
Input Schema
{
"type": "object",
"properties": {
"entity_id": {
"type": "string",
"description": "Entity ID (optional)"
}
},
"additionalProperties": false
}🟢article_status(article, entity_id)
Detailed Ampel for a specific DORA article. Each check with GREEN/YELLOW/RED conditions and evidence.
Input Schema
{
"type": "object",
"properties": {
"article": {
"type": "string",
"description": "e.g. Art. 28"
},
"entity_id": {
"type": "string",
"description": "Entity ID"
}
},
"additionalProperties": false
}⚪gap_report(entity_id)
DORA compliance gaps. RED/GREY/YELLOW items with priority and required actions.
Input Schema
{
"type": "object",
"properties": {
"entity_id": {
"type": "string",
"description": "Entity ID (optional)"
}
},
"additionalProperties": false
}⚪evidence_summary(entity_id)
All evidence artefacts for an entity with hashes and expiry dates.
Input Schema
{
"type": "object",
"properties": {
"entity_id": {
"type": "string",
"description": "Entity ID (optional)"
}
},
"additionalProperties": false
}⚪collect_art10(entity_id)
Collect live Art. 10 evidence from NVD, CISA KEV, CERT-Bund. Auto-assesses.
Input Schema
{
"type": "object",
"properties": {
"entity_id": {
"type": "string",
"description": "Entity ID (optional)"
}
},
"additionalProperties": false
}🟢entity_list
List all registered regulated entities.
Input Schema
{
"type": "object",
"properties": {},
"additionalProperties": false
}🟡create_entity(name, entity_type, lei, jurisdiction)
Register a new regulated entity.
Input Schema
{
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Entity name"
},
"entity_type": {
"type": "string",
"description": "Type"
},
"lei": {
"type": "string"
},
"jurisdiction": {
"type": "string"
}
},
"additionalProperties": false
}⚪audit_trail(entity_id, limit)
Chain-linked audit log with integrity check.
Input Schema
{
"type": "object",
"properties": {
"entity_id": {
"type": "string"
},
"limit": {
"type": "integer",
"description": "Max entries"
}
},
"additionalProperties": false
}⚪generate_report(entity_id, format)
Generate data-driven DORA Ampel PDF report. Score, gap analysis, provider register, audit trail integrity.
Input Schema
{
"type": "object",
"properties": {
"entity_id": {
"type": "string",
"description": "Entity ID (optional)"
},
"format": {
"type": "string",
"description": "json (meta) or pdf (download)",
"default": "json"
}
},
"additionalProperties": false
}🟢freshness_check(entity_id)
Run freshness watchdog. Expires stale evidence, downgrades GREEN->YELLOW->GREY if evidence too old.
Input Schema
{
"type": "object",
"properties": {
"entity_id": {
"type": "string",
"description": "Entity ID (optional, checks all)"
}
},
"additionalProperties": false
}⚪bridge_report(entity_id)
Bridge gap analysis: classifies gaps by DATA/EVIDENCE/POLICY/WORKFLOW with closure path, owner, effort level.
Input Schema
{
"type": "object",
"properties": {
"entity_id": {
"type": "string",
"description": "Entity ID (optional)"
}
},
"additionalProperties": false
}⚪register_provider(provider_name, provider_type, criticality, headquarters, lei, ...)
Register an ICT third-party provider for DORA Art. 28 Register of Information. Stores provider data and creates evidence.
Input Schema
{
"type": "object",
"properties": {
"provider_name": {
"type": "string",
"description": "Provider name e.g. Amazon Web Services EMEA SARL"
},
"provider_type": {
"type": "string",
"description": "cloud_infrastructure, saas_application, core_banking, cybersecurity, etc."
},
"criticality": {
"type": "string",
"description": "critical, important, standard"
},
"headquarters": {
"type": "string",
"description": "Country e.g. Luxembourg, Germany"
},
"lei": {
"type": "string",
"description": "Legal Entity Identifier"
},
"services": {
"type": "string",
"description": "Services provided"
},
"data_location": {
"type": "string",
"description": "Where data is stored e.g. EU (Frankfurt)"
},
"contract_start": {
"type": "string"
},
"contract_end": {
"type": "string"
},
"annual_cost_eur": {
"type": "number"
},
"substitutability": {
"type": "string"
},
"certifications": {
"type": "string"
},
"entity_id": {
"type": "string"
}
},
"additionalProperties": false
}🟢check_contract(provider_id, standard_clauses, cif_clauses, is_cif, exit_strategy, ...)
Check DORA Art. 30 contract clauses for a provider. Returns PASS/WARN/BLOCK with missing clauses and bridge classification.
Input Schema
{
"type": "object",
"properties": {
"provider_id": {
"type": "string",
"description": "Provider ID"
},
"standard_clauses": {
"type": "array",
"items": {
"type": "string"
},
"description": "Present standard clauses: service_description, data_location, data_protection, service_availability_sla, incident_notification, audit_right, termination_notice, cooperation_with_authorities"
},
"cif_clauses": {
"type": "array",
"items": {
"type": "string"
},
"description": "CIF clauses if applicable"
},
"is_cif": {
"type": "boolean",
"description": "Is this a CIF (Critical/Important Function) provider?"
},
"exit_strategy": {
"type": "boolean",
"description": "Exit strategy documented?"
},
"entity_id": {
"type": "string"
}
},
"additionalProperties": false
}⚪assess_all(entity_id)
Re-run full assessment for an entity. Recomputes Ampel statuses from all available evidence.
Input Schema
{
"type": "object",
"properties": {
"entity_id": {
"type": "string",
"description": "Entity ID (optional)"
}
},
"additionalProperties": false
}⚪onboard_entity(entity_id)
Full entity onboarding: creates initial RED assessments for all 39 checks, collects auto-evidence from live sources, re-assesses, and returns readiness score.
Input Schema
{
"type": "object",
"properties": {
"entity_id": {
"type": "string",
"description": "Entity ID to onboard"
}
},
"additionalProperties": false
}⚪bridge_resolve(check_id, entity_id, expiry_days)
Start bridge resolution workflow. Generates templates (Risk Acceptance, Contract Renegotiation, Concentration Policy, Exit Strategy), tracks approval process. Call bridge_approve to sign off.
Input Schema
{
"type": "object",
"properties": {
"check_id": {
"type": "string",
"description": "Check to resolve: art30_c1, art30_c2, art30_c3, art8_c3, art31_c1"
},
"entity_id": {
"type": "string",
"description": "Entity ID (optional)"
},
"expiry_days": {
"type": "integer",
"description": "Days until resolution expires (default 30)"
}
},
"additionalProperties": false
}⚪bridge_approve(resolution_id, approved_by, reject, rejection_reason)
Approve or reject a bridge resolution. On approval: creates signed evidence, upgrades Ampel to GREEN, logs to audit chain.
Input Schema
{
"type": "object",
"properties": {
"resolution_id": {
"type": "string",
"description": "Resolution ID from bridge_resolve"
},
"approved_by": {
"type": "string",
"description": "Name + role of approver (e.g. Dr. Mueller, CISO)"
},
"reject": {
"type": "boolean",
"description": "Set true to reject instead of approve"
},
"rejection_reason": {
"type": "string",
"description": "Reason for rejection (if rejecting)"
}
},
"additionalProperties": false
}🟢bridge_status(entity_id)
Check status of all bridge resolution workflows for an entity. Shows open, pending, closed, rejected.
Input Schema
{
"type": "object",
"properties": {
"entity_id": {
"type": "string",
"description": "Entity ID (optional)"
}
},
"additionalProperties": false
}⚪reg_watchdog(days_back)
AI Regulatory Watchdog: scrapes EBA/ESMA/BaFin/CERT-Bund for DORA updates. Returns alerts with affected articles and severity. Run daily via cron or on-demand.
Input Schema
{
"type": "object",
"properties": {
"days_back": {
"type": "integer",
"description": "Check items from last N days (default: 7)"
}
},
"additionalProperties": false
}🟢azure_ad_check(force_refresh)
Live Azure AD integration: MFA registration %, risky users, conditional access policies. DORA Art. 9 evidence. Requires Azure AD config in integrations_config.json.
Input Schema
{
"type": "object",
"properties": {
"force_refresh": {
"type": "boolean",
"description": "Force fresh API call (default true)"
}
},
"additionalProperties": false
}🟡servicenow_sync(days_back)
ServiceNow incident + change management sync. DORA Art. 17/21 evidence. Returns 30-day incident stats, classification, resolution rates.
Input Schema
{
"type": "object",
"properties": {
"days_back": {
"type": "integer",
"description": "Days to look back (default 30)"
}
},
"additionalProperties": false
}🟢llm_clause_check(contract_text, provider_name)
LLM-based DORA Art. 30 contract analysis. Paste contract text, get clause-by-clause PRESENT/PARTIAL/MISSING for all 15 mandatory clauses. Uses Claude API.
Input Schema
{
"type": "object",
"properties": {
"contract_text": {
"type": "string",
"description": "Contract text (plain text from PDF). Paste key sections."
},
"provider_name": {
"type": "string",
"description": "Provider name e.g. Salesforce"
}
},
"additionalProperties": false
}⚪cross_oracle_assess(entity_id, checks)
Enterprise cross-oracle assessment. Runs 18 checks across CyberShield (NIS2/ISO 27001), SupplyChainOracle (LkSG/CSRD), HealthGuard (MDR/GDPR), CFOCoPilot (XRechnung), TaxOracle (DAC6), LegalTechOracle (DORA contracts). Auto-stores evidence and updates Ampel status.
Input Schema
{
"type": "object",
"properties": {
"entity_id": {
"type": "string",
"description": "Entity to assess"
},
"checks": {
"type": "string",
"description": "Comma-separated check IDs or omit for all"
}
},
"additionalProperties": false
}🟢health_check
Server + DB status.
Input Schema
{
"type": "object",
"properties": {},
"additionalProperties": false
}⚪ping
Quick connectivity test.
Input Schema
{
"type": "object",
"properties": {},
"additionalProperties": false
}⚪bus_status(entity_id)
Oracle Event Bus status: events, cross-refs, connected oracles.
Input Schema
{
"type": "object",
"properties": {
"entity_id": {
"type": "string",
"description": "Entity ID for cross-refs"
}
},
"additionalProperties": false
}🟢escalation_status(entity_id)
Get findings, SLA breaches, escalation status per entity.
Input Schema
{
"type": "object",
"properties": {
"entity_id": {
"type": "string",
"description": "Entity ID (empty=all)"
}
},
"additionalProperties": false
}🟡run_escalation
Trigger escalation engine: auto-create findings, check SLA, escalate.
Input Schema
{
"type": "object",
"properties": {},
"additionalProperties": false
}⚪whatif_provider(entity_id, provider_name)
Simulate provider failure: which articles/checks are affected, score impact, risk level.
Input Schema
{
"type": "object",
"properties": {
"entity_id": {
"type": "string",
"description": "Entity ID"
},
"provider_name": {
"type": "string",
"description": "Provider name (e.g. AWS, Finastra)"
}
},
"additionalProperties": false
}🟢whatif_stale(entity_id, check_id, days)
Simulate stale evidence: what happens if a check stays stale for N days.
Input Schema
{
"type": "object",
"properties": {
"entity_id": {
"type": "string",
"description": "Entity ID"
},
"check_id": {
"type": "string",
"description": "Check ID"
},
"days": {
"type": "integer",
"description": "Days stale (default 30)"
}
},
"additionalProperties": false
}⚪board_summary(entity_id)
Executive board summary: overall score, top 5 risks, overdue findings, SLA breaches, concentration risk, evidence health, owner workload. Designed for management/board reporting.
Input Schema
{
"type": "object",
"properties": {
"entity_id": {
"type": "string",
"description": "Entity ID"
}
},
"additionalProperties": false
}🟡update_finding(finding_id, action, owner, remediation_plan, accepted_by, ...)
Update finding lifecycle: claim, set remediation plan, request re-test, close, or accept risk. Status flow: open -> in_progress -> retest_pending -> closed | risk_accepted.
Input Schema
{
"type": "object",
"properties": {
"finding_id": {
"type": "string",
"description": "Finding ID"
},
"action": {
"type": "string",
"description": "claim | plan | request_retest | close | accept_risk"
},
"owner": {
"type": "string",
"description": "New owner (for claim)"
},
"remediation_plan": {
"type": "string",
"description": "Remediation plan text (for plan)"
},
"accepted_by": {
"type": "string",
"description": "Name (for accept_risk)"
},
"expiry_days": {
"type": "integer",
"description": "Risk acceptance expiry days (default 90)"
},
"reason": {
"type": "string",
"description": "Close reason (for close)"
},
"actor": {
"type": "string",
"description": "Who is performing this action"
}
},
"additionalProperties": false
}⚪retest_finding(finding_id)
Re-test a finding: collect fresh evidence, reassess check, auto-close if GREEN. Full closed-loop.
Input Schema
{
"type": "object",
"properties": {
"finding_id": {
"type": "string",
"description": "Finding ID to re-test"
}
},
"additionalProperties": false
}⚪score_trend(entity_id)
Score trend over time: weekly deltas, trajectory, peer benchmark. Shows improvement or decline.
Input Schema
{
"type": "object",
"properties": {
"entity_id": {
"type": "string",
"description": "Entity ID"
}
},
"additionalProperties": false
}⚪dependency_graph(entity_id)
Full provider dependency graph: providers, systems, checks, blast radius, SPOF detection.
Input Schema
{
"type": "object",
"properties": {
"entity_id": {
"type": "string",
"description": "Entity ID"
}
},
"additionalProperties": false
}⚪incident_flow(entity_id, action, title, description, severity, ...)
DORA incident lifecycle: log, classify, notify (BaFin), close. Each step creates signed evidence.
Input Schema
{
"type": "object",
"properties": {
"entity_id": {
"type": "string",
"description": "Entity ID"
},
"action": {
"type": "string",
"description": "log | classify | notify | close"
},
"title": {
"type": "string"
},
"description": {
"type": "string"
},
"severity": {
"type": "string"
},
"incident_id": {
"type": "string"
},
"classification": {
"type": "string"
},
"report_type": {
"type": "string"
},
"root_cause": {
"type": "string"
},
"lessons_learned": {
"type": "string"
}
},
"additionalProperties": false
}⚪evidence_pack(entity_id, article, check_id)
Export evidence pack for article/check/entity. Pruefer-ready: evidence, assessments, findings, audit trail, signatures.
Input Schema
{
"type": "object",
"properties": {
"entity_id": {
"type": "string",
"description": "Entity ID"
},
"article": {
"type": "string",
"description": "DORA article e.g. Art. 10"
},
"check_id": {
"type": "string",
"description": "Specific check ID"
}
},
"additionalProperties": false
}⚪provider_country_risk(entity_id)
Enrich provider dependencies with OECD economic risk: GDP, unemployment, CLI per provider country. DORA Art. 28-31 relevant.
Input Schema
{
"type": "object",
"properties": {
"entity_id": {
"type": "string",
"description": "Entity ID"
}
},
"additionalProperties": false
}🟡contract_upload(entity_id, provider_name, contract_text, file_name, document_type)
Upload contract text for DORA Art. 30 analysis. Creates document record with SHA-256 hash, version tracking, audit trail.
Input Schema
{
"type": "object",
"properties": {
"entity_id": {
"type": "string",
"description": "Entity ID"
},
"provider_name": {
"type": "string",
"description": "Provider name"
},
"contract_text": {
"type": "string",
"description": "Contract text (extracted from PDF)"
},
"file_name": {
"type": "string",
"description": "Original file name"
},
"document_type": {
"type": "string",
"description": "ict_outsourcing_agreement | dpa | sla | master_service_agreement"
}
},
"additionalProperties": false
}🟢contract_analyze(document_id)
Analyze contract against 15 DORA Art. 30 mandatory clauses. Returns compliance status per clause with confidence score, extracted text, gap reasoning, suggested fix.
Input Schema
{
"type": "object",
"properties": {
"document_id": {
"type": "string",
"description": "Document ID from contract_upload"
}
},
"additionalProperties": false
}⚪contract_status(entity_id)
Overview of all analyzed contracts per entity. Shows clause gaps, review status, document versions.
Input Schema
{
"type": "object",
"properties": {
"entity_id": {
"type": "string",
"description": "Entity ID"
}
},
"additionalProperties": false
}🟢cross_regulation_check(entity_id)
Tag findings with cross-regulation impact (DORA + MiCA + AMLR). Shows which DORA findings also affect MiCA insider info or AMLR screening.
Input Schema
{
"type": "object",
"properties": {
"entity_id": {
"type": "string",
"description": "Entity ID"
}
},
"additionalProperties": false
}🟢regulation_impact(dora_article)
Show cross-regulation impacts for a specific DORA article. Maps DORA → MiCA + AMLR.
Input Schema
{
"type": "object",
"properties": {
"dora_article": {
"type": "string",
"description": "DORA article ID (e.g. dora_art28)"
}
},
"additionalProperties": false
}⚪bafin_report_draft(entity_id, incident_id, report_type, title, description, ...)
Generate ITS 2024/1772 compliant BaFin incident report draft. All mandatory fields per DORA Art. 19/20. Preview mode — requires board approval.
Input Schema
{
"type": "object",
"properties": {
"entity_id": {
"type": "string"
},
"incident_id": {
"type": "string"
},
"report_type": {
"type": "string",
"description": "initial | intermediate | final"
},
"title": {
"type": "string"
},
"description": {
"type": "string"
},
"classification": {
"type": "string",
"description": "major | significant | minor"
},
"affected_services": {
"type": "string"
},
"affected_clients": {
"type": "string"
},
"root_cause": {
"type": "string"
},
"remediation": {
"type": "string"
}
},
"additionalProperties": false
}🟡bafin_approve_send(entity_id, report_id, approver_name, approver_role)
Approve BaFin report for submission (4-eyes principle). Creates signed approval evidence.
Input Schema
{
"type": "object",
"properties": {
"entity_id": {
"type": "string"
},
"report_id": {
"type": "string"
},
"approver_name": {
"type": "string"
},
"approver_role": {
"type": "string"
}
},
"additionalProperties": false
}⚪cve_asset_map(entity_id, cve_id, vendor)
Map CVE/vulnerability to internal ICT providers and systems. Auto-creates findings for critical matches. DORA Art. 10.
Input Schema
{
"type": "object",
"properties": {
"entity_id": {
"type": "string"
},
"cve_id": {
"type": "string",
"description": "CVE identifier"
},
"vendor": {
"type": "string",
"description": "Vendor/software name to check"
}
},
"additionalProperties": false
}⚪policy_draft(entity_id, dora_article)
Generate DORA policy/framework document draft for a specific article. 8 templates available (Art. 5,6,8,10,11,17,28,30). Uses entity data for customization.
Input Schema
{
"type": "object",
"properties": {
"entity_id": {
"type": "string"
},
"dora_article": {
"type": "string",
"description": "dora_art5|dora_art6|dora_art8|dora_art10|dora_art11|dora_art17|dora_art28|dora_art30"
}
},
"additionalProperties": false
}🟡create_trial(entity_name, entity_type, jurisdiction, providers)
Create temporary trial entity (48h) for self-service DORA assessment. No login needed.
Input Schema
{
"type": "object",
"properties": {
"entity_name": {
"type": "string",
"description": "Institute name"
},
"entity_type": {
"type": "string",
"description": "credit_institution|payment_institution|insurance_undertaking|asset_management|credit_institution_casp"
},
"jurisdiction": {
"type": "string",
"description": "DE|AT|FR|etc"
},
"providers": {
"type": "string",
"description": "Comma-separated provider names: AWS,SWIFT,Finastra",
"enum": [
"AWS",
"SWIFT"
]
}
},
"additionalProperties": false
}⚪run_trial_assessment(trial_id, entity_id)
Run complete DORA+MiCA assessment for trial entity. Returns score, gaps, automation potential.
Input Schema
{
"type": "object",
"properties": {
"trial_id": {
"type": "string"
},
"entity_id": {
"type": "string"
}
},
"additionalProperties": false
}⚪generate_trial_report(trial_id, entity_id)
Generate watermarked trial report with score, gaps, and CTA.
Input Schema
{
"type": "object",
"properties": {
"trial_id": {
"type": "string"
},
"entity_id": {
"type": "string"
}
},
"additionalProperties": false
}Community
Evidence