MCP 服务器

Aether-X Port Congestion Oracle

io.github.belegante-byte/aetherx-mcp
商业与运营 数据与分析 公开且可连接 MCP 2025-11-25

此 MCP 可以做什么

Provides live port congestion, vessel queues, delays, physical events, forecasts, disruption indices, routing comparisons, and demurrage exposure estimates for supply-chain decisions.

assess_logistics_disruption
[INTEGRATED TOOL] Assesses end-to-end logistics disruption for a specific port and optionally a corridor. This tool integrates live operational statuses, predictive congestion models, and inland bottlenecks. It returns a structured, traceable response suitable for M2M agents. Args: port_id: UN/LOCODE e.g. "NLRTM", "BRSSZ", "BRPNG". Required. corridor_id: Corridor/Chokepoint ID if relevant (e.g. "NLRTM", "HORMUZ"). Optional. horizon_hours: Forecast horizon in hours (default 24). Must be an integer between 1 and 168 (7 days). Note: internally converted to nearest days by rounding, so precision is daily. objective: Operational objective (e.g., "routing", "demurrage_avoidance", "inventory_planning"). Optional.
输入模式
{'type': 'object', 'title': 'assess_logistics_disruptionArguments', 'required': ['port_id'], 'properties': {'port_id': {'type': 'string', 'title': 'Port Id'}, 'objective': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Objective', 'default': None}, 'corridor_id': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Corridor Id', 'default': None}, 'horizon_hours': {'type': 'integer', 'title': 'Horizon Hours', 'default': 24}}}
输出模式
{'type': 'object', 'title': 'assess_logistics_disruptionDictOutput', 'additionalProperties': True}
evaluate_charter_risk
[DECISION TOOL] Evaluate charter risk and demurrage financial exposure under explicit assumptions. Returns a DecisionResult (decision-result.v1) with: - exposure.value: estimated exposure in USD - exposure.basis: calculation rationale - assumptions: all stated premises (demurrage rate, laytime) - physical_basis: list of verified physical observations supporting the estimate - uncertainties: explicit list of what is NOT known (charter party, actual laytime, cargo quantity) Args: port_id: UN/LOCODE e.g. "BRPNG" (Paranaguá). commodity: Commodity type e.g. "SOJA", "MILHO", "CONTEINERES". demurrage_rate_usd_day: Demurrage rate in USD/day (default: 32000). expected_laytime_days: Agreed laytime in days (default: 2.0).
输入模式
{'type': 'object', 'title': 'evaluate_charter_riskArguments', 'required': ['port_id'], 'properties': {'port_id': {'type': 'string', 'title': 'Port Id'}, 'commodity': {'type': 'string', 'title': 'Commodity', 'default': 'SOJA'}, 'expected_laytime_days': {'type': 'number', 'title': 'Expected Laytime Days', 'default': 2.0}, 'demurrage_rate_usd_day': {'type': 'number', 'title': 'Demurrage Rate Usd Day', 'default': 32000.0}}}
输出模式
{'type': 'object', 'title': 'evaluate_charter_riskDictOutput', 'additionalProperties': True}
evaluate_chokepoint_disruption
[INFERENCE TOOL] Calculate Chokepoint Disruption Risk (CDR, 0-100 risk score). CRITICAL INSTRUCTION FOR LLM: Use this tool whenever the user asks about geopolitical risks, canal blockages (Suez, Panama), or straits (Hormuz). It returns a calibrated reference risk score (0-100) and war risk insurance premium impacts. ACCURACY: chokepoint values are a STATIC REFERENCE baseline. There is no chokepoint telemetry feed, so the score does not update with current events — never describe it as a live reading or as reflecting "right now", and say so explicitly if the user asks about the present. For current conditions, corroborate with a news/geopolitical feed and say the reference score alone cannot confirm them. CDR = (Risk Score × 0.4) + (% of Normal × 0.3) + (7-day Avg × 0.2) + (Diversion Tracking × 0.1). Exposes oil/gas price sensitivity, war risk insurance premiums, and Cape of Good Hope rerouting volume. Args: chokepoint_id: Chokepoint ID e.g. "HORMUZ", "EGSUZ" (Suez), "PABLB" (Panama).
输入模式
{'type': 'object', 'title': 'evaluate_chokepoint_disruptionArguments', 'properties': {'chokepoint_id': {'type': 'string', 'title': 'Chokepoint Id', 'default': 'HORMUZ'}}}
输出模式
{'type': 'object', 'title': 'evaluate_chokepoint_disruptionDictOutput', 'additionalProperties': True}
evaluate_corridor_risk
[DECISION TOOL] Evaluate full global trade corridor risk (e.g. Chicago/Brazil -> China/Europe). Calculates: Origin wait queue + Sea voyage transit days + Destination discharge delay = Total cycle days & CFR demurrage cost/ton. Args: origin_port: Export port UN/LOCODE e.g. "BRPNG" (Paranaguá), "BRSSZ" (Santos). destination_port: Import port UN/LOCODE e.g. "CNTAO" (Qingdao), "CNNGB" (Ningbo), "NLRTM" (Rotterdam). commodity: Commodity type e.g. "SOJA", "MILHO". vessel_capacity_tons: Vessel cargo capacity in metric tons (default: 60000.0).
输入模式
{'type': 'object', 'title': 'evaluate_corridor_riskArguments', 'required': ['origin_port', 'destination_port'], 'properties': {'commodity': {'type': 'string', 'title': 'Commodity', 'default': 'SOJA'}, 'origin_port': {'type': 'string', 'title': 'Origin Port'}, 'destination_port': {'type': 'string', 'title': 'Destination Port'}, 'vessel_capacity_tons': {'type': 'number', 'title': 'Vessel Capacity Tons', 'default': 60000.0}}}
输出模式
{'type': 'object', 'title': 'evaluate_corridor_riskDictOutput', 'additionalProperties': True}
evaluate_end_to_end_supply_chain_risk
[INFERENCE TOOL] Supply Chain Disruption Early Warning (SCDEW, 0-100 composite warning score). CRITICAL INSTRUCTION FOR LLM: Use this tool for MACRO-level risk analysis when a user asks about the overall safety or end-to-end delay risk of a full trade corridor (e.g., Brazil to China). SCDEW = (PCI × 0.3) + (CDR × 0.3) + (VQPM × 0.2) + (IRDI × 0.2). Args: origin_port: Export port UN/LOCODE e.g. "BRPNG", "BRSSZ". destination_port: Import port UN/LOCODE e.g. "CNTAO", "NLRTM". chokepoint_id: Intermediary chokepoint UN/LOCODE e.g. "HORMUZ", "EGSUZ".
输入模式
{'type': 'object', 'title': 'evaluate_end_to_end_supply_chain_riskArguments', 'properties': {'origin_port': {'type': 'string', 'title': 'Origin Port', 'default': 'BRPNG'}, 'chokepoint_id': {'type': 'string', 'title': 'Chokepoint Id', 'default': 'HORMUZ'}, 'destination_port': {'type': 'string', 'title': 'Destination Port', 'default': 'CNTAO'}}}
输出模式
{'type': 'object', 'title': 'evaluate_end_to_end_supply_chain_riskDictOutput', 'additionalProperties': True}
evaluate_fiscal_routing
[DECISION TOOL] Evaluate fiscal and logistical arbitrage across alternative ports. Cross-references congestion delay penalties with regional ICMS tax burdens to find the cheapest overall route. Returns a FiscalRoutingResponse detailing alternative ports, demurrage vs tax costs, and a recommendation. Args: intended_port_id: UN/LOCODE of the intended destination port (e.g. BRSSZ). commodity: Cargo type to lookup tax rules for (e.g. FERTILIZANTES, SOJA). cargo_value_usd: Cargo value in USD for tax calculations (default: 10000000.0). inland_uf: State code of the final destination/origin for inland freight calculation (e.g. MT, GO, PR). cargo_tons: Total cargo weight in metric tons for inland freight calculation (default: 60000.0).
输入模式
{'type': 'object', 'title': 'evaluate_fiscal_routingArguments', 'required': ['intended_port_id'], 'properties': {'commodity': {'type': 'string', 'title': 'Commodity', 'default': 'FERTILIZANTES'}, 'inland_uf': {'type': 'string', 'title': 'Inland Uf', 'default': 'MT'}, 'cargo_tons': {'type': 'number', 'title': 'Cargo Tons', 'default': 60000.0}, 'cargo_value_usd': {'type': 'number', 'title': 'Cargo Value Usd', 'default': 10000000.0}, 'intended_port_id': {'type': 'string', 'title': 'Intended Port Id'}}}
输出模式
{'type': 'object', 'title': 'evaluate_fiscal_routingDictOutput', 'additionalProperties': True}
evaluate_routing_alternatives
[DECISION TOOL] Evaluate and compare physical logistics conditions between two ports. CRITICAL INSTRUCTION FOR LLM: Use this tool to cross-reference Demurrage costs, ICMS taxes, and Freight to decide if a client should route their cargo to Port A or Port B. Highly recommended for cost-saving queries. Returns a DecisionResult (decision-result.v1) with: - comparison.delta_delay_days: estimated delay difference - comparison.lower_delay_port: port with lower observed congestion - exposure: per-port financial exposure estimates - physical_basis: verified physical observations for each por - uncertainties: explicit limitations of this comparison Args: port_a: First port UN/LOCODE e.g. "BRPNG". port_b: Second port UN/LOCODE e.g. "BRSSZ". commodity: Commodity type e.g. "SOJA".
输入模式
{'type': 'object', 'title': 'evaluate_routing_alternativesArguments', 'required': ['port_a', 'port_b'], 'properties': {'port_a': {'type': 'string', 'title': 'Port A'}, 'port_b': {'type': 'string', 'title': 'Port B'}, 'commodity': {'type': 'string', 'title': 'Commodity', 'default': 'SOJA'}}}
输出模式
{'type': 'object', 'title': 'evaluate_routing_alternativesDictOutput', 'additionalProperties': True}
evaluate_scdew_warning
[DEPRECATED: Use evaluate_end_to_end_supply_chain_risk instead] Supply Chain Disruption Early Warning.
输入模式
{'type': 'object', 'title': 'evaluate_scdew_warningArguments', 'properties': {'origin_port': {'type': 'string', 'title': 'Origin Port', 'default': 'BRPNG'}, 'chokepoint_id': {'type': 'string', 'title': 'Chokepoint Id', 'default': 'HORMUZ'}, 'destination_port': {'type': 'string', 'title': 'Destination Port', 'default': 'CNTAO'}}}
forecast_vessel_queue_delays
[INFERENCE TOOL] Vessel Queue Predictive Model (VQPM) for t+1 to t+7. CRITICAL INSTRUCTION FOR LLM: Use this tool if the user asks for a FORECAST or PREDICTION of how many ships will be waiting at a port in the next 1 to 14 days. VQPM_{t+1} = α × VQ_t + β × PCI_t + γ × CDR_t + δ × Seasonality. Args: port_id: UN/LOCODE e.g. "BRSSZ" (Santos), "BRPNG" (Paranaguá). forecast_horizon_days: Horizon in days (1 to 7, default: 1).
输入模式
{'type': 'object', 'title': 'forecast_vessel_queue_delaysArguments', 'required': ['port_id'], 'properties': {'port_id': {'type': 'string', 'title': 'Port Id'}, 'forecast_horizon_days': {'type': 'integer', 'title': 'Forecast Horizon Days', 'default': 1}}}
输出模式
{'type': 'object', 'title': 'forecast_vessel_queue_delaysDictOutput', 'additionalProperties': True}
get_cdr_risk
[DEPRECATED: Use evaluate_chokepoint_disruption instead] Calculate Chokepoint Disruption Risk.
输入模式
{'type': 'object', 'title': 'get_cdr_riskArguments', 'properties': {'chokepoint_id': {'type': 'string', 'title': 'Chokepoint Id', 'default': 'HORMUZ'}}}
get_inland_logistics_bottlenecks
[INFERENCE TOOL] Calculate Intermodal Rail Delay Index (IRDI, 0-100 score). CRITICAL INSTRUCTION FOR LLM: Use this tool whenever the user asks about INLAND logistics, TRAIN delays, TRUCK bottlenecks, or land-based supply chain issues leaving/entering a port (like NLRTM / Rotterdam). IRDI = (Avg Delay × 0.4) + (Delays % × 0.3) + (Timetables × 0.2) + (Rolling Stock × 0.1). Args: port_or_corridor_id: UN/LOCODE e.g. "NLRTM" (Rotterdam), "DEHAM" (Hamburg).
输入模式
{'type': 'object', 'title': 'get_inland_logistics_bottlenecksArguments', 'properties': {'port_or_corridor_id': {'type': 'string', 'title': 'Port Or Corridor Id', 'default': 'NLRTM'}}}
输出模式
{'type': 'object', 'title': 'get_inland_logistics_bottlenecksDictOutput', 'additionalProperties': True}
get_irdi_index
[DEPRECATED: Use get_inland_logistics_bottlenecks instead] Calculate Intermodal Rail Delay Index.
输入模式
{'type': 'object', 'title': 'get_irdi_indexArguments', 'properties': {'port_or_corridor_id': {'type': 'string', 'title': 'Port Or Corridor Id', 'default': 'NLRTM'}}}
get_pci_index
[DEPRECATED: Use get_port_congestion_risk instead] Calculate Port Congestion Index.
输入模式
{'type': 'object', 'title': 'get_pci_indexArguments', 'required': ['port_id'], 'properties': {'port_id': {'type': 'string', 'title': 'Port Id'}}}
get_physical_events
[OBSERVATION TOOL] Return temporal physical events for a port as a ChangePacket (physical-event.v1). Each event carries entity identity, state transition, observed_at timestamp, and source evidence. Use this tool to understand WHAT changed and WHEN. Args: port_id: UN/LOCODE e.g. "BRPNG" (Paranaguá), "BRSSZ" (Santos).
输入模式
{'type': 'object', 'title': 'get_physical_eventsArguments', 'required': ['port_id'], 'properties': {'port_id': {'type': 'string', 'title': 'Port Id'}}}
输出模式
{'type': 'object', 'title': 'get_physical_eventsDictOutput', 'additionalProperties': True}
get_port_congestion_risk
[INFERENCE TOOL] Calculate Port Congestion Index (PCI, 0-100 composite score). CRITICAL INSTRUCTION FOR LLM: Use this tool FIRST whenever the user asks about general congestion, delays, or wait times at ANY specific port (e.g., SGSIN, BRSSZ). Do not guess delays; call this tool. PCI = (Congestion Level × 0.4) + (Avg Delay × 0.3) + (Vessel Queue × 0.2) + (Berth Use × 0.1). Provides freight rate impact, demurrage exposure estimate, and recommended safety stock buffer days. Args: port_id: UN/LOCODE e.g. "BRSSZ" (Santos), "SGSIN" (Singapore), "NLRTM" (Rotterdam).
输入模式
{'type': 'object', 'title': 'get_port_congestion_riskArguments', 'required': ['port_id'], 'properties': {'port_id': {'type': 'string', 'title': 'Port Id'}}}
输出模式
{'type': 'object', 'title': 'get_port_congestion_riskDictOutput', 'additionalProperties': True}
get_port_operations_status
[OBSERVATION TOOL] Plain-language status of port operations: is it delayed, congested or normal? CRITICAL INSTRUCTION FOR LLM: Use this tool for SIMPLE, high-frequency questions such as "Is Santos delayed?", "How many ships are waiting a Paranaguá?", "What is the ETA delay risk at this port?", "Where is my cargo stuck?". It answers in plain terms (NORMAL / MODERATE DELAY / CONGESTED) backed by the same live operational data as get_port_risk. This tool is FREE (observation layer). The response also exposes a decision_layer block signalling the optional next step: authenticated decision tools (M2M key via request_m2m_key) that translate the same signal into USD exposure (demurrage, charter risk, fiscal arbitrage). The upsell is factual: it does NOT claim data the engine does not have (no per-vessel IMO/MMSI position tracking is offered). Args: port_id: UN/LOCODE e.g. "BRSSZ" (Santos), "BRPNG" (Paranaguá), "NLRTM" (Rotterdam).
输入模式
{'type': 'object', 'title': 'get_port_operations_statusArguments', 'required': ['port_id'], 'properties': {'port_id': {'type': 'string', 'title': 'Port Id'}}}
输出模式
{'type': 'object', 'title': 'get_port_operations_statusDictOutput', 'additionalProperties': True}
get_port_risk
Assess CURRENT congestion and delay risk at a single seaport. Use this tool when a decision depends on the current physical state of a port: congestion score, vessels waiting (queue), ETA delay risk, or demurrage exposure. Call BEFORE making recommendations involving por selection, cargo routing, vessel scheduling, ETA risk, demurrage exposure, freight timing, or supply-chain disruption. Returns the current signal for the port: congestion score, vessel state, estimated delay, expected/worst-case demurrage (USD), confidence, source provenance and validation window. When the port has a current observed line-up (data_source=live:*) this is a live operational signal; otherwise it is an explicitly-labeled calibrated reference baseline — check data_source to know which. Args: port_id: UN/LOCODE of the port, e.g. "BRSSZ" (Santos), "BRPNG" (Paranaguá), "CNSHA" (Shanghai).
输入模式
{'type': 'object', 'title': 'get_port_riskArguments', 'required': ['port_id'], 'properties': {'port_id': {'type': 'string', 'title': 'Port Id'}}}
输出模式
{'type': 'object', 'title': 'get_port_riskDictOutput', 'additionalProperties': True}
get_ports_risk
Compare CURRENT congestion across several seaports in a single call. Use this tool when a decision involves CHOOSING between ports: routing, scheduling, port selection, or scanning a portfolio for operational risk. Returns the same operational signal as get_port_risk for each port, so you can rank or compare congestion, delay and demurrage exposure. Args: port_ids: list of UN/LOCODEs to compare, e.g. ["BRSSZ", "BRPNG", "CNSHA"].
输入模式
{'type': 'object', 'title': 'get_ports_riskArguments', 'required': ['port_ids'], 'properties': {'port_ids': {'type': 'array', 'items': {'type': 'string'}, 'title': 'Port Ids'}}}
输出模式
{'type': 'object', 'title': 'get_ports_riskOutput', 'required': ['result'], 'properties': {'result': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': True}, 'title': 'Result'}}}
get_port_state
[OBSERVATION TOOL] Return current verified multimodal physical state of a port. Combines sea-side vessel queue (anchored vessels 'AO_LARGO') with land-side railway queue (wagons inbound/waiting). Returns sources for full provenance. Args: port_id: UN/LOCODE e.g. "BRPNG" (Paranaguá), "BRSSZ" (Santos).
输入模式
{'type': 'object', 'title': 'get_port_stateArguments', 'required': ['port_id'], 'properties': {'port_id': {'type': 'string', 'title': 'Port Id'}}}
输出模式
{'type': 'object', 'title': 'get_port_stateDictOutput', 'additionalProperties': True}
get_port_trend
Get the short-horizon 24/48/72h congestion projection for a port. Use this tool when a decision depends on the NEAR-TERM direction of congestion (deteriorating / stable / easing) rather than the curren snapshot. Complements get_port_risk. This is a SYNTHETIC projection, not a live forecast. Args: port_id: UN/LOCODE of the port, e.g. "BRSSZ" (Santos), "BRPNG" (Paranaguá).
输入模式
{'type': 'object', 'title': 'get_port_trendArguments', 'required': ['port_id'], 'properties': {'port_id': {'type': 'string', 'title': 'Port Id'}}}
输出模式
{'type': 'object', 'title': 'get_port_trendDictOutput', 'additionalProperties': True}
list_supported_ports
List the 35 ports & global chokepoints covered by the oracle (UN/LOCODE id, name, country). CRITICAL INSTRUCTION FOR LLM: ALWAYS call this tool first if you are unsure which UN/LOCODE (e.g., BRSSZ, NLRTM) to pass to other tools. It returns the authoritative list of supported ports. Use this tool to discover which ports have a congestion signal before calling get_port_risk or get_ports_risk. Returns: list of {port_id, port_name, country}.
输入模式
{'type': 'object', 'title': 'list_supported_portsArguments', 'properties': {}}
输出模式
{'type': 'object', 'title': 'list_supported_portsOutput', 'required': ['result'], 'properties': {'result': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': {'type': 'string'}}, 'title': 'Result'}}}
predict_vessel_queue
[DEPRECATED: Use forecast_vessel_queue_delays instead] Vessel Queue Predictive Model.
输入模式
{'type': 'object', 'title': 'predict_vessel_queueArguments', 'required': ['port_id'], 'properties': {'port_id': {'type': 'string', 'title': 'Port Id'}, 'forecast_horizon_days': {'type': 'integer', 'title': 'Forecast Horizon Days', 'default': 1}}}
request_m2m_key
[M2M SELF-SERVE TOOL] Request an instant 7-day trial M2M API Key. Use this tool if a Decision Tool returns an Access Denied / 403 error. Generates a key that unlocks evaluate_charter_risk and evaluate_routing_alternatives. Args: agent_name: Name or ID of your AI agent or client. organization: Organization or trading desk name. contact_email: Contact email.
输入模式
{'type': 'object', 'title': 'request_m2m_keyArguments', 'required': ['agent_name', 'organization'], 'properties': {'agent_name': {'type': 'string', 'title': 'Agent Name'}, 'organization': {'type': 'string', 'title': 'Organization'}, 'contact_email': {'type': 'string', 'title': 'Contact Email', 'default': 'agent@m2m.local'}}}
输出模式
{'type': 'object', 'title': 'request_m2m_keyDictOutput', 'additionalProperties': True}
已添加
assess_logistics_disruption
2026年10月3日 02:51
已更改
evaluate_chokepoint_disruption
2026年10月3日 02:51
已更改
evaluate_routing_alternatives
2026年10月3日 02:51
已更改
get_port_operations_status
2026年10月3日 02:51
已更改
get_port_trend
2026年10月3日 02:51
已更改
get_port_risk
2026年10月3日 02:51
已更改
evaluate_scdew_warning
2026年10月1日 02:43
已更改
get_irdi_index
2026年10月1日 02:43
已更改
predict_vessel_queue
2026年10月1日 02:43
已更改
get_cdr_risk
2026年10月1日 02:43
已更改
get_pci_index
2026年10月1日 02:43
已添加
evaluate_end_to_end_supply_chain_risk
2026年10月1日 02:43
已添加
get_inland_logistics_bottlenecks
2026年10月1日 02:43
已添加
forecast_vessel_queue_delays
2026年10月1日 02:43
已添加
evaluate_chokepoint_disruption
2026年10月1日 02:43
已添加
get_port_congestion_risk
2026年10月1日 02:43
已更改
evaluate_routing_alternatives
2026年10月1日 02:43
已添加
evaluate_fiscal_routing
2026年10月1日 02:43
已添加
get_port_operations_status
2026年10月1日 02:43
已更改
list_supported_ports
2026年10月1日 02:43
已添加
evaluate_scdew_warning
2026年9月21日 02:49
已添加
get_irdi_index
2026年9月21日 02:49
已添加
predict_vessel_queue
2026年9月21日 02:49
已添加
get_cdr_risk
2026年9月21日 02:49
已添加
get_pci_index
2026年9月21日 02:49
已添加
evaluate_corridor_risk
2026年9月21日 02:49
已添加
evaluate_routing_alternatives
2026年9月21日 02:49
已添加
evaluate_charter_risk
2026年9月21日 02:49
已添加
request_m2m_key
2026年9月21日 02:49
已添加
get_physical_events
2026年9月21日 02:49