Skip to main content
Glama

Server Details

OAuth 2.1 short-link tools for AI agents with scoped tokens, approvals, audit logs, and revocation.

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 DescriptionsA

Average 3.9/5 across 23 of 23 tools scored. Lowest: 3.1/5.

Server CoherenceA
Disambiguation5/5

Each tool targets a clearly distinct resource and action: links, domains, tags, auth, and account status are all separate concerns. Even similar tools like shorten_url and bulk_create_links are differentiated by single vs. batch creation, and check_alias is distinct from get_link by checking availability before creation.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern in snake_case (e.g., add_domain, delete_link, list_tags, verify_registration_code). Mixed verb styles like tag/untag and shorten_url are still predictable and fit the established convention.

Tool Count3/5

At 23 tools, the set is on the heavy side and falls in the 16-25 borderline range. The number is somewhat justified by the broad scope (links, domains, tags, auth, analytics), but it approaches the upper limit where an agent may have difficulty selecting between many options.

Completeness5/5

The tool surface covers the full lifecycle of short links (create, read, update, delete, list, stats), domain management (add, delete, verify, list), tags (create, list, delete, tag/untag), and account/auth flows (guest tokens, registration, pro upgrade). It is hard to identify any critical missing operation for the stated purpose.

Available Tools

23 tools
add_domainMiniURL add_domainA
Destructive
Inspect

Request a custom domain to be connected to MiniURL. Agent domain changes require human approval by default.

ParametersJSON Schema
NameRequiredDescriptionDefault
domainYesA custom hostname such as links.example.com.
approval_idNo
approval_tokenNoLegacy compatibility field; normally omit it.

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo
metaNo
errorNo
successYes
approvalNo
retryableNo
request_idYes
retry_afterNo
next_actionsNo
required_scopeNo
user_action_requiredNo
Behavior3/5

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

Annotations already indicate readOnlyHint=false, destructiveHint=true, and idempotentHint=false. The description adds that human approval is required by default, which is valuable behavioral context. However, it does not clarify what the destructiveHint signifies in the context of adding a domain, nor does it describe the post-request flow (e.g., async approval, rejection outcomes).

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, front-loaded sentences with no filler. The first sentence immediately states the action and resource, and the second adds a key constraint. Every word earns its place.

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?

An output schema exists, so return values need no explanation. However, the tool involves an approval workflow and is marked as destructive, yet the description does not explain how to supply approval credentials or what destructive behavior may occur. For a tool with these parameters and annotations, the description leaves notable 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 67% (domain and approval_token have descriptions; approval_id does not). The description mentions 'human approval' but does not explain how approval_id or approval_token relate to that process. It adds slight context beyond the raw schema but does not fully compensate for the missing description of approval_id.

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 'Request' with a clear resource ('a custom domain to be connected to MiniURL'), and the second sentence adds the distinct nuance of human approval. This clearly separates it from sibling tools like verify_domain or delete_domain.

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 clear context that agent domain changes require human approval by default, which implies when to use this tool and the expected workflow. It does not explicitly name alternatives or exclusions, but the purpose is distinct enough that confusion with siblings is unlikely.

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

check_aliasMiniURL check_aliasA
Read-onlyIdempotent
Inspect

Check whether a custom alias is available on a given domain before creating a link.

ParametersJSON Schema
NameRequiredDescriptionDefault
aliasYesThe alias to check.
domainNoThe domain to check on. Defaults to miniurl.com.

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo
metaNo
errorNo
successYes
approvalNo
retryableNo
request_idYes
retry_afterNo
next_actionsNo
required_scopeNo
user_action_requiredNo
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, covering the safety profile. The description adds context about the operation's purpose (availability check) but does not disclose additional behavioral traits like rate limits or error behavior. This is acceptable given the annotations, but it does not go beyond them.

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, focused sentence that delivers the purpose and usage context without any fluff. Every word contributes meaning, and it is front-loaded with the key action ('Check whether').

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 read-only check operation with rich annotations and an output schema present, the description sufficiently covers the core use case. It does not need to explain return values due to the output schema. Minor gap: no explicit alternatives list, but overall context is complete for the tool's simplicity.

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 input schema fully describes both parameters ('alias' and 'domain'), providing 100% coverage. The description's phrase 'on a given domain' aligns with the domain parameter but does not add new semantic meaning beyond what the schema already states. Baseline 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 tool's function with a specific verb ('check') and resource ('custom alias availability'), and frames it with a practical use case ('before creating a link'). It distinguishes itself from sibling tools like get_link or shorten_url, which focus on existing links or creation.

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 clear context for when to use the tool ('before creating a link'), which effectively signals its intended role in the link-creation workflow. However, it does not explicitly name alternative tools or state when not to use it, so it lacks full exclusionary guidance.

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

