Skip to main content
Glama

create_project

Create a Vivado project on disk in project mode, defaulting to the Red Pitaya STEMlab 125-14 part, then add sources and constraints before synthesis.

Instructions

Create a new Vivado project on disk in project mode. Defaults to the Red Pitaya STEMlab 125-14 part (xc7z010clg400-1). Call add_sources / add_constraints next, then run_synthesis.

Input Schema

NameRequiredDescriptionDefault
nameYesProject name
partNoXilinx part number (default: xc7z010clg400-1)
forceNoOverwrite existing project (default: true)
directoryYesParent directory; project created at <directory>/<name>
target_languageNoVerilog or VHDL (default: Verilog)

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.5.0

TDQS

A3.8/5.0
Behavior3/5

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

With no annotations, the description carries the full burden; it does disclose that a real project directory is written to disk and that the flow is project-mode (not in-memory). It omits important behavior: whether an active Vivado session (start_session) is required first, and what happens when a project of that name already exists (the force=true default in the schema implies overwrite, but the description never says so).

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?

Three short sentences, front-loaded with the action and followed by workflow order; nothing superfluous. Minor redundancy in repeating the default part number already declared in the schema.

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

Completeness3/5

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

No output schema and no annotations, so the description should cover more: the return value (created project path/handle), the session prerequisite, and overwrite semantics are all absent. For a 5-parameter mutating tool it is adequate but leaves real gaps.

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 coverage is 100% and every parameter is documented in-schema, including the <directory>/<name> path composition and defaults. The description's only added parameter content is restating the default part, so baseline 3 applies.

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 and resource ("Create a new Vivado project") plus the disk/project-mode scope, which distinguishes it from open_project, create_block_design, and the rp_* project variants. The default part is named concretely.

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?

Gives an explicit follow-on workflow ("Call add_sources / add_constraints next, then run_synthesis"), which tells the agent where this sits in the sequence. It stops short of exclusions — nothing says when to prefer rp_create_custom_project or create_block_design instead.

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

Deploy Server

Other Tools