Skip to main content
Glama

Server Quality Checklist

67%
Profile completionA complete profile improves this server's visibility in search results.
  • Latest release: v0.1.1

  • Disambiguation5/5

    Each tool targets a distinct stage in the C⏚ hardware design workflow: type-checking, documentation, example retrieval, FSM analysis, HDL generation, graph visualization, reporting, simulation, error-to-recipe mapping, and synthesis. No overlaps are apparent.

    Naming Consistency4/5

    All tools share the 'cg_' prefix. Most follow a verb_noun pattern (e.g., cg_check, cg_generate_verilog, cg_simulate), but a few use nouns alone (cg_docs, cg_example, cg_fsm, cg_graph). This minor inconsistency slightly reduces clarity but remains acceptable.

    Tool Count5/5

    With exactly 10 tools, the set is well-scoped for a hardware design assistant. It covers the full front-to-back workflow without being overwhelming or too sparse.

    Completeness5/5

    The tool surface provides complete lifecycle coverage: code checking, example retrieval, simulation, synthesis, Verilog generation, report finalization, plus supplementary tools for debugging (FSM, graph) and error guidance. No obvious gaps for the stated purpose.

  • Average 4.2/5 across 10 of 10 tools scored. Lowest: 2.9/5.

    See the Tool Scores section below for per-tool breakdowns.

    • No community issues in the last 6 months
    • 13 commits in the last 12 weeks
    • No stable releases found
    • No critical vulnerability alerts
    • No high-severity vulnerability alerts
    • No code scanning findings
    • CI is passing
  • This repository is licensed under MIT License.

  • This repository includes a README.md file.

  • No tool usage detected in the last 30 days. Usage tracking helps demonstrate server value.

    Tip: use the "Try in Browser" feature on the server page to seed initial usage.

  • Add a glama.json file to provide metadata about your server.

  • If you are the author, simply .

    If the server belongs to an organization, first add glama.json to the root of your repository:

    {
      "$schema": "https://glama.ai/mcp/schemas/server.json",
      "maintainers": [
        "your-github-username"
      ]
    }

    Then . Browse examples.

  • Add related servers to improve discoverability.

How to sync the server with GitHub?

Servers are automatically synced at least once per day, but you can also sync manually at any time to instantly update the server profile.

To manually sync the server, click the "Sync Server" button in the MCP server admin interface.

How is the quality score calculated?

The overall quality score combines two components: Tool Definition Quality (70%) and Server Coherence (30%).

Tool Definition Quality measures how well each tool describes itself to AI agents. Every tool is scored 1–5 across six dimensions: Purpose Clarity (25%), Usage Guidelines (20%), Behavioral Transparency (20%), Parameter Semantics (15%), Conciseness & Structure (10%), and Contextual Completeness (10%). The server-level definition quality score is calculated as 60% mean TDQS + 40% minimum TDQS, so a single poorly described tool pulls the score down.

Server Coherence evaluates how well the tools work together as a set, scoring four dimensions equally: Disambiguation (can agents tell tools apart?), Naming Consistency, Tool Count Appropriateness, and Completeness (are there gaps in the tool surface?).

Tiers are derived from the overall score: A (≥3.5), B (≥3.0), C (≥2.0), D (≥1.0), F (<1.0). B and above is considered passing.