clear_authenticationMiniURL clear_authenticationA
Idempotent
Inspect

Clear authentication retained by a legacy MCP session. Stateless clients clear authentication by omitting the Authorization header on later requests.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo
metaNo
errorNo
successYes
approvalNo
retryableNo
request_idYes
retry_afterNo
next_actionsNo
required_scopeNo
user_action_requiredNo
Behavior3/5

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

Annotations already indicate idempotentHint and non-read-only, and the description adds the distinction between legacy session and stateless clients. However, it doesn't disclose potential side effects like invalidation of active sessions or any required permissions.

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 with the key action front-loaded and a clarifying second sentence. 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 0-param tool with an output schema, the description covers purpose, usage context, and the alternative method for stateless clients. It could mention explicit session invalidation effects, but given the tool's simplicity and annotations, it's nearly complete.

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 zero parameters, the schema fully covers the input surface, and the description appropriately adds no extra parameter information. The baseline for 0-param tools is 4.

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 the tool's purpose with a specific verb ('Clear') and resource ('authentication'), further scoping it to 'legacy MCP session' and contrasting with stateless clients. This clearly distinguishes it from sibling tools like create_guest_token and verify_registration_code.

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 clear context that this applies to legacy MCP sessions, and explains that stateless clients should instead omit the Authorization header. While it doesn't name sibling tools as alternatives, the context is enough to infer when to use it.

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

create_guest_tokenMiniURL create_guest_tokenAInspect

Create a short-lived MiniURL guest bearer token. Legacy MCP sessions retain it; stateless clients must pass the returned gt_ token explicitly on later requests. shorten_url can provision one automatically.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo
metaNo
errorNo
successYes
approvalNo
retryableNo
request_idYes
retry_afterNo
next_actionsNo
required_scopeNo
user_action_requiredNo
Behavior4/5

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

Beyond the annotations (readOnlyHint=false, etc.), the description discloses the token's short-lived nature and the difference between session-retained and stateless usage. This adds useful behavioral context, though it does not detail lifecycle or invalidation 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 three sentences long, front-loading the core purpose and adding only essential usage notes. Every sentence provides valuable information without redundancy.

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 tool has no parameters and an output schema exists, the description sufficiently covers the operation's purpose, the token's characteristics, and how to use it in different client contexts. It also mentions an automatic provisioning alternative, making it self-contained.

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 description coverage is 100% (empty schema). With no parameters to explain, the description adds all necessary semantic value by focusing on the token's purpose and usage.

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 function: creating a short-lived MiniURL guest bearer token. It specifies the token type ('guest bearer token') and its prefix ('gt_'), distinguishing it from other tools like shorten_url or clear_authentication.

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 usage context by explaining that legacy MCP sessions retain the token while stateless clients must pass it explicitly, and notes that shorten_url can provision one automatically. This gives an alternative but does not explicitly state when not to use this tool or give a direct comparison.

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

create_tagMiniURL create_tagAInspect

Create a new tag for organising links. Maximum 20 tags per account.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesTag name, 1-30 characters.
colorNoTag colour hex code. Defaults to #6b7280 (grey).

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo
metaNo
errorNo
successYes
approvalNo
retryableNo
request_idYes
retry_afterNo
next_actionsNo
required_scopeNo
user_action_requiredNo
Behavior3/5

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

