Skip to main content
Glama

Server Details

Read-only product MCP for robskan.nl — public profile and Spotify listening APIs.

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL

TDQS

A3.5/5.0

Scored across 5 tools

Disambiguation4/5

Each tool targets a clearly different operation: year progress, listening rollups, project lookup, now-playing snapshot, and HTTP route verification. The only mild overlap is between create_listening_summary and pull_now_playing_snapshot, both touching music data, but one aggregates and the other fetches live, so they remain distinguishable.

Naming Consistency5/5

All five tools follow a consistent verb_noun snake_case pattern (compute_..., create_..., lookup_..., pull_..., verify_...). No mixed conventions or camelCase deviations.

Tool Count5/5

Five tools sit comfortably in the well-scoped 3-15 range. Each tool earns its place as a distinct capability with no redundant entries.

Completeness2/5

The set is a heterogeneous grab-bag of one-off utilities (calendar metric, music rollup, project lookup, route verification) with no coherent domain or CRUD lifecycle to cover. There are obvious dead ends—no way to update, delete, or list beyond the single operations offered—so an agent could hit gaps quickly.

Available Tools

5 tools
compute_year_progressBInspect

Compute calendar year progress for a timezone (live product metric).

NameRequiredDescriptionDefault
timezoneYesIANA timezone, e.g. Europe/Amsterdam or UTC.

TDQS

B3.2/5.0
Behavior3/5

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

Annotations give destructiveHint=false and openWorldHint=false, so the safety profile is partly covered, and the parenthetical '(live product metric)' adds that the value is computed live rather than cached. However, readOnlyHint=false is left unexplained for what reads as a pure computation, and the description does not clarify this tension or the return shape.

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?

A single front-loaded sentence with no waste. The trailing parenthetical is slightly vague but short enough to earn its place as a liveness hint.

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

Completeness3/5

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

With no output schema, the description should say what is returned (e.g., a fraction or percentage of the year elapsed), but it never does. An agent can call it with the required timezone but cannot predict the response.

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?

There is only one parameter and schema coverage is 100%, with an IANA timezone example already documented in the schema. The description adds only that the timezone scopes the computation, which is the baseline expectation.

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?

States a specific verb+resource ('Compute calendar year progress') scoped to a timezone, which no sibling tool covers. Clear to an agent, though the exact output measure (percentage elapsed versus days remaining) is not specified.

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 call this versus alternatives, nor any prerequisites or exclusions. The sibling list contains nothing similar, but the description never states the use case or trigger condition.

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

create_listening_summaryBInspect

Create a listening summary rollup for day or week from recent plays.

NameRequiredDescriptionDefault
rangeYesAggregation window: day (24h plays) or week (7d plays).

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false, destructiveHint=false and openWorldHint=false, so the mutation/closed-world profile is covered externally. The description adds only that the input is 'recent plays', and says nothing about whether an existing rollup for the same range is overwritten, whether the call is idempotent, or what permissions are needed - relevant for a write tool.

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

Conciseness4/5

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

One front-loaded sentence with no filler; the scope constraint appears before the qualifier. It is terse to the point of omitting useful behavior detail, but there is no wasted text.

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 low-complexity single-parameter tool with no output schema, the essentials to select and invoke it are present. What is missing is what the call produces and how it interacts with pre-existing summaries - information the annotations and schema do not supply.

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 single 'range' parameter has an enum with documented meanings (day = 24h plays, week = 7d plays), so the description restating 'day or week' adds almost nothing beyond the schema. Baseline 3 applies.

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?

States a specific verb ('Create') and a specific resource ('listening summary rollup') plus scope ('day or week from recent plays'), so the operation is unambiguous. It does not, however, differentiate itself from any named sibling, so it falls short of a 5.

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 only implied by the phrase 'from recent plays' and the day/week scope; there is no explicit when-to-use, when-not-to-use, or named alternative among the siblings (compute_year_progress, pull_now_playing_snapshot, etc.). Adequate but with a clear guidance gap.

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

lookup_project_statusA
Read-only
Inspect

Look up Meridian or Dock product availability and links.

NameRequiredDescriptionDefault
projectYesProduct identifier: meridian or dock.

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false, and openWorldHint=false, so the safety profile is covered. The description adds that the result includes availability plus links, but says nothing about freshness of the data, whether lookups can fail for unknown projects, or the shape of the response.

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 short sentence with no filler, and the resource being looked up is front-loaded. Nothing in it is wasted or redundant.

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 one-parameter read tool with no output schema, the description is nearly sufficient, but since there is no output schema it should say more about what "availability" and "links" actually are so an agent can interpret the result.

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% with a single enum-constrained parameter, so the schema already fully documents the accepted values. The description restates the valid values (Meridian, Dock) but adds no semantic meaning such as case sensitivity or behavior for missing products, so the baseline 3 applies.

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?

