Skip to main content
Glama

Server Details

Generate QR codes and create, edit & track dynamic (editable) QR codes with scan analytics — over a hosted MCP server plus a free REST API. 13 tools: generate_qr (no key), create/update/list/delete dynamic codes, get_scans, folders and themes. Free, no watermark.

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.
Tool DescriptionsB

Average 3.7/5 across 13 of 13 tools scored. Lowest: 2.4/5.

Server CoherenceA
Disambiguation5/5

Each tool targets a clear and distinct area: static QR generation, dynamic QR management (CRUD + bulk + scans), folder management, and theme management. No two tools overlap in purpose.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern (e.g., create_dynamic_qr, delete_folder, list_themes). Even 'generate_qr' and 'get_scans' fit the pattern with appropriate verbs for their actions.

Tool Count5/5

Thirteen tools cover the full QR code lifecycle without being excessive. Each tool serves a necessary function for the service's stated purpose.

Completeness4/5

The set covers CRUD for dynamic QR codes, folders, and themes, plus scans and static generation. The only minor gaps are missing update operations for folders and themes, which are not critical for typical workflows.

Available Tools

13 tools
bulk_create_dynamic_qrAInspect

Create up to 200 dynamic QR codes at once. Requires an OpenQR API key.

ParametersJSON Schema
NameRequiredDescriptionDefault
codesYesCodes to create.
themeNoA saved theme id or name applied to every code created.
Behavior3/5

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

No annotations are provided, so the description carries full burden. It adds an authentication requirement ('Requires an OpenQR API key'), but lacks details on failure handling, rate limits, or whether the operation is idempotent.

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, each earning its place: one states the core function and limit, the other the prerequisite. No wasted words.

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?

With no output schema and no annotations, the description could be more complete by noting expected output, error cases, or behavior when limits are exceeded. It covers the basics but leaves 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 covers 100% of parameters with descriptions, so baseline is 3. The description itself adds no additional parameter details, but the schema is sufficient.

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 'create', the resource 'dynamic QR codes', and the constraint 'up to 200 at once', distinguishing it from the sibling tool 'create_dynamic_qr' which likely creates single codes.

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 bulk usage by stating 'up to 200 at once', but does not explicitly state when to use this tool versus alternatives (e.g., single creation with 'create_dynamic_qr') nor gives exclusion criteria.

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

create_dynamic_qrAInspect

Create an editable (dynamic) QR code whose destination you can change later without reprinting. Requires an OpenQR API key.

ParametersJSON Schema
NameRequiredDescriptionDefault
labelNoOptional label.
themeNoA saved theme id or name to style the code with.
destinationYesThe http(s) URL the code should point to.
Behavior2/5

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

No annotations are present, so the description carries full burden. It discloses that the destination can be changed later, but omits other behaviors such as what the tool returns (e.g., a QR code ID or image), rate limits, or scope of editability. Significant gaps exist for a mutation tool.

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, front-loaded with the core purpose, and contains no filler. Every word adds value, including the prerequisite.

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?

Given 3 parameters and no output schema, the description is moderately complete. It explains the core functionality and a requirement, but does not specify what is returned (e.g., QR code ID, image URL) or how themes/labels affect the output. Slightly incomplete for an agent to fully understand the tool's behavior.

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%, so parameters are fully documented in the schema. The description adds no additional semantics for the parameters; it only mentions an API key requirement which is not a parameter. Baseline 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 clearly states 'Create an editable (dynamic) QR code' with a specific verb and resource, and distinguishes from siblings like 'generate_qr' (static) and 'bulk_create_dynamic_qr' (bulk). The differentiation is effective.

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 mentions 'Requires an OpenQR API key' as a prerequisite but does not explicitly guide when to use this tool vs alternatives like 'generate_qr' for static codes or 'bulk_create_dynamic_qr' for bulk creation. No when-not-to-use guidance is provided.

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

create_folderCInspect

Create a folder to organise codes. Requires an OpenQR API key.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
Behavior2/5

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

With no annotations, description must disclose behavior. Mentions API key requirement but omits side effects, error states, idempotency, or what happens if folder name already exists.

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

Conciseness3/5

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