Annotations are all false (not read-only, not idempotent, etc.), but the description adds a valuable behavioral constraint: 'Maximum 20 tags per account.' This helps the agent anticipate a potential failure condition. However, it does not disclose behavior for duplicate tag names or error handling, leaving some transparency gaps.

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 extremely concise: two short sentences with no irrelevant information. It front-loads the core action and then adds a key constraint. Every word earns 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?

For a simple create operation with an output schema and annotations, the description provides the essential purpose and a critical account-level limit. It does not mention uniqueness restrictions or what happens when the limit is exceeded, but overall it is sufficient for an AI to invoke the tool appropriately.

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?

Input schema covers 100% of parameters with descriptions, so the description does not need to repeat parameter details. It adds no extra semantic meaning beyond the schema, which aligns with the baseline score of 3 for high schema coverage.

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: 'Create a new tag for organising links.' This is a specific verb+resource combination that distinguishes it from sibling tools like delete_tag and list_tags. The added constraint 'Maximum 20 tags per account' also provides meaningful context about the operation's scope.

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 when a new tag is needed, but it does not explicitly discuss when to use this tool versus alternatives such as list_tags for checking existing tags or tag_link for associating tags. The 20-tag limit hints that users might need to check the current count first, but this is not directly stated.

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

delete_domainMiniURL delete_domainA
Destructive
Inspect

Delete a custom domain and its linked URLs after a dry-run confirmation. Agent domain changes require human approval by default.

ParametersJSON Schema
NameRequiredDescriptionDefault
confirmNoSet true only after reviewing the dry-run impact response.
domain_idYes
approval_idNo
approval_tokenNoLegacy compatibility field; normally omit it.

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo
metaNo
errorNo
successYes
approvalNo
retryableNo
request_idYes
retry_afterNo
next_actionsNo
required_scopeNo
user_action_requiredNo
Behavior5/5

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

Beyond the destructiveHint annotation, the description discloses a dry-run confirmation process, the cascading deletion of linked URLs, and the default human approval requirement for agent changes. These are significant behavioral traits that an agent needs to know before invoking the 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?

Two concise sentences, front-loaded with the action and key constraints. Every clause adds critical information (dry-run, linked URLs, approval) 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?

The description covers the core behavioral aspects (dry-run, cascading delete, approval) for a destructive tool with an output schema. It could be slightly more explicit about the two-step dry-run flow, but given the schema and annotations provide additional structure, it is sufficiently complete for agent use.

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 only 50%, but the description compensates by explaining the dry-run confirmation (linking to 'confirm' parameter) and the approval requirement (linking to approval_id/approval_token). It adds meaning to parameters that lack schema descriptions, though domain_id remains self-explanatory.

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 ('Delete a custom domain and its linked URLs') and includes the dry-run confirmation step, making it distinct from sibling tools like delete_link and delete_tag. The verb+resource structure 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 Guidelines4/5

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

It provides clear context on when to use the tool (for deleting custom domains) and notes the human approval default for agent changes. However, it does not explicitly mention alternatives or exclusions, though the domain-specific scope naturally distinguishes it from link/tag deletion tools.

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

delete_tagMiniURL delete_tagA
Destructive
Inspect

Delete a tag and remove it from all associated links.

ParametersJSON Schema
NameRequiredDescriptionDefault
tag_idYesThe tag ID to delete.
approval_idNoApproval id returned by a previous USER_APPROVAL_REQUIRED response.
approval_tokenNoLegacy compatibility field; normally omit it and retry with approval_id after approval.

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo
metaNo
errorNo
successYes
approvalNo
retryableNo
request_idYes
retry_afterNo
next_actionsNo
required_scopeNo
user_action_requiredNo
Behavior4/5

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

