Skip to main content
Glama

create_website

Destructive

Create a NEW Grigora website with AI from a description of what it should be.

Grigora's AI website builder designs and writes the whole site from the prompt in the background (usually a few minutes). This uses the account's AI credits and counts toward its plan's website limit, so call it once per website the user actually asked for. The site is NOT published.

Then: poll get_website_build_status(project_id) until status is "completed" (or "failed"); after that the new site's project_id works with every other tool (products, directory, blog, assets...), edit_website changes it with more prompts, and publish_project makes it live when the user wants. Give the user the returned editor_url to open the site in Grigora's editor.

Args: prompt: What the website is for and what it should contain — business, audience, pages, tone, style. Specific is better. name: The website's name, e.g. "Pumpkin". Optional; derived from the prompt when empty. attachments: Optional links to files for the builder to use — logos, photos, brand guides, menus (PDF), price lists (CSV), audio, video. A list of up to 10 public URLs, e.g. ["https://example.com/logo.png"]. Grigora downloads them itself (up to 80 MB each), so only pass links — never file contents. Refer to them in the prompt by file name, e.g. "use logo.png in the header". For a LOCAL file (e.g. on the user's computer), first call get_attachment_upload_url, upload it with the returned curl command, then pass the returned url here. A refused attachment fails the call before anything is built or charged.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameNo
promptYes
attachmentsNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.9/5.0
Behavior5/5

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

Annotations declare destructiveHint=true, openWorldHint=true, readOnlyHint=false; the description adds critical context beyond that: the build runs asynchronously in a few minutes, consumes AI credits and the plan's website limit, the site is NOT published, and refused attachments fail before build/charge. This is exactly the behavioral detail annotations cannot convey.

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?

Front-loaded with the core verb+resource, then sequencing, then args. Every sentence earns its place, though the attachments paragraph is dense and the multi-line wrap of the opening sentence is slightly awkward. No filler.

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

Completeness5/5

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

Given a destructive, credit-consuming, async operation with 0% schema coverage, the description covers cost, latency, publish state, follow-up tools, and the local-file upload path. An output schema exists, so return values needn't be explained; nothing an agent needs to call this correctly is missing.

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

Parameters5/5

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

Schema coverage is 0% so the description carries the full burden, and it does: prompt content guidance, name being optional and derived from prompt, attachments syntax (list of up to 10 public URLs, 80 MB cap, links only), plus the local-file workaround via get_attachment_upload_url. This is far richer than the bare schema allows.

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

Purpose5/5

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

States a specific verb+resource ('Create a NEW Grigora website with AI') and clarifies it is a background build from a prompt, distinguishing it from edit_website, publish_project, and get_website_build_status. An agent can tell exactly what this tool produces.

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

Usage Guidelines5/5

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

Explicit when-to-use ('call it once per website the user actually asked for'), when-not-to (must poll build status before using other tools), and names both the next step (get_website_build_status) and downstream alternatives (edit_website, publish_project). Nothing is left to inference.

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