MCP server for Avainode aviation marketplace and aircraft charter platform integration, providing tools for aircraft search, charter requests, pricing, bookings, and operational management across Avinode, SchedAero, and Paynode services
21 tools with complete schemas and descriptions, but significant quality gaps. All tools have descriptions (10-200 chars) and input schemas with typed parameters. However, descriptions are often generic (e.g., 'Manage existing bookings', 'Create a new invoice') without explaining WHEN to use the tool or what distinguishes it from similar tools. Many parameters lack actionable constraints, e.g., 'status' in update-aircraft-status has no enum; 'action' in manage-booking has enum but no description of what each action does. Output schemas are completely undocumented, LLMs cannot plan downstream calls. Error handling is absent; no recovery guidance. No tool annotations (readOnlyHint, destructiveHint, idempotentHint). Financial tools (process-payment, create-refund, create-payout) lack confirmation/dry-run patterns despite irreversible consequences. Composition is poor: create-charter-request and create-flight-schedule both create bookings but with different parameters, forcing LLM to reason about which to use. No pagination on list-like tools (search-aircraft, search-crew, search-maintenance-facilities). Baseline: 90% of A+ tools have 50-200 char descriptions and documented output; this server has neither.
Add a new payment method
Assign crew to a flight
Submit a charter request for a specific aircraft
Create a flight schedule
Create a new invoice
Schedule aircraft maintenance
Create a payout to a bank account
No output schemas documented. LLMs cannot infer what fields to expect from tool responses, forcing them to guess at downstream field names and breaking tool chains. E.g., search-aircraft returns aircraft list but no schema for aircraft object structure.
Financial tools (process-payment, create-refund, create-payout) lack confirmation/dry-run patterns despite irreversible consequences. Agents can accidentally charge accounts or transfer funds without user approval.
Generic descriptions without WHEN/WHY context. E.g., 'Manage existing bookings' does not explain when to use manage-booking vs create-charter-request. 'Create a new invoice' lacks context on prerequisites or relationship to process-payment.
Inferred effective spec: 2026-07-28+.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 63 | 2026-07-28+ | v2 |
Create a refund for a transaction
Generate an account statement
Get account balance and pending transactions
Search for discounted empty leg flights
Get fleet utilization statistics and aircraft status
Retrieve detailed information about an aircraft operator
Generate a detailed pricing quote for a charter flight
Get transaction history for an account
Manage existing bookings (confirm, cancel, or get details)
Process a payment
Search for available aircraft based on trip requirements
Search for available crew members
Search for maintenance facilities
Update aircraft operational status
Missing parameter constraints and enums. E.g., update-aircraft-status 'status' parameter has no enum; manage-booking 'action' enum lacks descriptions of what each action does; search-aircraft 'aircraftCategory' enum is present but other filters lack validation.
No error handling or recovery guidance. Tools return errors but do not tell LLMs what to do next (retry, ask user, try alternative tool). E.g., 'Error searching aircraft' provides no actionable next step.