The annotation declares destructiveHint=true, and the description adds valuable context by specifying that the deletion also removes the tag from all associated links—a side effect beyond simply deleting the tag. This goes beyond what the annotation alone conveys. The approval flow is not mentioned, but the schema covers it, so the description's addition is meaningful.

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 that is concise and front-loaded with the verb and object. Every word adds value: 'Delete a tag' states the action, and 'remove it from all associated links' clarifies the full effect. There is 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 destructive operation, the description explains the primary side effect (unlinking), which is key context. The approval mechanism is documented in the schema, and an output schema exists, so return values do not need description. However, it does not explicitly mention that the deletion is permanent or irreversible, though this is inferable from the destructiveHint annotation. Overall, it is sufficiently complete for the tool's complexity.

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%, with clear descriptions for tag_id, approval_id, and approval_token. The tool description does not add parameter semantics, but given full schema coverage, the baseline of 3 is appropriate. It would be higher only if the description provided extra insight beyond the schema, which it does not.

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 a specific verb ('Delete') with a clear resource ('tag') and states the key consequence ('remove it from all associated links'). This distinguishes it from sibling tools like untag_link (which removes a tag from a link but does not delete the tag) and delete_link (which deletes links). The cascade behavior is explicitly mentioned, 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 description implies usage (delete a tag completely, including its associations), but it does not explicitly state when to use this tool versus alternatives like untag_link or provide any exclusions or prerequisites. There is no mention of when approval is required, though that is documented in the schema. The guidance is implied rather than explicit.

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

get_account_statusMiniURL get_account_statusA
Read-onlyIdempotent
Inspect

Inspect the current guest/free/pro account status, remaining quota, and feature availability.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo
metaNo
errorNo
successYes
approvalNo
retryableNo
request_idYes
retry_afterNo
next_actionsNo
required_scopeNo
user_action_requiredNo
Behavior3/5

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

The annotations already declare readOnlyHint, idempotentHint, and destructiveHint, so the safety profile is known. The description adds context about the information returned (quota and feature availability) but does not disclose any potential behavioral nuances such as authentication requirements or error conditions. The bar for additional disclosure is met minimally, but not 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?

The description is a single, front-loaded sentence with no filler. It clearly states the action and the key aspects of the resource, making it efficient.

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?

The tool is very simple with no parameters and the presence of an output schema. The description explains what the tool returns (status, quota, features) and its read-only nature is covered by annotations. However, it does not mention whether authentication is required or how to interpret the quota, so a bit more context could be useful, but this is largely complete.

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, so the schema is trivially fully covered. The description does not need to explain parameter semantics; the baseline of 4 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 uses a clear verb 'inspect' and names the specific resource (account status) along with the aspects covered (guest/free/pro tier, remaining quota, feature availability). This distinguishes it from sibling tools like start_pro_upgrade or create_guest_token that modify or create account-related entities.

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 is provided about when to use this tool instead of alternatives. The description implies usage for checking current status but does not explicitly contrast it with account-modifying tools or mention scenarios like pre-upgrade checks. There is no '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.

list_domainsMiniURL list_domainsA
Read-onlyIdempotent
Inspect

List domains available to the current registered account, including miniurl.com and active custom domains.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo
metaNo
errorNo
successYes
approvalNo
retryableNo
request_idYes
retry_afterNo
next_actionsNo
required_scopeNo
user_action_requiredNo
Behavior4/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false, and idempotentHint=true. The description adds value by specifying that only domains for the current account are listed, and that both miniurl.com and active custom domains are included. This hints at behavioral filtering (inactive domains excluded) not covered by annotations.

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, front-loaded sentence that immediately states the action and subject. It contains no fluff or redundant phrasing. Every word contributes to understanding.

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 simple, parameterless listing tool, the description is sufficiently complete. It tells the user what will be listed and the scope, while the presence of an output schema handles return value details. No further information about pagination or errors is necessary for this level of complexity.

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, so the baseline is 4 per rubric. The schema coverage is naturally 100% and there is no parameter information to add. The description correctly avoids fabricating parameter details.

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), the resource (domains), and the scope (current registered account). It also distinguishes itself from siblings like add_domain, delete_domain, and verify_domain by focusing on read-only enumeration. The mention of including miniurl.com and active custom domains adds specificity without ambiguity.

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 implies when to use this tool: to view available domains for the current account. It does not explicitly state exclusions or alternative tools, but the context is clear enough for a simple listing operation. Since it is a read-only list, no complex usage guidance is needed.

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

