Skip to main content
Glama

Create project

create_project

Creates a new website project. Xodia supports React + Vite and plain HTML sites: by default it starts from the Xodia template (React + Vite: Vite + React Router + Tailwind v4); template "html-vite" starts a plain HTML site with Vite instead. Other frameworks (Next.js, Astro, React Router framework mode) can't be started here. Then call open_workspace.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "displayName": "<displayName>"
    },
    "name": "create_project"
  }
}

Input Schema

NameRequiredDescriptionDefault
templateNoWhat the site starts from: "react-router" (React + Vite, the Xodia template, default) or "html-vite" (plain HTML with Vite)
displayNameYesHuman-friendly site name

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=false, destructiveHint=false and openWorldHint=false, so the mutation/safety profile is covered. The description adds genuine context beyond that: the default template and its stack, the html-vite alternative, and the unsupported frameworks. It says nothing about what happens on a duplicate displayName, whether creation is local or remote, or what the tool returns (e.g., a project id), which matters for a create operation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The core action and default behavior are front-loaded in the first sentence, with constraints and the next step following logically. The parenthetical stack detail ("Vite + React Router + Tailwind v4") is slightly dense but earns its place by telling the agent what the project will contain.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple two-parameter creation tool with full schema coverage and annotations, the description covers supported inputs, exclusions, and the required follow-up call. With no output schema, the absence of any statement about the returned project identifier or duplicate-name behavior is the remaining gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so both parameters (displayName, template enum) are already fully documented including the default. The description restates the template options and default without adding format, length, or naming-convention guidance, so it does not meaningfully exceed the schema baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb+resource: "Creates a new website project." It then scopes the tool by naming the supported starting points (Xodia React+Vite template, html-vite) and explicitly excluding Next.js, Astro and React Router framework mode. It is clearly distinct from create_page/create_collection/create_folder siblings by resource type, though it never names an alternative creation tool.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

"Then call open_workspace" gives explicit sequencing guidance for the follow-up step, and the exclusion sentence functions as a when-not (other frameworks can't be created here). What is missing is guidance on when a new project is warranted versus adding pages/collections to an existing one, which the agent must infer.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources