Skip to main content
Glama

Server Quality Checklist

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

  • Disambiguation5/5

    Each tool targets a distinct phase in the image generation workflow: capabilities, upload, generate, execution status, event resumption, and cancellation. No two tools overlap in purpose, so an agent can reliably select the correct one.

    Naming Consistency4/5

    All tools share the 'dreamlayer_' prefix, but the action words mix verbs (upload, generate, cancel) and nouns (capabilities, execution, events). The pattern is still predictable and readable, with only minor stylistic inconsistency.

    Tool Count5/5

    With 6 tools, the surface is well-scoped for an image generation API. Each tool serves a necessary function, and the count feels neither sparse nor bloated.

    Completeness5/5

    The set covers the full lifecycle: capability introspection, asset upload, generation, status retrieval, event continuation, and cancellation. No obvious gaps exist for the domain, and all actions lead to resolvable outcomes.

  • Average 3.7/5 across 6 of 6 tools scored. Lowest: 2.7/5.

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

    • No community issues in the last 6 months
    • 19 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 must carry the full behavioral burden. It only says 'resume' without disclosing whether the operation is read-only, what side effects exist, how it handles missing event IDs, or the format of the response. The absence of any annotation coverage makes this a significant gap.

    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 (two sentences) and front-loads the purpose. The instruction to pass the last event ID is stated early. However, the ambiguity around optionality slightly reduces structure clarity, though it remains efficient overall.

    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 no output schema and no annotations, the description is too sparse. It does not specify what events are, how they are returned, pagination or limits, or error behavior. An agent cannot reliably call this tool without more context about the expected response and failure modes.

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

    Parameters2/5

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

    The description explains the purpose of 'last_event_id' but does not explain 'execution_id'. More critically, it implies 'last_event_id' should be passed, yet the schema marks it as optional. This inconsistency confuses the agent about parameter requirements. Since schema coverage is 0%, the description should have clarified both parameters and their optionality.

    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 states a clear action ('Resume an execution's events') and the resource (execution's events). However, 'drop' and 'events' are not defined, and sibling tools like dreamlayer_execution and dreamlayer_cancel could overlap in purpose. It is specific enough to convey the core function but lacks explicit differentiation.

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

    Usage Guidelines2/5

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

    The description gives a trigger condition ('after a drop') but does not mention any alternatives or when not to use this tool. It does not reference sibling tools like dreamlayer_execution or dreamlayer_cancel for comparison, leaving the agent to infer the appropriate usage context.

    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?

    There are no annotations, so the description carries the full behavioral disclosure burden. It only says 'request cancellation' without specifying whether it is best-effort, synchronous, idempotent, or what happens if the execution is already dispatched. It also fails to mention if there are side effects or how success is signaled. This leaves significant behavioral ambiguity for a mutating operation.

    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 a single sentence with zero wasted words. It front-loads the action and the timing constraint, making it immediately scannable. Perfectly concise.

    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?

    For a cancellation tool with no annotations and no output schema, the description is incomplete. It does not mention whether cancellation is guaranteed, what happens after a successful cancel, whether it can fail, or how to verify the cancellation. An agent would have to guess or call other tools to understand the full lifecycle.

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

    Parameters2/5

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

    With 0% schema description coverage and only a generic 'execution_id' property, the description adds no extra meaning about the parameter. It does not clarify what kind of identifier it is, its format, or how to obtain it. The parameter name is somewhat self-explanatory, but the description does not compensate for the schema's lack of detail.

    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 verb 'cancel' and the resource 'execution', and adds the timing constraint 'before it dispatches'. This distinguishes it from sibling tools like dreamlayer_generate (which creates) and dreamlayer_execution (which likely queries status), 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 Guidelines3/5

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

    The phrase 'before it dispatches' implies the tool is only valid for executions not yet dispatched, giving a clear condition for use. However, it does not explicitly state when not to use it (e.g., after dispatch) or point to alternative tools like dreamlayer_execution for checking status. The guidance is implicit but limited.

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

  • Behavior3/5

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

    With no annotations provided, the description must convey behavioral traits itself. It states it 'reads' state, implying a non-mutating operation, which is the key trait. It also introduces 'canonical state,' which adds context on the nature of the data. However, it doesn't disclose additional details like error handling or side effects, which is acceptable given the tool's simplicity.

    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 two sentences with no fluff. The primary purpose is front-loaded first, followed by the usage instruction. Every word earns its place, demonstrating excellent conciseness.

    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?

    For a tool with a single, self-explanatory parameter and no output schema, the description covers the when and what. However, it does not describe the return value or the nature of 'canonical state,' leaving some ambiguity for an agent deciding whether the response will answer its uncertainty. While not essential, this gap prevents a higher score.

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

    Parameters2/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 compensate for the lack of parameter documentation. The only parameter, execution_id, is not mentioned or elaborated in the description; it only appears implicitly as the target of the read. This fails to add meaning beyond the field name and basic schema constraints.

    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 action 'Read canonical state for one execution' – a specific verb and resource. It distinguishes itself from siblings like dreamlayer_generate or dreamlayer_upload_image by focusing on reading state rather than actions.

    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?

    It provides a clear trigger condition: 'Use this after any uncertain response.' This tells the agent exactly when to call it. However, it doesn't explicitly mention alternatives or when not to use, but the context is sufficient for a simple tool.

    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 carries the full burden and does a solid job: it discloses that it returns an event stream, may end with a question (and that's not a failure), and costs one credit per finished image. It also mentions that setting 'operation' makes execution deterministic. These are meaningful behavioral traits beyond the schema. It doesn't cover every side effect (e.g., whether edits overwrite assets), but it covers the most important and unusual behaviors.

    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 sentences with zero waste. The main purpose is front-loaded, and the caveats (question behavior, cost) are placed immediately after. It is concise and to the point, with no redundant phrasing.

    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 (7 params, multiple operations, no output schema) and the existence of sibling tools for execution and events, the description covers the essential behavioral context (event stream, question possibility, cost) but omits explicit routing to those siblings. The schema covers parameter details, so the description doesn't need to repeat them. It feels complete enough for an agent to know what to expect, though it could benefit from a pointer to dreamlayer_events for consuming the stream.

    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 71%, so most parameters have descriptions. The description adds value by explaining that 'operation' can be set to run deterministically and skip interpretation, which is not obvious from the schema alone. However, it doesn't compensate for the two undocumented parameters (prompt, conversation_id), and it doesn't elaborate on how they interact with the question flow. The added value is moderate, so a 3 is appropriate.

    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 states a specific action ('Generate or edit an image') and a concrete outcome ('return the resulting event stream'). It also adds an unusual behavior (may ask a question) that distinguishes it from typical generation tools. It clearly differentiates from siblings like upload or events by focusing on the generation/editing role.

    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 implies usage (generate or edit images) but does not explicitly mention alternatives or exclusions. It doesn't reference sibling tools (e.g., dreamlayer_upload_image for uploading, dreamlayer_events for reading events) or provide conditions for when to choose this tool over others. The 'may ask a question' note hints at a workflow but lacks explicit guidance.

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

  • Behavior3/5

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

    With no annotations provided, the description carries the full burden of behavioral disclosure. It discloses the core behavior: it uploads a local image and returns an input_asset_id for later use. However, it does not mention potential constraints (e.g., file size limits, asynchronous behavior, or what happens on invalid paths), which are not trivial for a file upload operation. The description covers the essential contract but lacks depth.

    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 two concise sentences, front-loaded with the purpose and immediately followed by the critical return-value note. There is zero redundancy or filler; every word earns its place.

    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?

    For a single-parameter tool with no output schema, the description is fully complete. It explains what the tool does, what input it expects (implicitly through the path), and what result the agent will get and how to use it. There are no missing details an agent would need to call the tool correctly in the intended workflow.

    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%, and the parameter 'path' is already well-described in the schema ('Absolute path to a PNG, JPEG, WEBP, or camera RAW'). The description adds negligible extra meaning beyond confirming the file is local and its role as a reference. Per the baseline for high schema coverage, a score of 3 is appropriate.

    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 states a clear verb ('Upload'), specific resource ('one local image'), and its purpose ('for use as a reference'). It also mentions the return value and how it is consumed by a specific sibling (dreamlayer_generate), which makes its role in the workflow unambiguous. No sibling tool has a similar purpose, so differentiation is inherent.

    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 explicitly ties usage to subsequent generation by stating the returned ID is 'to pass to dreamlayer_generate'. This implies when to use the tool (before generation) and the intended flow. It does not explicitly state alternatives or exclusions, but no alternative upload tool exists among the siblings, so the guidance is sufficient.

    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 carries the full burden. It explicitly discloses that the tool 'calls no provider and spends nothing,' which is a key behavioral trait for an introspection tool. It does not cover authentication or return format, but for a zero-parameter read-only operation, this level of transparency is adequate.

    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 two short sentences with no redundancy. The core purpose is front-loaded, and the behavioral guarantee (no provider call, no cost) is given immediately after, making it easy for an agent to parse: efficiently structured with every word earning its place.

    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 (no parameters, no output schema), the description covers the essential points: what it inspects and that it has no side effects. It could optionally mention what the returned contract contains (e.g., a list of operations), but this is a minor gap given the tool's low complexity and the absence of an output schema.

    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 tool has zero parameters and the schema coverage is 100%, so the description has nothing to explain about parameters. According to the baseline for tools with no parameters, a score of 4 is appropriate; no additional semantic detail is needed.

    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 uses the specific verb 'inspect' and a concrete resource, 'DreamLayer Agent API contract and the operations this key may run,' which clearly differentiates it from sibling tools that perform actions like upload, generate, execute, or cancel. The agent can immediately understand this is an introspective, read-only tool.

    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 implies this tool is a safe preflight check by stating 'Calls no provider and spends nothing,' but it does not explicitly state when to use it versus the sibling tools. There is no mention of specific scenarios (e.g., 'use before other calls to discover allowed operations') or any exclusions, leaving usage context somewhat implicit.

    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

dreamlayer-mcp MCP server

Copy to your README.md:

Score Badge

dreamlayer-mcp 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/TheDesignFounder/dreamlayer-mcp'

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