list_tagsMiniURL list_tagsA
Read-onlyIdempotent
Inspect

List all tags for the current registered account. Tags help organise links into campaigns or categories.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo
metaNo
errorNo
successYes
approvalNo
retryableNo
request_idYes
retry_afterNo
next_actionsNo
required_scopeNo
user_action_requiredNo
Behavior4/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false. The description adds valuable context by specifying the scope 'for the current registered account', which is not covered by annotations. It also explains the purpose of tags, which aids in understanding the tool's role.

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 action. The second sentence adds context about what tags do, which is useful without being verbose. 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 simple zero-parameter tool with a read-only annotation profile and an existing output schema, the description is complete. It states the exact scope and purpose, and the annotations cover safety and idempotency. No additional behavioral details are necessary.

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 schema coverage is 100%. Per the rubric, 0 params baseline is 4. The description does not need to explain parameters, and the schema already fully covers them.

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'), the resource ('all tags'), and the scope ('for the current registered account'). This specific verb+resource combination distinguishes it from sibling tools like create_tag, delete_tag, and list_links.

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 by explaining that tags help organize links into campaigns or categories, but it does not explicitly state when to use this tool versus alternatives like list_links or tag_link. No when-not-to-use or exclusion criteria are provided, so it falls at 'implied usage'.

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

send_registration_codeMiniURL send_registration_codeAInspect

Send a 6-digit registration code to the user email, using the current guest session.

ParametersJSON Schema
NameRequiredDescriptionDefault
emailYesThe user email address.

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo
metaNo
errorNo
successYes
approvalNo
retryableNo
request_idYes
retry_afterNo
next_actionsNo
required_scopeNo
user_action_requiredNo
Behavior4/5

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

The description discloses the key behavioral aspects: it sends a 6-digit code via email and relies on the current guest session. Since annotations provide no safety hints (all false), the description carries the burden and addresses the main side effects, though it doesn't mention potential issues like code expiration or resend 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?

A single, information-dense sentence with no fluff. Every element adds value: action, object, recipient, and context.

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 (1 parameter, output schema exists), the description is mostly complete. It explains what happens and the required session context. It could note the relationship with verify_registration_code, but that is inferable from the sibling name.

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 the parameter description already says 'The user email address.' The tool description rephrases it as 'to the user email', adding no new semantic meaning beyond what the schema provides. Baseline 3 applies.

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

Purpose5/5

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

The description clearly states the action (send), the object (a 6-digit registration code), and the recipient (user email). It also specifies the context (current guest session), which distinguishes it from sibling tools like verify_registration_code or create_guest_token.

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 clear context by mentioning 'using the current guest session', implying a prerequisite and when this tool is appropriate. However, it does not explicitly name alternatives or when not to use it, so it falls short of a 5.

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

shorten_urlMiniURL shorten_urlAInspect

Create a MiniURL short link for a supplied HTTP or HTTPS destination. Use when the user asks to shorten a URL or generate a MiniURL link. This is an additive external write; do not fetch or open the destination. If no authentication is supplied, MiniURL automatically starts a guest flow. Reuse idempotency_key when retrying the same logical request.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesThe HTTP or HTTPS destination URL to shorten.
aliasNoOptional custom alias. Call check_alias before creating it. Requires a registered account; miniurl.com aliases must be at least 4 characters.
domainNoOptional domain. Requires a registered account with an active custom domain.
dry_runNoValidate the destination and show the planned link without creating it. Agent tokens only.
passwordNoOptional password. Requires Pro.
expirationNoOptional ISO 8601 expiration datetime. Requires Pro.
activated_atNoOptional ISO 8601 activation datetime. Requires Pro.
idempotency_keyNoOptional idempotency key. Reusing it with the same payload safely replays the original result.

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo
metaNo
errorNo
successYes
approvalNo
retryableNo
request_idYes
retry_afterNo
next_actionsNo
required_scopeNo
user_action_requiredNo
Behavior5/5

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

