Skip to main content
Glama

Server Details

Create and manage short links, track clicks, and automate URL management

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL
Repository
Linkly-HQ/linkly-mcp-server
GitHub Stars
1
Server Listing
Linkly MCP Server

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.6/5 across 25 of 25 tools scored. Lowest: 2.9/5.

Server CoherenceA
Disambiguation4/5

Most tools have distinct purposes, but there is some overlap between `list_links` and `search_links`, and between the several analytics/click tools. However, descriptions clarify their differences, reducing ambiguity.

Naming Consistency3/5

Most tools follow snake_case verb_noun pattern, but `batchDeleteLinks` uses camelCase, breaking consistency. Additionally, `ping` and `test_authentication` deviate from the resource-based naming.

Tool Count4/5

25 tools is on the higher end but appropriate for the scope, covering links, domains, analytics, webhooks, and workspace management. Each tool has a clear role, though the count could be slightly reduced by merging some analytics tools.

Completeness5/5

The tool surface is comprehensive, covering CRUD for links and domains, analytics (raw and aggregated), webhook management, workspace settings, and authentication checks. No obvious gaps for a URL shortening service.

Available Tools

25 tools
create_domainAInspect

Add a custom domain to the workspace. The domain must be configured to point to Linkly's servers.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesThe domain name (e.g., 'links.example.com')

Output Schema

ParametersJSON Schema
NameRequiredDescription
nameNo
workspace_idNo
Behavior4/5

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

Annotations indicate readOnlyHint=false, consistent with the write operation described. The description adds critical prerequisite info (DNS configuration) beyond annotations, but does not disclose error behavior or idempotency.

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. Action is front-loaded. Every word provides 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 tool with one parameter and an output schema, the description covers the core action and a key requirement. It lacks mention of uniqueness or return details, but output schema likely fills gaps.

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 100% with parameter description, but the tool description adds useful semantic context about the domain pointing prerequisite, enhancing understanding 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?

The description clearly states 'Add a custom domain to the workspace' using a specific verb and resource. It distinguishes from sibling tools like delete_domain or list_domains by focusing on creation.

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 for adding custom domains but does not explicitly state when to use vs alternatives or provide when-not guidance. No exclusions or comparisons are made.

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

delete_domainA
Destructive
Inspect

Remove a custom domain from the workspace.

ParametersJSON Schema
NameRequiredDescriptionDefault
domain_idYesThe ID of the domain to delete

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

Behavior3/5

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

The destructiveHint annotation already sets expectations of destructiveness. The description adds minimal extra context ('remove from workspace'), but does not disclose irreversibility, impact on associated links, or any confirmation steps. Given annotation coverage, a score of 3 is appropriate.

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 clear sentence with no extraneous words, making it highly concise and front-loaded for quick understanding.

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?

While the tool is simple with one parameter and annotations convey destructiveness, the description lacks completeness in explaining post-deletion effects or the return value (output schema exists but is unhelpful). It meets minimum viability but has identifiable 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?

The input schema has 100% description coverage for the single parameter 'domain_id', so the schema already provides clear meaning. The tool description does not add additional semantic context beyond what is in 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?

The description clearly states the verb 'Remove' and the resource 'custom domain', and it effectively distinguishes from sibling tools like create_domain and list_domains.

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 on when to use this tool versus alternatives, nor are there any prerequisites or consequences mentioned. The agent is left to infer context from the tool name and destructiveHint annotation.

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

export_clicksB
Read-onlyIdempotent
Inspect

Export detailed click records with full information (timestamp, browser, country, URL, platform, referer, bot, ISP, params).

ParametersJSON Schema
NameRequiredDescriptionDefault
endNoEnd date in YYYY-MM-DD format (default: yesterday)
botsNoBot filtering
startNoStart date in YYYY-MM-DD format (default: 30 days ago)
countryNoFilter by country code
link_idNoFilter by specific link ID
platformNoFilter by platform

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultsNo
Behavior3/5

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