States a specific verb ("look up") and resource ("Meridian or Dock product availability and links"), so an agent can tell what it retrieves. The sibling tools are entirely unrelated, so no differentiation is needed, but the description leaves "availability and links" somewhat abstract relative to the tool name's "status".

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 only implied: the reader infers you call this when you need status for one of the two named products. There is no explicit when-to-use, when-not-to-use, or prerequisite statement, though the absence of any overlapping sibling lowers the cost of that gap.

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

pull_now_playing_snapshotB
Read-only
Inspect

Load the live Spotify now-playing snapshot from the music product API.

NameRequiredDescriptionDefault
formatYesfull returns track item; minimal returns playing flag only.

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=false, so the safety profile is covered. The description adds only that the data is 'live' (real-time freshness) and a point-in-time 'snapshot', but says nothing about auth needs, polling/rate behavior, or what happens when nothing is playing.

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 front-loaded sentence with no redundancy. The trailing 'from the music product API' is slightly vague filler that could be dropped without loss.

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 single-parameter read, annotations and the schema cover safety and input semantics. However, with no output schema, the description should say what a 'snapshot' contains and how the empty/nothing-playing case behaves, and it does not.

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 single 'format' enum is fully documented in the schema ('full returns track item; minimal returns playing flag only'). The description adds no meaning beyond that, so the baseline 3 applies.

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?

A specific verb ('Load') and resource ('live Spotify now-playing snapshot') tell the agent exactly what it retrieves. It does not distinguish itself from the domain-adjacent sibling create_listening_summary, leaving a small ambiguity about which music tool to reach for.

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 never says when to use this tool versus create_listening_summary or the other siblings, and gives no preconditions (e.g., user must have an active Spotify session). Usage must be inferred entirely from the name.

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

verify_http_routeB
Read-only
Inspect

Verify an HTTP method and path against the Robskan product API allowlist.

NameRequiredDescriptionDefault
pathYesAPI path such as /api/v1/health or /api/v1/batch.
methodYesHTTP method to validate (GET or POST).

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=false, so the safety profile is covered. The description adds meaningful context by naming the allowlist as the authority, implying a closed, finite validation set. It does not disclose what a failed verification produces (exception vs. boolean vs. reason string), which is the main behavioral unknown.

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?

A single front-loaded sentence with no filler; every clause (method, path, allowlist) earns its place. It is slightly under-specified rather than over-long, so conciseness itself is not the problem.

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

Completeness3/5

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

With no output schema, the description is the only place to learn what verification returns, and it is silent on that. For a two-parameter boolean-style check this is a real gap, though the narrow scope keeps it from being severe.

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 the path example format and the GET/POST enum already documented in the schema. The description's method-and-path phrasing merely restates those parameters and adds no format, encoding, or edge-case detail beyond structured fields.

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

Purpose4/5

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

The description states a specific verb (Verify) and resource (HTTP method and path) plus the authoritative source (the Robskan product API allowlist), which is enough to understand the operation. It does not differentiate from siblings, but the sibling list (year progress, listening summary, project status, now playing) shares no surface area, so that omission costs little.

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 only implied: an agent can infer this is a pre-flight check to run before calling an API route. There is no explicit statement of when to use it, when not to, or what to do with the result, and no named alternative to compare against.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 4 tool updates
    • Removedfetch_now_playing_track
    • Addedpull_now_playing_snapshot
    • Removedvalidate_api_request
    • Addedverify_http_route
  2. 8 tool updates
    • Addedcompute_year_progress
    • Addedcreate_listening_summary
    • Addedfetch_now_playing_track
    • Removedget_listening_history_summary
    • Removedget_now_playing
    • Removedget_profile
    • Addedlookup_project_status
    • Addedvalidate_api_request
  3. 3 tool updates
    • Changedget_listening_history_summary2 fields changed
      • addedInput schema / properties / limit
        Added value: +{
        +  "description": "Max recent tracks to include (default 5).",
        +  "maximum": 10,
        +  "minimum": 1,
        +  "type": "integer"
        +}
      • addedInput schema / required
        Added value: +[]
    • Changedget_now_playing2 fields changed
      • addedInput schema / properties / forceRefresh
        Added value: +{
        +  "description": "When true, bypass cache where supported.",
        +  "type": "boolean"
        +}
      • addedInput schema / required
        Added value: +[]
    • Changedget_profile2 fields changed
      • addedInput schema / properties / forceRefresh
        Added value: +{
        +  "description": "When true, bypass cache where supported.",
        +  "type": "boolean"
        +}
      • addedInput schema / required
        Added value: +[]
  4. 3 tool updates
    • First observedget_listening_history_summary
    • First observedget_now_playing
    • First observedget_profile

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables MCP clients to sign in with OAuth 2.1 and read a user's WHOOP recovery, sleep, strain, and workout data through read-only tools, while also receiving and forwarding signed WHOOP webhooks to your endpoints.
    16 npm
    MIT
  • F
    license
    Not graded
    quality
    B
    maintenance
    Read-only MCP access to a personal Telegram account. Allows querying chats, reading and searching messages via Streamable HTTP.
    -
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources