Files
nova/docs/graphs/mcp_servers.dot
2026-04-12 07:19:48 -03:00

145 lines
4.9 KiB
Plaintext

digraph mcp_servers {
rankdir=LR
bgcolor="#0a0e17"
fontname="Helvetica"
node [fontname="Helvetica" fontsize=10 style=filled color="#1e2a4a" fontcolor="#e8eaf0"]
edge [fontname="Helvetica" fontsize=9 fontcolor="#8892a8" color="#4a5568"]
label="MCP Server Topology — Tools · Resources · Prompts"
labelloc=t
fontsize=14
fontcolor="#0066ff"
// Clients
subgraph cluster_clients {
label="Agent Clients"
style=dashed
color="#1e2a4a"
fontcolor="#8892a8"
efhas [label="FCE\nAgent" fillcolor="#1a1a3a" shape=box]
handover [label="Handover\nAgent" fillcolor="#1a1a3a" shape=box]
}
// Shared server
subgraph cluster_shared {
label="united-ops-shared"
color="#0066ff"
fontcolor="#0066ff"
style=rounded
subgraph cluster_shared_tools {
label="Tools"
color="#1e2a4a"
fontcolor="#4a5568"
st1 [label="get_flight_status" fillcolor="#0d1a33" shape=box]
st2 [label="get_flight_details" fillcolor="#0d1a33" shape=box]
st3 [label="get_irregular_ops" fillcolor="#0d1a33" shape=box]
st4 [label="get_route_weather\n★ LIVE" fillcolor="#0d2a0d" shape=box fontcolor="#00c853"]
st5 [label="get_hub_forecasts\n★ LIVE" fillcolor="#0d2a0d" shape=box fontcolor="#00c853"]
st6 [label="get_airport_status\n★ LIVE" fillcolor="#0d2a0d" shape=box fontcolor="#00c853"]
st7 [label="get_airport_congestion\n★ HYBRID" fillcolor="#0d2a0d" shape=box fontcolor="#ffc107"]
st8 [label="get_maintenance_flags" fillcolor="#0d1a33" shape=box]
}
subgraph cluster_shared_res {
label="Resources"
color="#1e2a4a"
fontcolor="#4a5568"
sr1 [label="ops://hubs/{code}" fillcolor="#1a1a2a" shape=note]
sr2 [label="ops://scenarios/active" fillcolor="#1a1a2a" shape=note]
}
subgraph cluster_shared_prompts {
label="Prompts"
color="#1e2a4a"
fontcolor="#4a5568"
sp1 [label="delay_explainer\n(cause_code, audience)" fillcolor="#2a1a2a" shape=cds]
}
}
// Ops server
subgraph cluster_ops {
label="united-ops-internal"
color="#ff3d00"
fontcolor="#ff3d00"
style=rounded
subgraph cluster_ops_tools {
label="Tools"
color="#1e2a4a"
fontcolor="#4a5568"
ot1 [label="get_crew_notes" fillcolor="#0d1a33" shape=box]
ot2 [label="get_crew_duty_status" fillcolor="#0d1a33" shape=box]
ot3 [label="get_pending_rebookings" fillcolor="#0d1a33" shape=box]
ot4 [label="generate_narrative" fillcolor="#0d1a33" shape=box]
}
subgraph cluster_ops_res {
label="Resources"
color="#1e2a4a"
fontcolor="#4a5568"
or1 [label="ops://crew/roster" fillcolor="#1a1a2a" shape=note]
or2 [label="ops://handover/latest" fillcolor="#1a1a2a" shape=note]
}
subgraph cluster_ops_prompts {
label="Prompts"
color="#1e2a4a"
fontcolor="#4a5568"
op1 [label="handover_brief\n(hub, shift_time)" fillcolor="#2a1a2a" shape=cds]
}
}
// Passenger server
subgraph cluster_pax {
label="united-ops-passenger"
color="#00c853"
fontcolor="#00c853"
style=rounded
subgraph cluster_pax_tools {
label="Tools"
color="#1e2a4a"
fontcolor="#4a5568"
pt1 [label="generate_notification" fillcolor="#0d1a33" shape=box]
}
subgraph cluster_pax_res {
label="Resources"
color="#1e2a4a"
fontcolor="#4a5568"
pr1 [label="ops://flights/{id}/manifest" fillcolor="#1a1a2a" shape=note]
}
subgraph cluster_pax_prompts {
label="Prompts"
color="#1e2a4a"
fontcolor="#4a5568"
pp1 [label="passenger_notification\n(tone)" fillcolor="#2a1a2a" shape=cds]
}
}
// Connections
efhas -> st1 [color="#0066ff"]
efhas -> st2 [color="#0066ff"]
efhas -> st4 [color="#0066ff"]
efhas -> st6 [color="#0066ff"]
efhas -> st7 [color="#0066ff"]
efhas -> st8 [color="#0066ff"]
efhas -> pt1 [color="#00c853"]
efhas -> sr1 [color="#0066ff" style=dashed]
efhas -> pp1 [color="#00c853" style=dotted]
handover -> st3 [color="#0066ff"]
handover -> st5 [color="#0066ff"]
handover -> st6 [color="#0066ff"]
handover -> st8 [color="#0066ff"]
handover -> ot1 [color="#ff3d00"]
handover -> ot2 [color="#ff3d00"]
handover -> ot3 [color="#ff3d00"]
handover -> ot4 [color="#ff3d00"]
handover -> or1 [color="#ff3d00" style=dashed]
handover -> or2 [color="#ff3d00" style=dashed]
handover -> op1 [color="#ff3d00" style=dotted]
}