Annotations already indicate readOnly, idempotent, and non-destructive behavior. The description adds that the tool exports 'full information' and lists specific fields, which is consistent and slightly enriches context, but does not disclose any additional behavioral traits beyond 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, clear sentence that immediately conveys the tool's purpose and key output fields. No unnecessary words; front-loaded and 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?

Given that an output schema exists (context signal) and annotations are present, the description adequately covers the tool's function. It lists output fields and implies an export action. However, it does not mention output format or file handling, which could be useful for completeness.

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 all 6 parameters are well-documented in the schema. The description does not add meaning beyond what the schema provides, so a baseline score of 3 is appropriate.

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 tool exports detailed click records and lists included fields (timestamp, browser, etc.). However, it does not explicitly differentiate from sibling tools like 'get_clicks', which may also return click data, so the distinction is implied but not explicit.

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 on when to use this tool versus alternatives like 'get_clicks' or 'get_analytics'. The agent must infer usage context from the tool name and description alone.

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

get_analyticsA
Read-onlyIdempotent
Inspect

Get time-series click analytics data for charting. Returns click counts over time.

ParametersJSON Schema
NameRequiredDescriptionDefault
endNoEnd date in YYYY-MM-DD format (default: today)
botsNoBot filtering: include (default), exclude, or only
startNoStart date in YYYY-MM-DD format (default: 30 days ago)
uniqueNoCount unique clicks only (by IP)
browserNoFilter by browser name
countryNoFilter by country code (e.g., 'US', 'GB')
link_idNoFilter by specific link ID
platformNoFilter by platform (e.g., 'desktop', 'mobile', 'tablet')
frequencyNoTime granularity: 'day' (default) or 'hour'

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false. Description adds that it returns click counts over time, which is useful but doesn't disclose additional behavioral traits like rate limits or result size limits.

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, no wasted words. Front-loaded with the core action and output. Perfectly concise.

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

Completeness4/5

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

Given the presence of output schema and rich annotations, the description is sufficiently complete. It states the return type and purpose. Minor gap: doesn't explicitly mention time granularity, but that is in the schema.

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 has 100% coverage with parameter descriptions. Description does not add per-parameter meaning beyond the schema, but the context of 'time-series' and 'charting' helps interpret the role of parameters like frequency and filters.

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 verb 'Get', the resource 'time-series click analytics data', the purpose 'for charting', and the output 'returns click counts over time'. This differentiates it from sibling 'get_analytics_by' which likely aggregates differently.

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?

Description implies use for charting time-series data but does not explicitly state when to use this tool vs alternatives like 'get_analytics_by'. No exclusions or prerequisites mentioned.

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

get_analytics_byA
Read-onlyIdempotent
Inspect

Get click counts grouped by a dimension (country, platform, referrer, etc.). Useful for breakdowns and top-N reports.

ParametersJSON Schema
NameRequiredDescriptionDefault
endNoEnd date in YYYY-MM-DD format (default: today)
botsNoBot filtering
startNoStart date in YYYY-MM-DD format (default: 30 days ago)
uniqueNoCount unique clicks only
counterYesDimension to group by (required)
countryNoFilter by country code
link_idNoFilter by specific link ID
platformNoFilter by platform

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

Behavior4/5

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

Annotations already declare the tool read-only, idempotent, and non-destructive. The description adds the key behavioral context of grouping click counts by a dimension, which is not covered by annotations. It does not detail filtering or default behavior, but the schema covers those.

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 tightly written sentences, front-loaded with the core function and followed by a practical use case. 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?

With complete schema coverage and an output schema present, the description is sufficient for the tool's complexity. It could mention filtering and defaults, but those are already in the schema, so the description provides the necessary purpose and context.

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%, so the schema fully documents all parameters. The description adds no additional parameter semantics beyond re-listing example dimensions already present in the enum. 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?

The description clearly states 'Get click counts grouped by a dimension' with examples, providing a specific verb and resource. It effectively distinguishes itself from sibling tools like get_analytics by emphasizing the grouping behavior.

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 includes 'Useful for breakdowns and top-N reports,' giving clear context for when to use the tool. It does not explicitly mention alternatives or when not to use it, but the intended use case is evident.

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

