Skip to main content
Glama
90barricade93

MSFS SDK MCP Server

natural_language_query

Interpret and process natural language queries to quickly access Microsoft Flight Simulator SDK documentation, enabling efficient searches and retrievals.

Instructions

Process natural language queries like "Search livery op msfs sdk"

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
queryYesNatural language query (e.g., "Search livery op msfs sdk")

Implementation Reference

  • Executes the 'natural_language_query' tool by parsing the natural language input using NaturalLanguageService.parse() and dispatching to the corresponding documentation service method.
    case 'natural_language_query': if (!args?.query) { throw new Error('Query parameter is required'); } // Parse the natural language query const parsedCommand = NaturalLanguageService.parse(String(args.query)); if (!parsedCommand) { throw new Error(`Could not parse natural language query: ${args.query}`); } // Execute the parsed command switch (parsedCommand.tool) { case 'search_msfs_docs': return await this.documentationService.searchDocumentation( String(parsedCommand.arguments.query), String(parsedCommand.arguments.category || 'all'), Number(parsedCommand.arguments.limit || 10) ); case 'get_doc_content': return await this.documentationService.getDocumentationContent( String(parsedCommand.arguments.url), parsedCommand.arguments.section ? String(parsedCommand.arguments.section) : undefined ); case 'list_categories': return await this.documentationService.listCategories(); default: throw new Error(`Unknown parsed tool: ${parsedCommand.tool}`); }
  • Input schema definition for the natural_language_query tool, specifying a required 'query' string parameter.
    name: 'natural_language_query', description: 'Process natural language queries like "Search livery op msfs sdk"', inputSchema: { type: 'object', properties: { query: { type: 'string', description: 'Natural language query (e.g., "Search livery op msfs sdk")', } }, required: ['query'] } },
  • src/index.ts:90-102 (registration)
    Registers the 'natural_language_query' tool in the list of available tools returned by ListToolsRequest.
    name: 'natural_language_query', description: 'Process natural language queries like "Search livery op msfs sdk"', inputSchema: { type: 'object', properties: { query: { type: 'string', description: 'Natural language query (e.g., "Search livery op msfs sdk")', } }, required: ['query'] } },
  • Core parsing logic for natural language queries, matching patterns to map to specific tools and arguments using regex and conditionals.
    static parse(command: string): { tool: string; arguments: any } | null { // Match "Search [term] op msfs sdk" const searchPattern = /^Search\s+(.+?)\s+op\s+msfs\s+sdk\s*$/i; const match = command.match(searchPattern); if (match) { const query = match[1]; return { tool: "search_msfs_docs", arguments: { query: query, category: "all", limit: 5 } }; } // Match "Get content for [url]" const contentPattern = /^Get\s+content\s+for\s+(https?:\/\/.+)$/i; const contentMatch = command.match(contentPattern); if (contentMatch) { const url = contentMatch[1]; return { tool: "get_doc_content", arguments: { url: url } }; } // Match "List categories" if (command.toLowerCase() === "list categories") { return { tool: "list_categories", arguments: {} }; } // Match "Show categories" if (command.toLowerCase() === "show categories") { return { tool: "list_categories", arguments: {} }; } // Match "Search [term] in [category]" const categorySearchPattern = /^Search\s+(.+?)\s+in\s+(aircraft|scenery|simvars|panels|missions|packaging|tools|general)$/i; const categoryMatch = command.match(categorySearchPattern); if (categoryMatch) { const query = categoryMatch[1]; const category = categoryMatch[2].toLowerCase(); return { tool: "search_msfs_docs", arguments: { query: query, category: category, limit: 5 } }; } return null; // Onbekend commando }

Other Tools

Related Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/90barricade93/MSFS-SDK-MCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server