Beyond the annotations, the description adds valuable behavioral context: it is an 'additive external write' (clarifies the side effect), it explicitly says 'do not fetch or open the destination' (prevents accidental network calls), and it explains guest-flow behavior when no auth is supplied. The idempotency-key guidance also goes beyond the schema annotations. No contradictions with readOnlyHint=false, destructiveHint=false.

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 sentences, front-loaded with the primary action, followed by usage trigger, safety note, auth caveat, and retry guidance. Every sentence earns its place; no fluff or repetition.

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 tool has 8 parameters, full schema descriptions, an output schema, and annotations, the description adds the missing behavioral and usage context: it clarifies the external write nature, guest-flow, and not to fetch the destination. It also points to idempotency handling. This is complete for the tool's complexity.

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 input schema already provides 100% descriptive coverage for all 8 parameters, so the baseline is 3. The description mentions the idempotency key and HTTP/HTTPS url, but these are already covered in the schema. The description does not add new parameter-level semantics beyond what the schema provides, so no score above baseline.

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 opens with a specific verb+resource: 'Create a MiniURL short link for a supplied HTTP or HTTPS destination.' It clearly distinguishes from siblings by focusing on single-URL shortening, rather than bulk operations like bulk_create_links or alias checks like check_alias. The second sentence reinforces the exact trigger condition.

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 gives an explicit 'Use when' condition: 'when the user asks to shorten a URL or generate a MiniURL link.' It also provides contextual warnings about not fetching the destination and the guest-flow fallback when authentication is missing. It stops short of naming alternative tools for exclusions, so it earns a 4 not a 5.

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

start_pro_upgradeMiniURL start_pro_upgradeA
Destructive
Inspect

Create a shortened checkout link for upgrading the current registered account to Pro.

ParametersJSON Schema
NameRequiredDescriptionDefault
intervalNoBilling interval. Defaults to monthly.
approval_idNoApproval id returned by a previous USER_APPROVAL_REQUIRED response.
approval_tokenNoLegacy compatibility field; normally omit it and retry with approval_id after approval.
idempotency_keyNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo
metaNo
errorNo
successYes
approvalNo
retryableNo
request_idYes
retry_afterNo
next_actionsNo
required_scopeNo
user_action_requiredNo
Behavior3/5

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

Annotations already declare destructiveHint=true, so the state-changing nature is conveyed. However, the description does not disclose the approval flow (evidenced by approval_id and approval_token parameters) that may require a USER_APPROVAL_REQUIRED response. It adds purpose context but misses significant behavioral nuance that could affect how an agent invokes the 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 a single, focused sentence that front-loads the core action and purpose. Every word contributes meaning, and there is no redundant or speculative information.

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 an output schema and annotations present, the description does not need to explain return values or safety. However, it omits critical behavioral context about the approval flow, which is essential for understanding the full lifecycle of this tool. The description is adequate for a surface-level understanding but leaves a notable gap for the 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?

The input schema provides descriptions for 3 of 4 parameters (75% coverage), including interval and approval fields. The description does not add any extra explanation, particularly for the idempotency_key parameter which lacks a schema description. Since coverage is moderate, the schema already handles most of the parameter semantics, and the description's minimal addition does not significantly aid an agent.

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 a specific verb 'Create' and specifies the resource as a 'shortened checkout link' with a clear purpose: 'upgrading the current registered account to Pro.' This distinguishes it from sibling tools like shorten_url, which would handle general link shortening.

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 provides no guidance on when to use this tool versus alternatives. It does not mention any prerequisites, exclusions, or scenarios where another tool would be more appropriate. The only implied context is the phrase 'upgrading the current registered account to Pro,' which is insufficient for an agent to make a confident selection decision.

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

verify_domainMiniURL verify_domainBInspect

Refresh custom-domain DNS and SSL verification status. Agent domain changes require human approval by default.

