MCP Server
Active
1
0
Files
2026-03-07 13:11:16 +02:00

155 lines
4.9 KiB
YAML

# UAPF Resource Mappings — vdaa.mi.sandbox.atlase v0.2.0
# Format: targets (who/what) + bindings (what does what)
targets:
# Human roles
- id: role.case_officer
type: human_role
name: "Centra lietvedības darbinieks"
description: "Reģistrē iesniegumus, pārbauda pilnīgumu, nosūta kompetentajām institūcijām"
- id: role.commission
type: human_role
name: "Vērtēšanas komisija"
description: "Nolikuma 16.p. — izveidota ar Centra direktora rīkojumu"
- id: role.external_expert
type: human_role
name: "Ārējais eksperts"
description: "Nolikuma 19.p. — var piesaistīt vērtēšanas vajadzībām"
- id: role.competent_authority
type: human_role
name: "Kompetentā institūcija"
description: "Nolikuma 2.10.p. — sniedz atzinumu par projekta iesniegumu"
# Systems
- id: system.dmn_engine
type: system_api
name: "DMN izpildes dzinējs"
description: "Izpilda lēmumu tabulas (atbilstība, punktu aprēķins, TRL kartējums)"
- id: system.audit_log
type: system_api
name: "Audita žurnāls"
description: "Reģistrē visus procesa notikumus ar laika zīmogu"
# AI agents
- id: agent.evaluation_assistant
type: ai_agent
name: "MI vērtēšanas asistents (demo)"
description: >-
AI aģents, kas veic iepriekšējo novērtējumu pirms komisijas sēdes:
pārbauda TRL līmeni, analizē inovācijas pamatojumu, novērtē regulatīvās
vides nepieciešamību. Darbojas tikai kā palīgs — galīgais lēmums ir komisijas.
constraints:
mode: assisted
humanOversight: mandatory
outputType: recommendation-only
guardrails: guardrails/ai-evaluation-rules.yaml
# MCP tools
- id: mcp.check_eligibility
type: mcp_tool
name: "check_eligibility"
endpoint: "dmn/01-atbilstiba-un-izsledzosie.dmn.xml#EligibilityDecision"
- id: mcp.calculate_score
type: mcp_tool
name: "calculate_score"
endpoint: "dmn/02-vertesanas-punkti.dmn.xml#TotalScore"
- id: mcp.map_trl
type: mcp_tool
name: "map_trl_level"
endpoint: "dmn/03-trl-vertejums.dmn.xml#TRLMapping"
bindings:
# Phase 1: Registration
- source: {type: bpmn.userTask, ref: Task_Register}
targetId: role.case_officer
mode: manual
output: applicationRegistered
- source: {type: bpmn.businessRuleTask, ref: Task_EligibilityDMN}
targetId: system.dmn_engine
mode: autonomous
usesDecision: dmn/01-atbilstiba-un-izsledzosie.dmn.xml#EligibilityDecision
output: eligibilityResult
# Phase 1b: Deficiency correction
- source: {type: bpmn.sendTask, ref: Task_RequestFix}
targetId: role.case_officer
mode: manual
output: deficiencyRequest
# Phase 2: Expert opinions
- source: {type: bpmn.sendTask, ref: Task_SendToAuthority}
targetId: role.case_officer
mode: manual
output: opinionRequest
- source: {type: bpmn.receiveTask, ref: Task_ReceiveOpinion}
targetId: role.competent_authority
mode: manual
output: expertOpinions
# Phase 3: Commission evaluation
- source: {type: bpmn.userTask, ref: Task_CommissionScoring}
targetId: role.commission
mode: manual
assistedBy:
- role.external_expert
- agent.evaluation_assistant
output: commissionRatings
- source: {type: bpmn.businessRuleTask, ref: Task_TRLMapping}
targetId: system.dmn_engine
mode: autonomous
usesDecision: dmn/03-trl-vertejums.dmn.xml#TRLMapping
output: trlScore
- source: {type: bpmn.businessRuleTask, ref: Task_ScoringDMN}
targetId: system.dmn_engine
mode: autonomous
usesDecision: dmn/02-vertesanas-punkti.dmn.xml#TotalScore
output: scoringResult
# Phase 4: Decision
- source: {type: bpmn.userTask, ref: Task_PrepareDecision}
targetId: role.commission
mode: manual
output: decisionRecommendation
- source: {type: bpmn.sendTask, ref: Task_NotifyApplicant}
targetId: role.case_officer
mode: manual
output: decisionNotification
# CMMN discretionary bindings
- source: {type: cmmn.humanTask, ref: HT_ExternalExpert}
targetId: role.external_expert
mode: manual
discretionary: true
- source: {type: cmmn.processTask, ref: PT_AIPreAssessment}
targetId: agent.evaluation_assistant
mode: assisted
discretionary: true
guardrails: guardrails/ai-evaluation-rules.yaml
audit:
logTarget: system.audit_log
events:
- {event: application-received, phase: registration}
- {event: eligibility-evaluated, phase: formal-check}
- {event: deficiency-requested, phase: formal-check}
- {event: deficiency-resolved, phase: formal-check}
- {event: sent-to-authorities, phase: expert-opinion}
- {event: opinions-received, phase: expert-opinion}
- {event: ai-pre-assessment-run, phase: commission, aiRelevant: true}
- {event: commission-scores-entered, phase: commission}
- {event: scores-calculated, phase: scoring}
- {event: decision-prepared, phase: decision}
- {event: decision-issued, phase: decision}