Two sentences, no fluff, but lacks structure and does not cover key info. Conciseness is adequate but at the expense of completeness.

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 no output schema and minimal annotations, description should fill gaps. It does not explain return values, errors, or relationship to other tools (e.g., codes). Incomplete for an agent.

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 one required parameter (name) with no description. Schema coverage is 0%, and description adds no meaning about name format, constraints, or purpose.

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?

Clearly states it creates a folder to organize codes, with a specific verb and resource. Distinguishable from siblings like create_dynamic_qr. Could be more explicit about what 'codes' refers to, but still clear.

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?

No guidance on when to use this tool versus alternatives like list_folders or delete_folder. Only mentions a prerequisite (API key), not usage context or exclusions.

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

create_themeCInspect

Save a reusable style theme. style is a QR style object (fgColor, bgColor, dotType, cornerSquareType, etc.). Requires an OpenQR API key.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
styleYesQR style JSON (colours, dot/corner shapes, logo, gradient, frame…).
Behavior2/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 indicates that the tool saves a theme and requires an API key, but it does not reveal whether creation is idempotent, if it overwrites existing themes with the same name, what happens on error, or any destructive or side effects. The description is insufficient for an agent to anticipate the tool's full behavior.

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 (two sentences) and front-loaded with the main action. Every sentence serves a purpose: stating what the tool does, clarifying the style parameter, and noting the API key requirement. There is no wasted verbiage.

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 that there is no output schema, no annotations, and a complex nested parameter (style), the description lacks important contextual details such as the expected return value, error handling, uniqueness constraints for 'name', or the scope of the style object's properties. The description is not complete enough for an agent to fully understand the tool's context and results.

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?

The schema has 50% description coverage; 'name' has no schema description, and 'style' has a generic one. The tool description adds specific keys to 'style' (fgColor, bgColor, dotType, cornerSquareType, etc.) which provides some additional semantic guidance beyond the schema. However, it does not explain the 'name' parameter, leaving an important aspect undocumented. Overall, the description partially compensates for schema gaps but not fully.

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 clearly states the action ('Save') and the resource ('reusable style theme'). It also hints at the style object's composition. However, it could be slightly more specific about what 'reusable' implies versus creating a one-off QR code, and it does not explicitly differentiate from sibling tools like update_dynamic_qr or create_dynamic_qr, though the distinct purpose is still discernible.

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 lacks any guidance on when to use this tool versus alternatives. It mentions a prerequisite ('Requires an OpenQR API key') but does not explain scenarios where one should choose create_theme over other tools like delete_theme or list_themes, nor does it mention any preconditions or prohibited use cases.

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

delete_dynamic_qrAInspect

Permanently delete a dynamic QR code. The short link stops working. Requires an OpenQR API key.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesThe dynamic code id.
Behavior4/5

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

Discloses permanent deletion and link deactivation, plus auth requirement. With no annotations, these details are valuable for safe invocation.

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 efficient sentences with zero waste, front-loading the core action.

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 single parameter and no output schema, description covers purpose, behavior, and auth fully. No 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 description adds no extra meaning beyond schema's 'The dynamic code id.' Baseline 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?

Clearly states 'Permanently delete a dynamic QR code' with specific verb and resource, and mentions consequence 'short link stops working'. Differentiates from siblings like create_dynamic_qr and update_dynamic_qr.

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?

Implies usage for deletion, and states prerequisite 'Requires an OpenQR API key'. However, lacks explicit guidance on when to use vs alternatives like delete_folder or delete_theme.

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

delete_folderAInspect

Delete a folder (its codes are un-filed, not deleted). Requires an OpenQR API key.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYes
Behavior4/5

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

No annotations are provided, so the description carries full burden. It discloses the key behavioral trait that codes are un-filed (not deleted) and mentions the auth requirement. However, it does not detail other consequences like irreversibility or error conditions.

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, directly stating the action and key effect, plus the requirement. Every word adds value with no redundancy or filler.

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 delete operation with one parameter and no output schema, the description covers the main effect (codes un-filed) and a key prerequisite (API key). It is nearly complete but lacks mention of error handling or confirmation of success.

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 input schema has one parameter (id, string, required) with 0% description coverage. The tool description does not explain what the id parameter represents or any constraints on its value. The agent must infer that it is a folder ID, but no further guidance is given.

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 'Delete' and the resource 'folder', and distinguishes from sibling tools by noting that codes are un-filed not deleted. It is specific and 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 description mentions the requirement of an OpenQR API key, which is a prerequisite, but it does not explicitly state when to use this tool versus alternatives or provide any exclusion criteria. Usage context is implied but not explicit.

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

