docs_build_static
Build static documentation websites from Docusaurus, MkDocs, or Sphinx projects for deployment to GitHub Pages, Netlify, or Vercel.
Instructions
Build static website for online hosting (ready for GitHub Pages, Netlify, Vercel, etc.)
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| docsPath | Yes | Path to documentation directory | |
| framework | Yes | Documentation framework used | |
| outputPath | No | Output path for built site (default: ./build) |
Implementation Reference
- src/tools/buildStatic.ts:7-72 (handler)The buildStatic function that executes the tool logic for building static documentation sites. Returns step-by-step instructions for building and deploying Docusaurus, MkDocs, or Sphinx sites.
export async function buildStatic(args: any) { const { docsPath, framework, outputPath } = args as BuildStaticArgs; const instructions: Record<string, string> = { docusaurus: `🏗️ Building Docusaurus Static Site: 1. Navigate to docs directory: cd ${docsPath} 2. Install dependencies (if not done): npm install 3. Build: npm run build 4. Output location: ${docsPath}/build 5. Test the build locally: npm run serve 6. Deploy to: - GitHub Pages: npm run deploy - Netlify: Drag & drop the 'build' folder - Vercel: Connect your repo`, mkdocs: `🏗️ Building MkDocs Static Site: 1. Navigate to project directory: cd ${docsPath} 2. Build: mkdocs build 3. Output location: ${docsPath}/site 4. Preview: cd site && python -m http.server 8000 5. Deploy to GitHub Pages: mkdocs gh-deploy`, sphinx: `🏗️ Building Sphinx Static Site: 1. Navigate to docs directory: cd ${docsPath} 2. Build HTML: make html 3. Output location: ${docsPath}/_build/html 4. Preview: cd _build/html && python -m http.server 8000 5. For ReadTheDocs: Connect your repository at readthedocs.org`, }; const instruction = instructions[framework] || "Framework not supported"; return { content: [ { type: "text", text: instruction, }, ], }; } - src/tools/buildStatic.ts:1-5 (schema)TypeScript interface BuildStaticArgs defining input parameters: docsPath (required), framework (required), and outputPath (optional).
interface BuildStaticArgs { docsPath: string; framework: string; outputPath?: string; } - src/index.ts:133-155 (registration)Registration of the 'docs_build_static' tool in the tools array, including its description and inputSchema (with docsPath, framework enum [docusaurus, mkdocs, sphinx], and outputPath).
{ name: "docs_build_static", description: "Build static website for online hosting (ready for GitHub Pages, Netlify, Vercel, etc.)", inputSchema: { type: "object", properties: { docsPath: { type: "string", description: "Path to documentation directory", }, framework: { type: "string", description: "Documentation framework used", enum: ["docusaurus", "mkdocs", "sphinx"], }, outputPath: { type: "string", description: "Output path for built site (default: ./build)", }, }, required: ["docsPath", "framework"], }, }, - src/index.ts:308-309 (helper)Case statement in the CallToolRequestSchema handler that routes 'docs_build_static' to the buildStatic function.
case "docs_build_static": return await buildStatic(args); - src/index.ts:14-14 (helper)Import of the buildStatic function from ./tools/buildStatic.js.
import { buildStatic } from "./tools/buildStatic.js";