ParametersJSON Schema
NameRequiredDescriptionDefault
domain_idYes
approval_idNo
approval_tokenNoLegacy compatibility field; normally omit it.

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo
metaNo
errorNo
successYes
approvalNo
retryableNo
request_idYes
retry_afterNo
next_actionsNo
required_scopeNo
user_action_requiredNo
Behavior3/5

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

Annotations already mark the operation as non-read-only, non-idempotent, and non-destructive; the description adds the useful behavioral fact that agent domain changes need human approval by default. However, it does not disclose side effects like triggering external DNS checks or potential failure modes.

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-loads the primary action, and contains no filler. Every sentence earns its place.

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?

The output schema covers return values, but the description omits how approval_id and approval_token are used, when to call this tool, and how the human approval flow works. This leaves a significant gap for an agent trying to invoke the tool correctly.

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 schema description coverage at only 33%, the description needed to explain parameters like domain_id and approval_id, but it only mentions the approval requirement generically. approval_token is the only parameter with a schema description, and domain_id/approval_id remain unexplained.

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 uses a specific verb ('refresh') and resource ('custom-domain DNS and SSL verification status'), clearly distinguishing it from domain CRUD siblings like add_domain/delete_domain. It also adds a policy note about human approval, but does not explicitly contrast with other verification/list tools.

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 sentence 'Agent domain changes require human approval by default' implies a use case after domain changes, but the description does not explicitly state when to use this tool versus list_domains or add_domain, nor does it mention any exclusions or prerequisites.

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

verify_registration_codeMiniURL verify_registration_codeAInspect

Verify the emailed code, create the account, claim guest links, and continue with OAuth 2.1 + PKCE. Long-lived API keys are never returned over MCP.

ParametersJSON Schema
NameRequiredDescriptionDefault
codeYesThe 6-digit verification code.
emailYesThe user email address.

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataNo
metaNo
errorNo
successYes
approvalNo
retryableNo
request_idYes
retry_afterNo
next_actionsNo
required_scopeNo
user_action_requiredNo
Behavior4/5

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

Annotations are all false, providing no safety hints. The description adds meaningful behavioral context: it creates an account (state-changing), claims guest links, and importantly warns that 'Long-lived API keys are never returned over MCP,' which is a security-relevant disclosure beyond the annotations.

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. The first packs the entire flow, and the second adds a critical security caveat. 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 multi-step mutation tool with an output schema present, the description covers the essential sequence (verify, create, claim, continue OAuth) and a key limitation. It does not explicitly spell out the prerequisite of having requested a code, but the flow is inferable from the sibling tools and the wording.

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%, with each parameter (email, code) already described in the schema. The description adds no additional parameter semantics, so the baseline 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 specific verb-resource action: 'Verify the emailed code, create the account, claim guest links, and continue with OAuth 2.1 + PKCE.' It clearly distinguishes from siblings like send_registration_code and create_guest_token by describing the full account creation flow.

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 implies clear usage context: after an email code has been sent, this tool completes the registration. It does not explicitly name alternatives or exclusions, but the context is unambiguous and the sibling list makes the alternative explicit enough.

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!

Related MCP Servers

  • A
    license
    -
    quality
    B
    maintenance
    OAuth token broker for AI agents to securely act on a user's behalf across third-party APIs (Gmail, Slack, GitHub, Notion, etc.) by vaulting tokens server-side and never exposing them to the LLM.
    MIT
  • A
    license
    -
    quality
    C
    maintenance
    Capability-token gate for AI agents. Mint time-boxed, scope-limited grants that authorize specific tool calls.
    2,062
    MIT
  • A
    license
    -
    quality
    A
    maintenance
    Enables AI assistants to create and manage short URLs via the MCP protocol, with OAuth authentication through Cloudflare Access.
    9
    Apache 2.0
  • A
    license
    A
    quality
    A
    maintenance
    Local zero-trust permission gateway for AI agents. Enforces policy-based tool authorization, human approvals, scoped permissions, and cryptographically verifiable audit logs.
    4
    5
    Apache 2.0

View all MCP Servers

Try in Browser

Your Connectors

Sign in to create a connector for this server.

Resources