delete_themeAInspect

Delete a saved theme. Codes already styled with it keep their look. Requires an OpenQR API key.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYes
Behavior4/5

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

With no annotations provided, the description carries full burden. It discloses a key behavioral trait: 'Codes already styled with it keep their look.' This adds value beyond the basic delete action. However, it could mention irreversibility or confirmation steps.

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 no wasted words. The first sentence states the core action, the second adds behavioral context and a requirement. Well-structured for quick parsing.

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 required param, no output schema), the description covers the essential: action, side effect, and authentication. It marginally lacks discussion of error states or confirmation, but overall is sufficiently complete for a delete operation.

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 input schema has one required string parameter 'id' with 0% description coverage. The tool description does not explain what 'id' represents (presumably the theme ID), adding no semantic value beyond what the schema implies. For a low-coverage tool, the description should explicitly define the parameter.

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 'Delete a saved theme' clearly specifies the verb (delete) and resource (saved theme). It also adds a notable side effect (codes keep their look), making the purpose distinct from sibling tools like 'create_theme' and 'list_themes'.

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 includes a prerequisite ('Requires an OpenQR API key') but provides no guidance on when to use this tool versus alternatives like 'delete_dynamic_qr' or 'delete_folder'. It lacks explicit when-to-use or when-not-to-use context.

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

generate_qrAInspect

Generate a static QR code from any text/URL. Returns a PNG image (or SVG markup). Requires an OpenQR API key.

ParametersJSON Schema
NameRequiredDescriptionDefault
dataYesThe content to encode (URL or text).
sizeNoPixel size, 64–2048 (default 512).
themeNoA saved theme id or name. Applies the theme's colours (SVG); full styling applies to dynamic codes.
formatNoOutput format (default png).
Behavior4/5

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

Discloses that it returns a PNG or SVG image, is static, and requires an API key. Without annotations, these details add transparency beyond the tool name and schema.

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 convey purpose, output, and requirement with zero waste. Front-loaded with essential information.

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 purpose, output, and API key requirement adequately given no output schema or annotations. Lacks details on error handling or key acquisition but sufficient for simple tool.

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%, so description adds minimal extra meaning. Mentions output format and static nature but does not elaborate on parameter behavior 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?

Description clearly states 'Generate a static QR code from any text/URL' with specific verb and resource, and distinguishes from siblings (dynamic QR tools) by explicitly calling it 'static'.

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?

Specifies prerequisite 'Requires an OpenQR API key', providing clear context. Does not explicitly compare with alternatives like dynamic QR but name and context imply static use case.

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

get_scansBInspect

Get scan statistics for a dynamic QR code. Requires an OpenQR API key.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesThe dynamic code id.
Behavior2/5

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

With no annotations, the description carries full burden. It only states the auth requirement (API key) but fails to disclose whether the operation is read-only, what side effects exist, or any behavioral traits beyond that.

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 no wasted words. Purpose is stated first, followed by auth requirement. Front-loaded and efficient.

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?

The description covers purpose and auth, but lacks details about the return value (e.g., what 'scan statistics' includes). For a simple one-parameter tool without output schema, it is minimally adequate but incomplete.

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% for the single parameter (id), and the schema already describes it as 'The dynamic code id.' The description adds no additional meaning beyond the 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?

Description clearly states the tool retrieves scan statistics for a dynamic QR code, which is a specific verb+resource. It distinguishes from sibling tools like list_dynamic_qr (listing codes) and create_dynamic_qr (creating codes).

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?

No guidance on when to use this tool versus alternatives. It mentions an API key requirement but doesn't explain prerequisites (e.g., needing the dynamic code id from list_dynamic_qr) or when to prefer this over other tools.

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

list_dynamic_qrAInspect

List your dynamic (editable) QR codes — id, short URL, destination, label and status. Requires an OpenQR API key.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMax codes to return, 1–500 (default 200).
Behavior3/5

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