get_clicksB
Read-onlyIdempotent
Inspect

Get recent click data for the workspace

ParametersJSON Schema
NameRequiredDescriptionDefault
link_idNoOptional: filter clicks by link ID

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultsNo
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, so safety profile is clear. Description adds 'recent' but does not specify time range, pagination, or other key behaviors. With strong annotations, a score of 3 is appropriate.

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

Conciseness4/5

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

Single sentence is concise and front-loaded. However, the description could be more informative without losing conciseness, e.g., specifying what 'recent' means.

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?

Tool is simple with one optional param and output schema exists. However, missing details like the typical time window for 'recent' and whether results are paginated. Adequate but not comprehensive.

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 'link_id', which already has a description. The tool description adds no further meaning beyond what the schema provides.

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

Purpose4/5

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

Description uses specific verb+resource ('Get recent click data') and scope ('workspace'). It is clear but does not differentiate from siblings like 'export_clicks' or 'get_analytics' which may also involve click data.

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 vs alternatives such as 'export_clicks' or 'get_analytics_by'. No context on prerequisites or limitations.

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

list_domainsA
Read-onlyIdempotent
Inspect

List all custom domains in the workspace.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultsNo
Behavior3/5

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

Annotations already declare readOnlyHint and idempotentHint, so the description adds no extra behavioral context. It does not mention pagination, ordering, or scope limitations. With annotations present, a score of 3 is appropriate.

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?

One sentence, front-loaded with all necessary action, resource, and scope. No redundant information.

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 zero parameters and an output schema, the description fully captures the tool's purpose. No missing details that would hinder agent understanding.

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?

No parameters exist, so the description cannot add parameter semantics. Per guidelines, 0 parameters yields baseline 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?

Description clearly states verb (list), resource (custom domains), and scope (in the workspace). It effectively distinguishes from siblings like create_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 Guidelines3/5

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

No explicit guidance on when or when not to use this tool compared to alternatives. While the context implies usage for retrieving domain listings, the description lacks specification of prerequisites or exclusion cases.

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

list_webhooksA
Read-onlyIdempotent
Inspect

List all webhook URLs subscribed to the workspace. These receive click events for all links.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultsNo
Behavior4/5

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

Annotations already provide readOnlyHint, idempotentHint, and destructiveHint. The description adds value by stating these webhooks receive click events for all links, which is behavioral context beyond 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 concise sentences, front-loaded with purpose, no fluff.

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?

With zero parameters, annotations present, and output schema available, the description is fully adequate. It covers purpose and event type without needing more.

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?

No parameters exist, so the baseline is 4. The description does not need to add 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 it lists all webhook URLs subscribed to the workspace, using a specific verb and resource. It distinguishes from sibling tools like list_link_webhooks by specifying workspace-level scope.

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 implies usage for listing workspace-level webhooks, contrasting with link-level webhooks. However, it does not explicitly state when not to use or mention alternatives like list_link_webhooks.

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

list_workspacesA
Read-onlyIdempotent
Inspect

Return details of authenticated workspace

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultsNo
Behavior3/5

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

Annotations already provide readOnlyHint, idempotentHint, and destructiveHint. The description adds no behavioral context beyond 'Return'. It does not contradict 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?

Single sentence, front-loaded, no unnecessary words. Perfectly concise for a simple tool.

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

Completeness5/5

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

Given zero parameters, output schema exists, and annotations are present, the description is complete enough. It covers what the tool does without gaps.

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; baseline is 4 per rules. The description adds no parameter info, but none is needed.

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

Purpose5/5

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

The description clearly states the verb 'Return' and the resource 'details of authenticated workspace'. It is specific and distinguishes from sibling tools like update_workspace or 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 Guidelines4/5

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

While there is no explicit when/when-not guidance, the purpose is clear and context implies usage for retrieving workspace details. No alternatives are mentioned, but it's straightforward.

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

