Zip Hive Scaffold
Creates Express REST API projects with TypeScript support via the node-express template.
Creates FastAPI applications with async support using the python-fastapi template.
Creates new Next.js projects using the nextjs-app template, which includes the App Router and Tailwind CSS.
Creates Python applications, specifically FastAPI apps, via the python-fastapi template.
Creates new React projects with the built-in react-vite template, including React 18 and Vite setup.
Adds Tailwind CSS styling to Next.js projects through the nextjs-app template.
Creates a Turborepo monorepo structure for managing multiple packages.
Provides TypeScript support in multiple templates, including react-vite and node-express.
Provides Vite as the build tool for React projects created via the react-vite template.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Zip Hive ScaffoldCreate a React project called dashboard in ~/projects"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Zip Hive Scaffold
MCP server for bulk-creating files and folders for any project. Works with Claude Desktop, opencode, Cursor, Windsurf, and any MCP-compatible AI client.
Quick Start
curl -fsSL https://ziphive.js.org/mcp/install.sh | bashThen tell your AI:
Add the MCP server at ~/.ziphive-scaffold/dist/index.js
That's it. The AI will configure itself.
Related MCP server: project-scaffold
What it does
Give your AI assistant the ability to create files and folders on your local machine. Say things like:
"Create a React project called dashboard in ~/projects"
"Scaffold a Python FastAPI app called backend in /home/user/dev"
"Add a components/ui folder and Button.tsx to my existing app"
"Set up a Turborepo monorepo called platform in ~/code"
Tools
Tool | Description |
| Create a project from a built-in template |
| List all available templates |
| Create a project from a custom JSON structure |
| Add files to an existing directory |
| Create empty folder structures |
Built-in Templates
Template | Description |
| React 18 + Vite + TypeScript |
| Next.js 14 App Router + Tailwind CSS |
| Express REST API + TypeScript |
| FastAPI with async support |
| Minimal HTML/CSS/JS |
| Turborepo monorepo |
Manual Setup
If you prefer not to use the install script:
git clone https://github.com/Dqrshan/ziphive-scaffold.git
cd ziphive-scaffold
npm install
npm run buildThen tell your AI to add the MCP server pointing to dist/index.js.
Adding Custom Templates
Edit src/templates/index.ts and add a new ProjectStructure object:
templates["my-template"] = {
name: "my-template",
description: "My custom template",
folders: ["src", "tests"],
files: [
{ path: "package.json", content: "{ ... }" },
{ path: "src/index.ts", content: "..." },
],
};Then rebuild: npm run build
License
MIT
Available Tools
5 toolsscaffold_create_filesCreate Files in Existing ProjectAIdempotent
Add files to an existing project directory. Does not create a new project folder — files are created relative to the given directory.
Args:
target_dir (string): Absolute path to the target directory
files (array): Array of { path: string, content?: string } objects
overwrite (boolean): Whether to overwrite existing files (default: false)
Returns: A summary of created, skipped, and errored files.
Example: scaffold_create_files( target_dir="/home/user/projects/my-app", files=[ {"path": "src/utils/helpers.ts", "content": "export const noop = () => {}"}, {"path": "README.md", "content": "# My App"} ] )
| Name | Required | Description | Default |
|---|---|---|---|
| files | Yes | Array of files to create | |
| overwrite | No | Whether to overwrite existing files | |
| target_dir | Yes | Absolute path to the target directory |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (readOnlyHint=false, destructiveHint=false, idempotentHint=true), the description adds important behavioral context: files are created relative to the given directory, and the operation can skip or error on files. It also mentions the return summary, which is not visible in annotations. This adds meaningful transparency without overstating side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with clear sections for Args, Returns, and an Example. It is moderately concise and avoids excessive verbosity. The example is particularly useful but adds some length; still, every part contributes to understanding the tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (3 parameters, nested array, overwrite behavior) and the presence of good schema and annotations, the description is complete enough. It explains the tool's purpose, return type, and operational constraints (relative paths, no new folder creation). The absence of an output schema is compensated by the explicit return description.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already has 100% coverage with clear descriptions for all parameters. The description reinforces these by listing them in an Args block and providing a concrete example call. The example clarifies the structure of the nested 'files' array, which is valuable beyond the schema's property definitions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: 'Add files to an existing project directory.' This is a specific verb (add) and resource (files) that distinguishes it from sibling tools like scaffold_create_folders and scaffold_create_project. The explicit note 'Does not create a new project folder' further differentiates it from the project-creation sibling.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for when to use the tool: to add files to an existing project directory. It also states a when-not condition ('Does not create a new project folder'), but it does not explicitly name an alternative sibling tool. This is slightly below level 5 because alternatives are not directly referenced, but it still offers solid usage guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
scaffold_create_foldersCreate FoldersAIdempotent
Create empty folder structures within an existing directory.
Args:
target_dir (string): Absolute path to the parent directory
folders (array): Array of relative folder paths to create
Returns: A list of created folders.
Example: scaffold_create_folders( target_dir="/home/user/projects/my-app", folders=["src/components/ui", "src/hooks", "tests/unit"] )
| Name | Required | Description | Default |
|---|---|---|---|
| folders | Yes | Array of relative folder paths to create | |
| target_dir | Yes | Absolute path to the parent directory |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate idempotentHint=true and readOnlyHint=false. The description adds that folders are empty and existing directory is required, but does not disclose behavior like whether parent directories are auto-created or what happens if target_dir is missing. Meets baseline with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with Args, Returns, and an Example. It is appropriately sized, though the example could be omitted without losing essential information. Still clear and front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple 2-parameter tool without output schema, the description covers purpose, parameters, returns, and an example. The sibling tools provide context. Minor gap: behavior on pre-existing folders is not mentioned, but idempotent annotation covers it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with both target_dir and folders described. The description's Args section repeats the schema but adds no new meaning, so baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb+resource: 'Create empty folder structures within an existing directory.' It clearly distinguishes the tool from siblings like scaffold_create_files and scaffold_from_template by focusing on folders.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives an example but does not explicitly state when to use this tool versus alternatives. The purpose implies it is for folder creation, but no exclusions or alternative references are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
scaffold_create_projectCreate Custom ProjectAIdempotent
Create a project from a custom structure definition. Pass files and optional folders as JSON.
Args:
project_name (string): Name of the project folder
root_dir (string): Parent directory where the project folder will be created
files (array): Array of { path: string, content?: string } objects
folders (array, optional): Array of folder paths to create (empty dirs)
overwrite (boolean): Whether to overwrite existing files (default: false)
Returns: A summary of created, skipped, and errored files/folders.
Example: scaffold_create_project( project_name="my-api", root_dir="/home/user/projects", files=[ {"path": "src/index.ts", "content": "console.log('hello')"}, {"path": "package.json", "content": "{ "name": "my-api" }"} ], folders=["src/routes", "src/models"] )
| Name | Required | Description | Default |
|---|---|---|---|
| files | Yes | Array of files to create | |
| folders | No | Array of folder paths to create (empty directories) | |
| root_dir | Yes | Absolute path to the parent directory | |
| overwrite | No | Whether to overwrite existing files | |
| project_name | Yes | Name of the project folder to create |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses the return value ('summary of created, skipped, and errored files/folders') and parameter defaults (overwrite default false). These behaviors align with the annotations (readOnlyHint=false, destructiveHint=false, idempotentHint=true) and add context beyond what annotations alone provide.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-organized with Args, Returns, and Example sections. It is thorough yet every sentence contributes meaningful information—no filler. The example is compact and illustrates the exact structure expected.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given that there is no output schema, the description specifies the return structure. It covers all parameters, their types, optionality, defaults, and an example. The tool's behavior and parameters are fully described, making it complete for an agent to use correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage, so the baseline is 3. The description enhances this by providing a structured overview of each parameter and a concrete example showing the expected shape of the files array, which adds practical value beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific verb and resource: 'Create a project from a custom structure definition.' This distinguishes it from sibling tools like scaffold_list_templates, scaffold_from_template, scaffold_create_folders, and scaffold_create_files, which have different scopes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description specifies it is for custom structure definitions, which implies it is used when creating a project from scratch rather than from a predefined template. However, it does not explicitly mention alternatives or provide exclusionary guidance, so it falls short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
scaffold_from_templateScaffold from TemplateAIdempotent
Create a complete project from a built-in template. Available templates: react-vite, nextjs-app, node-express, python-fastapi, vanilla-html, monorepo-turborepo.
Args:
template_name (string): Name of the template to use
project_name (string): Name of the project folder to create
root_dir (string): Parent directory where the project folder will be created
overwrite (boolean): Whether to overwrite existing files (default: false)
Returns: A summary of created, skipped, and errored files/folders with the root path.
Example:
"Create a React project called my-app in /home/user/projects" -> template_name="react-vite", project_name="my-app", root_dir="/home/user/projects"
| Name | Required | Description | Default |
|---|---|---|---|
| root_dir | Yes | Absolute path to the parent directory where the project will be created | |
| overwrite | No | Whether to overwrite existing files (default: false) | |
| project_name | Yes | Name of the project folder to create | |
| template_name | Yes | Name of the built-in template (e.g. react-vite, nextjs-app, node-express, python-fastapi, vanilla-html, monorepo-turborepo) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses overwrite behavior ('Whether to overwrite existing files') and return summary ('created, skipped, and errored files/folders'), which are not in the annotations. It does not contradict the idempotentHint or destructiveHint annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Well-structured with intro, args, returns, and example paragraphs. It is not overly long, though the arg list duplicates schema info.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Covers purpose, templates, return value, and an example, enough for a 4-parameter tool without an output schema. It doesn't address error cases or permission prerequisites, but the annotations and schema fill most gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema descriptions cover all four parameters; the tool description adds a structured arg list and an example that maps natural language to parameter values, reinforcing template_name and root_dir usage. This adds modest value beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it creates a complete project from a built-in template, enumerates available templates, and includes a concrete example mapping a natural-language request to parameter values. This distinguishes it from sibling tools like scaffold_create_folders and scaffold_create_files.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides clear context: use when scaffolding from a built-in template, listing six templates. However, it does not explicitly exclude or contrast with sibling tools such as scaffold_create_project, so guidance on alternatives is missing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
scaffold_list_templatesList Scaffold TemplatesARead-onlyIdempotent
List all available built-in project templates with their descriptions.
Returns: A list of template names and their descriptions.
Example:
Use when "What templates are available?" or "Show me the templates"
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, establishing the safety profile. The description adds minimal behavioral context, only restating that it returns template names and descriptions. No additional details on pagination, filtering, or system behavior are provided, so a score of 3 is appropriate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is brief and front-loaded, but it contains redundancy: the opening sentence already mentions template descriptions, and the 'Returns' section repeats that information. The example adds useful context, but a slightly tighter structure would be ideal.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with no parameters and no output schema, the description is essentially complete: it states what the tool lists (templates) and what it returns (names and descriptions). It could optionally mention how this relates to sibling scaffolding tools, but that is not necessary for a simple list operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so the baseline is 4. The description has no parameter information to add, and because there are no parameters, no compensation is needed. The baseline score reflects this effectively.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists all available built-in project templates, using the specific verb 'List' plus a well-defined resource. It differentiates from sibling tools like scaffold_from_template or scaffold_create_project by focusing purely on listing rather than creating or modifying.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear usage context with example user queries ('What templates are available?' or 'Show me the templates'). It does not explicitly mention when not to use it or name alternatives, but the examples adequately convey when this tool is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
5 tool updates
v1.0.0- First observed
scaffold_create_files - First observed
scaffold_create_folders - First observed
scaffold_create_project - First observed
scaffold_from_template - First observed
scaffold_list_templates
TDQS
Tools are mostly distinct: listing templates, creating from a template, creating a custom project, adding folders, and adding files are clearly different operations. However, scaffold_from_template and scaffold_create_project both create a new project, which could cause confusion if an agent isn't careful about template vs. custom structure.
All tools share the scaffold_ prefix, but the verb patterns are inconsistent: list_templates and create_* are verbs, while from_template is not. Three tools use 'create' but with different objects, making the naming somewhat predictable but not uniformly verb_noun.
With 5 tools, the set is well-scoped for a scaffolding server. Each tool covers a distinct function without being redundant or overwhelming, and the count is within the ideal range for a focused utility.
The tool surface covers the core scaffolding lifecycle: list templates, create from template, create custom projects, add folders, and add files. Minor gaps include no template preview or dry-run capability, but the existing operations are sufficient for most scaffolding workflows.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
MCP server for generating rough-draft project plans from natural-language prompts.
A MCP server built for developers enabling Git based project management with project and personal…
MCP Server for JFrog, providing tools for development and artifact management.
An MCP server that provides asset auto generator
Related MCP Servers
- AlicenseBqualityDmaintenanceA tool that dynamically generates and configures MCP servers by automatically creating necessary directories and files according to user specifications.12920MIT
- AlicenseAqualityDmaintenanceAn MCP server that scaffolds full-stack projects with consistent structure, Docker setup, CI/CD pipelines, and database configuration.6MIT
- AlicenseAqualityDmaintenanceA unified MCP server for scaffolding project structures across multiple frameworks including Spring Boot, React, Vue, Next.js, FastAPI, Django, Flask, Express, and more.2241MIT
- AlicenseBqualityDmaintenanceHelps users easily create new MCP servers by providing documentation, templates, and tools to generate complete server files and configuration.21MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/Dqrshan/ziphive-scaffold'
If you have feedback or need assistance with the MCP directory API, please join our Discord server