docs_create_page
Create or edit documentation pages using Markdown content for Docusaurus, MkDocs, or Sphinx frameworks. Specify page path, title, and content to generate professional documentation.
Instructions
Create or edit individual documentation pages with Markdown content
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| docsPath | Yes | Path to documentation directory | |
| pagePath | Yes | Relative path for the page (e.g., 'guides/getting-started.md') | |
| title | Yes | Page title | |
| content | Yes | Markdown content for the page |
Implementation Reference
- src/tools/createPage.ts:11-42 (handler)The main handler function that executes the tool: creates directories, formats Markdown with frontmatter, writes the page file, and returns success response.export async function createPage(args: any) { const { docsPath, pagePath, title, content } = args as CreatePageArgs; try { const fullPath = path.resolve(docsPath, pagePath); const dir = path.dirname(fullPath); await fs.mkdir(dir, { recursive: true }); const formattedContent = `--- title: ${title} --- # ${title} ${content} `; await fs.writeFile(fullPath, formattedContent, "utf-8"); return { content: [ { type: "text", text: `✅ Page created successfully at: ${fullPath}`, }, ], }; } catch (error) { throw new Error(`Failed to create page: ${error}`); } }
- src/index.ts:84-109 (schema)Tool definition including name, description, and input schema for validation.{ name: "docs_create_page", description: "Create or edit individual documentation pages with Markdown content", inputSchema: { type: "object", properties: { docsPath: { type: "string", description: "Path to documentation directory", }, pagePath: { type: "string", description: "Relative path for the page (e.g., 'guides/getting-started.md')", }, title: { type: "string", description: "Page title", }, content: { type: "string", description: "Markdown content for the page", }, }, required: ["docsPath", "pagePath", "title", "content"], }, },
- src/index.ts:304-305 (registration)Registration in the tool dispatch switch statement that calls the handler.case "docs_create_page": return await createPage(args);
- src/index.ts:13-13 (registration)Import of the handler function.import { generateApi } from "./tools/generateApi.js";
- src/tools/createPage.ts:4-9 (schema)TypeScript interface matching the input schema for argument destructuring.interface CreatePageArgs { docsPath: string; pagePath: string; title: string; content: string; }