pingA
Read-onlyIdempotent
Inspect

Health check

ParametersJSON Schema
NameRequiredDescriptionDefault
messageYesa message to ping , default to Hello From Linkkly
Behavior3/5

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

Annotations provide readOnlyHint, idempotentHint, destructiveHint. Description adds no behavioral details beyond what annotations already convey. No contradiction.

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

Conciseness4/5

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

Extremely concise (2 words), front-loaded. Every word earns its place, though could be slightly more descriptive.

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 health check tool with one parameter and good annotations, the description is sufficient. No output schema needed.

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 'message', with a clear description in the schema. Description does not add extra parameter info.

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 'Health check' combined with the title 'Ping server' clearly indicates a tool for checking server availability. It is distinct from siblings like create_link or 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?

No explicit guidance on when to use this tool versus alternatives, but the tool is simple and likely has no alternatives. Implied usage: call to verify connectivity.

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

subscribe_webhookBInspect

Subscribe a webhook URL to receive click events for all links in the workspace.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesThe webhook URL to receive click event notifications

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

Behavior2/5

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

Annotations indicate non-readOnly and non-destructive, but the description lacks additional behavioral details such as idempotency, what happens on duplicate subscriptions, verification requirements, or error handling. For a create-like operation, this is insufficient.

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

Conciseness4/5

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

One sentence, no wasted words. Could be improved by adding key behavior info without becoming verbose, but it is concise and front-loaded with purpose.

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

Completeness3/5

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

For a simple subscription tool with one parameter and an output schema, the description covers purpose and scope adequately but omits return value behavior and side effects, leaving moderate 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?

The single parameter 'url' is well-described in the schema with 100% coverage. The description adds no extra meaning beyond the schema text, meeting the baseline but not exceeding it.

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 verb 'Subscribe', the resource 'webhook URL', and the scope 'for all links in the workspace', effectively distinguishing it from sibling tools like subscribe_link_webhook and list_webhooks.

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?

Usage is implied by context (workspace-level subscription vs per-link), but no explicit when-to-use, prerequisites, or alternatives are provided. For example, it doesn't mention that subscribe_link_webhook is for specific links.

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

test_authenticationB
Read-onlyIdempotent
Inspect

Test API Authentication

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

Behavior2/5

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

Annotations indicate readOnlyHint=true and destructiveHint=false, describing safety profile. However, the description adds no further behavioral traits (e.g., what 'test' entails, whether it returns status or user info). Given the minimal annotations, the description should provide more context beyond the name.

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

Conciseness4/5

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

The description is a single brief sentence, concise and to the point. However, it may be slightly under-specified, but given the tool's simplicity, it earns a 4 for efficiency.

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?

Considering 0 parameters and the presence of an output schema, the description is minimally viable. However, it lacks any explanation of the return value or what 'testing' involves (e.g., a boolean, user object), leaving the agent to infer from the output schema alone.

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?

No parameters exist (0 params, schema coverage 100%), so the description does not need to explain parameters. Baseline 4 is appropriate as there is no need for parameter elaboration.

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 'Test API Authentication' clearly states the tool's function: testing authentication. The name reinforces this. While siblings like 'ping' might also test connectivity, this tool is specifically for authentication, providing adequate distinction.

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 (e.g., 'ping'). The description lacks any context about prerequisites or when authentication testing is appropriate, leaving the agent without usage direction.

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

unsubscribe_webhookA
Destructive
Inspect

Unsubscribe a webhook URL from workspace click events.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesThe webhook URL to unsubscribe
Behavior3/5

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

Annotations already provide destructiveHint: true, so the agent knows it's destructive. The description confirms the action but adds no further behavioral context (e.g., side effects, reversibility, or error handling).

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?

Single sentence that is front-loaded with the key action and resource. No wasted words; appropriately concise.

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

Completeness4/5

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

For a simple one-parameter destructive tool with no output schema, the description adequately explains its purpose. However, it omits details about return values or potential errors, which would be marginally helpful.

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

