Skip to main content
Glama

dart-compile

Compile Dart code to various executable formats including EXE, AOT/JIT snapshots, kernel files, and JavaScript for deployment or execution.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
formatYesOutput format for the compilation
pathYesPath to the Dart file to compile
outputNoOutput file path
optionsNoAdditional compilation options

Implementation Reference

  • The main handler function for the 'dart-compile' tool. It processes input arguments, constructs the dart compile command with format, path, output, and options, executes it via dart-executor, and returns the result with error status.
    export async function compile(args: z.infer<typeof compileSchema>) { const { format, path, output, options = [] } = args; // Convert relative paths to absolute paths const absolutePath = toAbsolutePath(path); const absoluteOutput = output ? toAbsolutePath(output) : undefined; const cmdArgs = [ format, absolutePath, ...(absoluteOutput ? ['-o', absoluteOutput] : []), ...options ]; const { stdout, stderr } = await executeDartCommand('compile', cmdArgs); return { content: [ { type: "text" as const, text: stdout || stderr } ], isError: !!stderr }; }
  • Zod schema defining the input parameters for the dart-compile tool: format (enum), path (string), optional output (string), and optional options (array of strings).
    export const compileSchema = z.object({ format: z.enum(['exe', 'aot-snapshot', 'jit-snapshot', 'kernel', 'js']) .describe('Output format for the compilation'), path: z.string().describe('Path to the Dart file to compile'), output: z.string().optional().describe('Output file path'), options: z.array(z.string()).optional().describe('Additional compilation options') });
  • src/index.ts:34-34 (registration)
    Registration of the 'dart-compile' tool with the MCP server, associating the tool name with its schema and handler function.
    server.tool('dart-compile', compileSchema.shape, compile);

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/egyleader/dart-mcp'

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