Tool Scores

  • Behavior2/5

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

    No annotations are provided, so the description carries the full burden. It states it 'shows' information but does not disclose whether it is read-only, if it requires compilation, or error conditions. Minimal behavioral context.

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

    Conciseness5/5

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

    Two short sentences, no fluff. First sentence states the primary action, second provides a use case. Efficiently structured.

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

    Completeness2/5

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

    With 3 parameters and no output schema, the description should explain parameters and prerequisites. It lacks this information, making it incomplete for an agent to use effectively.

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

    Parameters1/5

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

    Input schema has 3 parameters with 0% description coverage. The description adds no meaning about 'source', 'task', or 'extra_files', leaving the agent to infer from parameter names only.

    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?

    Description clearly states the tool shows a task's compiled state machine (states+transitions), distinguishing it from siblings like cg_graph or cg_report. However, it could be more explicit about the context (e.g., hardware tasks).

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

    Usage Guidelines3/5

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

    Provides a specific use case: 'confirm an FSM has the intended number of states'. No mention of when to avoid using it or alternatives among siblings.

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

  • Behavior2/5

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

    No annotations are provided, and the description gives no information about side effects, permissions, or whether the operation is read-only. The tool appears to be a read operation, but this is not explicitly stated.

    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 description is concise, consisting of two short sentences that front-load the main purpose. However, it sacrifices necessary parameter details for brevity, earning a slightly lower score.

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

    Completeness2/5

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

    Given the tool has three parameters with no descriptions in the schema, no output schema, and no annotations, the description is inadequate. It lacks details on parameter usage, return values, and ties to sibling tools.

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

    Parameters1/5

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

    With 0% schema description coverage, the description should explain what parameters like 'source', 'network', and 'extra_files' mean in the context of the tool. It does not, leaving the agent to guess their purpose.

    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?

    The description clearly states the tool shows a network's compiled graph, listing specific elements like instances, ports, widths, interfaces, and connections. This distinguishes it from sibling tools like cg_synth or cg_simulate.

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

    Usage Guidelines3/5

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

    The description notes it is 'useful to confirm wiring', providing a clear use case. However, it does not mention when not to use it or suggest alternative tools for other tasks.

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

  • Behavior4/5

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

    Discloses return format, file writing vs inline behavior, and temp directory cleanup. Lacks info on overwrite behavior or permissions, but covers main behavioral traits well.

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

    Conciseness5/5

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

    Three well-focused paragraphs. Front-loaded with purpose, then parameter details. No redundant sentences. Efficient and readable.

    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?

    Covers main functionality, return values, key parameters, and usage context. Lacks details on source format or error handling, but sufficient for an agent.

    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?

    With 0% schema coverage, description explains target, output_dir, and package_dir clearly. Source is implied but not explicitly described. extra_files not mentioned. Good but not complete.

    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?

    The description clearly states 'Generate synthesizable HDL from C⏚' and specifies target languages. It distinguishes from siblings by positioning as the step after cg_simulate passes.

    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?

    Explicitly says 'Use after cg_simulate passes, to hand off RTL.' Provides when to use output_dir vs not, and package_dir for multi-file projects. Clear context for appropriate use.

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

  • Behavior4/5

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

    No annotations are provided, so the description must carry the full behavioral burden. It transparently states that cg_report does NO synthesis, only aggregates existing fragments. It discloses the return object with fields like ok, report, kernels, sim_ok, message, and notes that schematics are 'best-effort'. This exceeds what's required.

    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 description is front-loaded with the main purpose and then provides a workflow and return value summary. It is slightly lengthy due to the workflow explanation, but every sentence adds value and the structure is logical.

    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 only 2 parameters, no output schema, and a clear set of sibling tools, the description is fully adequate. It explains the tool's role, dependencies, parameter effects, and output, leaving no obvious gaps for an agent to misinterpret.

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

    Parameters4/5

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

    With 0% schema description coverage, the description provides essential parameter semantics: report_dir defaults to 'fpga/build', schematics defaults to true and setting it to false skips SVG generation. This adds significant meaning beyond the raw schema.

    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?

    The description clearly states that cg_report finalizes an FPGA report by rendering a self-contained HTML with synthesis table, simulation results, Verilog file list, and datapath SVGs. It distinguishes itself from siblings by noting it aggregates fragments from cg_synth and cg_simulate, not performing synthesis itself.

    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?

    The description provides a clear workflow showing the correct order: cg_generate_verilog, cg_simulate, cg_synth, then cg_report. It also notes that setting schematics=False skips SVGs for faster execution. However, it doesn't explicitly state when not to use it or compare to other sibling tools beyond the implied workflow.

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

  • Behavior4/5

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

    With no annotations, the description discloses the return format ({ok, recipe, hint, source}) and provides examples of mappings, giving insight into behavior. It could mention what happens if no match is found, but the examples are helpful.

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

    Conciseness5/5

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

    The description is concise (three sentences), front-loaded with the main purpose, followed by examples and usage context. Every sentence adds value without redundancy.

    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?

    Given the tool's simplicity (one parameter, no output schema, no annotations), the description covers purpose, usage, return format, and examples. It is mostly complete, though it could explicitly state behavior for unmatched inputs.

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

    Parameters4/5

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

    The single required parameter 'message' is described as a compiler error/diagnostic, with examples of specific error patterns. Since the schema has 0% description coverage, the description compensates by adding meaning beyond the type definition.

    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?

    The description clearly states the tool's purpose: mapping a compiler error/diagnostic to a recipe demonstrating a synthesizable pattern. It uses specific verbs and examples (e.g., 'div/shift-by-a-variable → Recip') to illustrate the mapping, and distinguishes from sibling tools by noting that some auto-attach suggestions.

    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?

    The description explains that other tools (cg_check, etc.) already auto-attach suggestions, so this tool is for direct lookup when needed. This provides clear context for when to use it, though it does not explicitly state when not to use it.

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

  • Behavior4/5

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

    Discloses read-only behavior, return format (ok, diagnostics, summary), and parameter effects. No annotations exist, so description bears full burden. Does not mention performance or rate limits, but sufficient for static analysis tool.

    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?

    Single paragraph packs essential information. Front-loads purpose. Slightly dense but no wasted words. Could benefit from structured formatting for readability, but overall concise.

    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?

    Handles both simple and multi-file usage, explains return format, and warns about tasks from cg_example needing file storage. No output schema exists, but description covers everything needed for correct invocation.

    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 has 0% description coverage, but description compensates fully: explains source is required, extra_files maps filename to content for imports, and package_dir is relative project folder for multi-file projects. Adds crucial context beyond schema.

    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?

    Clearly states the tool parses, scopes, and type-checks source without running it, distinguishing it from siblings like cg_simulate (execution) and cg_suggest_for_error (error-specific). Includes return format and usage context.

    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?

    Explicitly advises calling this first on any draft and fixing diagnostics before simulating. Explains when to use extra_files and package_dir. Lacks explicit exclusions but context is clear given sibling tools.

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

  • Behavior4/5

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

    No annotations provided, so description carries full burden. Clearly states the read-only behavior: fetches docs, returns index or full content depending on topic. Does not mention error cases or response format, but for a doc-fetching tool this is acceptable.

    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 action. Every sentence adds value, but the bullet-style topic list could be slightly more concise. Still well-organized and informative.

    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 the simple parameter set (one optional string, no enums, no output schema), the description covers all necessary context: behavior, parameter semantics, and topic choices. No missing information for effective use.

    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 has 0% description coverage and one parameter 'topic'. The description exhaustively explains its meaning, including the effect of omitting it (index) vs. providing a topic (full content), and enumerates the valid topic values with detailed content summaries.

    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?

    Describes a specific verb 'Fetch' and resource 'markdown knowledge doc'. Clearly distinguishes behavior for no topic vs. a topic. Sibling tools are all other operations (check, generate, simulate), so this tool's role as a documentation retriever is unambiguous.

    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?

    Provides explicit context for when to use the 'riscv' topic ('when building or extending a processor...'). Implies usage for 'context' as core language pack. Does not explicitly state when not to use or suggest alternatives, but given the tool's unique role, this is a minor gap.

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

  • Behavior4/5

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

    With no annotations, the description bears full burden. It discloses that the tool is a curated dictionary, not free-form search; describes return formats for no pattern and with pattern; explains matching specificity-weighted logic; distinguishes entry kinds; and states verification status. It does not cover auth, rate limits, or error behavior, but is comprehensive for a read-only lookup tool.

    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 description is somewhat long but every sentence adds value. It is front-loaded with purpose and then details behavior. Some redundancy could be trimmed, but overall well-structured for the complexity of the tool.

    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 the absence of output schema and only two parameters, the description is thorough: it explains input behavior (no pattern vs pattern), output format (compact index or best match plus runners-up), matching algorithm, entry types, verification status, and a workflow. No significant gaps remain.

    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 description coverage is 0%, so the description must fully explain parameters. It does: 'pattern' is described in detail with matching behavior and examples (e.g., '1/sqrt' vs 'sqrt'); 'k' is explained as controlling the number of returned sources, with k>1 for composition. This adds rich meaning beyond the bare schema.

    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?

    The description clearly states it retrieves a verified C⏚ base for seeding and adaptation, contrasting with synthesizing from scratch. It explains it's a curated dictionary with scored lazy lookup, not free-form search. This verb+resource combination is specific and distinguishes it from sibling tools like cg_check, cg_simulate, etc.

    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?

    The description provides a workflow (cg_example → edit → cg_check → cg_simulate → cg_generate_verilog → cg_synth) and advises against synthesizing hard kernels from scratch. It implies when to use this tool (to get a verified base) and when not to (when free-form search is needed), but does not explicitly name alternatives for specific tasks.

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

  • Behavior5/5

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

    With no annotations, the description fully discloses behavioral traits: return values (ok, simulator, timed_out, diagnostics, output), self-check blocks that fail on mismatch, and simulator availability conditions. No contradictions.

    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 description is well-structured with front-loaded return structure and separate sections for simulator options and multi-file projects. It is informative without being overly verbose, though could be slightly more concise.

    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?

    Given the complexity (6 params, no output schema, no annotations), the description covers main use cases, return values, and configuration. Missing details on 'extra_files' and exact format of 'source', but overall provides sufficient context for an agent.

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

    Parameters4/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 burden. It explains source (implied), simulator (choices and requirements), report_dir (default and disable), and package_dir (multi-file usage). Timeout and extra_files are less explained, but key parameters are well covered.

    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?

    The description clearly states the tool simulates a C⏚ source and details the return structure. It distinguishes itself from siblings like cg_generate_verilog or cg_synth by focusing on simulation and correctness checking.

    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?

    The description provides guidelines on when to use built-in bytecode or Verilog simulators, notes dependencies for iverilog and verilator, and explains multi-file projects. It does not explicitly contrast with all siblings but gives clear context for iterative testing.

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

  • Behavior5/5

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

    With no annotations, the description fully shoulders the burden. It details the return value structure (ok, verdict, top, flow, cells, etc.), explains failure modes (FOLDED, SUSPECT, ERROR), and warns about silent failures (warnings for degenerate datapath and latches). It also notes the default report_dir behavior and how to disable it, offering comprehensive behavioral insight.

    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 description is long but well-structured, starting with purpose, then return value, usage warnings, parameter details, and defaults. Every sentence provides useful information. While it could be slightly more concise, the detail is justified given the tool's complexity.

    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?

    Given the tool's complexity (synthesis, 7 parameters, rich output) and lack of output schema and annotations, the description is quite complete. It thoroughly explains return values, failure modes, usage order relative to siblings, and key parameters. It misses explanations for a few parameters (timeout, extra_files, package_dir), but overall provides sufficient context for correct invocation.

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

    Parameters4/5

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

    Schema coverage is 0%, so the description must add meaning. It explains key parameters: top (defaults to first non-testbench task), flow (lists options like generic, ice40, etc.), and report_dir (defaults to 'fpga/build', can disable with ''). However, it does not cover all 7 parameters; missing explanations for source, timeout, extra_files, and package_dir. Still, it adds significant context beyond the schema for the most critical parameters.

    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?

    The description clearly states the tool's purpose: 'Synthesize the generated Verilog with yosys — the strongest signal that a design maps to real hardware.' It explicitly distinguishes from cg_simulate, which checks correctness, and explains what each verdict means, making the purpose unambiguous.

    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?

    The description provides explicit usage guidance: 'Run after cg_simulate passes.' It clarifies that the tool is not a correctness oracle and directs to cg_simulate for that. It also gives advice on when to adjust parameters like top and flow, and how to interpret results to know if the tool was used correctly.

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

GitHub Badge

Glama performs regular codebase and documentation scans to:

  • Confirm that the MCP server is working as expected.
  • Confirm that there are no obvious security issues.
  • Evaluate tool definition quality.

Our badge communicates server capabilities, safety, and installation instructions.

Card Badge

cg-agent-kit MCP server

Copy to your README.md:

Score Badge

cg-agent-kit MCP server

Copy to your README.md:

Latest Blog Posts

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/Neosyn-Logic/cg-agent-kit'

If you have feedback or need assistance with the MCP directory API, please join our Discord server