Parameters3/5

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

Schema description coverage is 100%, and the schema parameter description ('The webhook URL to unsubscribe') is sufficient. The tool description adds no extra semantic value beyond what the schema 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 the verb 'Unsubscribe' and the resource 'a webhook URL from workspace click events'. It is specific and distinguishes from sibling tools like subscribe_webhook and unsubscribe_link_webhook by specifying workspace-level events.

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 vs alternatives. Does not mention that for link-specific webhooks one should use unsubscribe_link_webhook, nor any prerequisites or context for usage.

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

update_domain_faviconA
DestructiveIdempotent
Inspect

Update the favicon URL for a custom domain.

ParametersJSON Schema
NameRequiredDescriptionDefault
domain_idYesThe ID of the domain to update
favicon_urlYesURL to the favicon image

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

Behavior3/5

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

Annotations already indicate readOnlyHint=false, destructiveHint=true, and idempotentHint=true. The description adds no extra behavioral context beyond 'update,' missing details like permission requirements or effects on existing state. With annotations present, the description provides minimal added value.

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 (8 words) that front-loads the purpose. 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?

For a simple update with an output schema, the description is minimally adequate. However, given the destructiveHint annotation, more context about reversibility or validation of favicon_url could be helpful. The description does not address potential side effects.

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%, so the schema fully documents both parameters. The description does not add any meaning beyond what the schema provides, hitting the 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 clearly states the verb 'update' and the resource 'favicon URL for a custom domain.' It distinguishes itself from siblings like update_link or update_workspace by focusing on a specific domain-level attribute.

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 given on when to use this tool versus alternatives (e.g., create_domain or update_link). There is no mention of prerequisites, such as the domain needing to exist, nor any exclusion criteria.

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

update_workspaceA
Destructive
Inspect

Update workspace settings. Only the fields provided are changed; omitted fields keep their current values.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNoWorkspace name
webhooksNoREPLACES the workspace's full webhook subscription list. Omit to leave webhooks unchanged; prefer subscribe_webhook / unsubscribe_webhook for adding or removing a single URL.

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

Behavior4/5

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

With annotations already indicating destructive and non-read-only behavior, the description adds valuable context by stating 'Only the fields provided are changed; omitted fields keep their current values,' which is a meaningful partial-update behavior. This complements the annotations without contradicting 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 extremely concise: two sentences that front-load the purpose and immediately explain the key partial-update behavior. 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?

Given the tool's simplicity (2 params, output schema present, good annotations), the description is nearly complete. It covers the core behavior, with the webhook replacement semantics provided in the schema. Slightly lacking is an explicit note in the description about webhook replacement, but this is covered elsewhere.

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 both parameters, including detailed semantics for 'webhooks' about replacing the full list and preferring subscribe/unsubscribe tools. The main description adds no extra parameter information, so 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?

The description clearly states 'Update workspace settings' with a specific verb and resource, distinguishing it from other update tools like update_link and update_domain_favicon. The additional sentence about partial updates further clarifies the 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 provides clear context that this tool updates workspace settings and that omitted fields are unchanged, implying its use for partial updates. However, it does not explicitly mention when to prefer alternative tools (like subscribe_webhook/unsubscribe_webhook for webhook management), which appears only in the schema description.

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
    A
    quality
    D
    maintenance
    Enables AI assistants to create, manage, and analyze short URLs through complete URL shortening functionality. Supports batch operations, custom domains, click statistics, and comprehensive link management.
    6
    6
    1
    MIT
  • A
    license
    A
    quality
    C
    maintenance
    Enables AI agents to shorten URLs, manage links, and track click analytics through 8 first-class tools, designed for use with Claude Desktop, Cursor, and other MCP clients.
    9
    31
    MIT
  • A
    license
    -
    quality
    C
    maintenance
    Enables creation of short links, dynamic QR codes, UTM templates, and hosted vCards with click/scan analytics through natural language conversations.
    135
    MIT

View all MCP Servers

Try in Browser

Your Connectors

Sign in to create a connector for this server.