@squawk
    Preparing search index...

    Function createSquawkMcpServer

    • Creates an MCP server carrying the requested squawk aviation tool groups, defaulting to all of them.

      Disabling a group keeps its tools out of the catalog the LLM client sees, which is the point: the full catalog is roughly 18k tokens of context on every session. It does not reduce the server's startup time or memory footprint - the bundled snapshots are imported and indexed at module load regardless of which groups register.

      Tool registration triggers eager construction of the shared resolver singletons in ./resolvers.js for every domain except the ICAO aircraft registry, which loads on first lookup. Live weather fetch tools issue outbound HTTPS requests to the Aviation Weather Center text API only when invoked.

      import { createSquawkMcpServer } from '@squawk/mcp';
      import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';

      const server = createSquawkMcpServer({ toolGroups: ['airports', 'geo'] });
      await server.connect(new StdioServerTransport());

      Parameters

      Returns McpServer

      A fully configured MCP server instance. Connect it to a transport (typically StdioServerTransport for CLI use) via server.connect(transport) to begin handling protocol messages.

      when options.toolGroups names an unknown group or is empty, or when the environment variables cannot be honored (both set at once, unknown names, or nothing left enabled).