No annotations provided, so description carries full burden. It mentions the API key requirement (authentication) and implicitly indicates a read operation via 'list'. However, it does not disclose pagination behavior beyond the limit parameter, response format, or non-destructive nature explicitly.

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, front-loaded with purpose, and every word adds value. No redundancy or unnecessary detail.

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 list tool with one optional parameter and no output schema, the description covers the main purpose and prerequisite. It mentions returned fields, which helps. Missing explicit mention of response array or empty result behavior, but overall adequate.

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% (one parameter, limit, fully described in schema). The description adds no extra meaning beyond the schema for this parameter, so baseline 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 clearly states the action (list) and resource (dynamic QR codes), includes the fields returned (id, short URL, destination, label, status), and distinguishes from siblings like create/update/delete and list_folders/list_themes by specifying 'dynamic (editable) QR codes'.

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 indicates a prerequisite (requires API key). Usage context is clear: when you need to view existing dynamic QR codes. It does not explicitly state when not to use or compare to alternatives, but the purpose is distinct enough from sibling tools.

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

list_foldersAInspect

List your folders (id and name). Requires an OpenQR API key.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior2/5

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

With no annotations, the description should disclose behavioral traits. It only states the operation and required authentication, omitting details like read-only nature, rate limits, or pagination.

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 no redundancy. The purpose is front-loaded, and every word adds value.

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 parameterless tool, the description covers the return content (id and name) and a prerequisite. However, it could mention if results are paginated or if all folders are returned.

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?

There are no parameters, so schema coverage is 100%. The description adds nothing beyond the schema but correctly implies no inputs are 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 explicitly states 'List your folders (id and name)', clearly specifying the verb (list) and resource (folders). This distinguishes it from sibling tools like create_folder or list_dynamic_qr.

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?

It mentions the requirement for an API key but does not provide guidance on when to use this tool versus alternatives like list_dynamic_qr. Usage is implied only.

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

list_themesAInspect

List your saved style themes (id, name) — apply one by passing its id or name as theme to generate/create/update tools. Requires an OpenQR API key.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior3/5

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

With no annotations, the description should disclose behavioral traits. It mentions the API key requirement, but does not detail other aspects like read-only nature, pagination, or response format.

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 concise sentence that efficiently conveys the tool's purpose and usage context with no unnecessary words.

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 zero parameters and no output schema, the description adequately covers the tool's function and output fields (id, name). It could mention more about the response structure but is sufficient for a simple list tool.

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?

There are no parameters, so baseline is 4. The description adds context about how the returned data (id, name) is used in other tools.

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 lists saved style themes with id and name, and distinguishes its purpose from sibling tools by mentioning how to apply themes to other tools.

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 explains when to use the tool (to retrieve themes for applying to generate/create/update tools) and mentions the API key requirement, but 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.

update_dynamic_qrAInspect

Edit a dynamic QR code: change its destination, label, custom short link (slug), tags or folder. Pass only the fields you want to change. Requires an OpenQR API key.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesThe dynamic code id.
slugNoCustom short-link back-half (oqr.to/<slug>): 3–48 letters, numbers or hyphens.
tagsNoReplace the code's tags (max 10).
labelNoNew label.
themeNoA saved theme id or name to restyle the code with.
folder_idNoMove into a folder id, or null to un-file.
destinationNoNew http(s) URL.
Behavior3/5

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

No annotations provided, so description carries full burden. It indicates mutation (edit) and partial update behavior, but lacks details on side effects, permissions beyond API key, or whether changes are immediate.

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 concise sentences: first front-loads purpose and key fields, second gives usage hint. No wasted words.

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 purpose and partial update hint. Lacks response details and error handling, but for a straightforward update tool it is adequately complete.

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%, so baseline is 3. Description paraphrases parameter fields but adds no new semantic information beyond what schema already provides.

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?

Description clearly states 'Edit a dynamic QR code' and lists specific editable fields (destination, label, slug, tags, folder), distinguishing it from sibling tools like create_dynamic_qr and delete_dynamic_qr.

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?

Description gives explicit guidance: 'Pass only the fields you want to change' and mentions API key requirement, but does not explicitly state when not to use this tool or compare to alternative tools.

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

Discussions

No comments yet. Be the first to start the discussion!

Try in Browser

Your Connectors

Sign in to create a connector for this server.

Resources