dart-doc
Generate comprehensive documentation for Dart packages by analyzing source code and producing formatted output files to help developers understand and use the codebase effectively.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| path | No | Directory containing the Dart package to document | |
| output | No | Output directory for the generated documentation | |
| options | No | Additional documentation options |
Implementation Reference
- src/tools/doc.ts:11-32 (handler)The main async handler function for the 'dart-doc' tool. Parses arguments, resolves paths, constructs command args for 'dart doc', executes via dart-executor, and returns output or error.export async function doc(args: z.infer<typeof docSchema>) { const { path, output, options = [] } = args; // Convert relative paths to absolute paths const absolutePath = path ? toAbsolutePath(path) : undefined; const absoluteOutput = output ? toAbsolutePath(output) : undefined; const cmdArgs = [ ...(absolutePath ? [absolutePath] : []), ...(absoluteOutput ? ['--output', absoluteOutput] : []), ...options ]; const { stdout, stderr } = await executeDartCommand('doc', cmdArgs); return { content: [ { type: "text" as const, text: stdout || stderr } ], isError: !!stderr }; }
- src/tools/doc.ts:5-9 (schema)Zod input schema for the dart-doc tool, defining optional path, output directory, and additional options.export const docSchema = z.object({ path: z.string().optional().describe('Directory containing the Dart package to document'), output: z.string().optional().describe('Output directory for the generated documentation'), options: z.array(z.string()).optional().describe('Additional documentation options') });
- src/index.ts:36-36 (registration)Registers the 'dart-doc' tool with the MCP server, providing the schema shape and handler function.server.tool('dart-doc', docSchema.shape, doc);
- src/index.ts:18-18 (registration)Imports the doc handler and docSchema from the tools/doc module for registration.import { doc, docSchema } from './tools/doc.js';
- src/config/mcp-config.ts:8-8 (helper)Tool description in the MCP server capabilities configuration.'dart-doc': "Generate API documentation for Dart projects",