Klinikk Ferbu nettbutikk
Server Details
Klinikk Ferbu web shop: cosmetic hair-care products, live shipping quotes, Stripe checkout links.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
TDQS
Scored across 4 tools
Each tool has a clearly distinct purpose: listing products, fetching one product's details, retrieving shipping rates, and creating a checkout link. There is no meaningful overlap or ambiguity between them.
All tool names follow the same snake_case verb_noun pattern: list_products, get_product, get_shipping_rates, create_checkout. The naming is uniform and predictable.
Four tools is well-scoped for a customer-facing webshop integration: browse products, view details, calculate shipping, and create checkout. Each tool earns its place without unnecessary bulk.
The tools cover the full customer purchase journey for this shop: discover products, inspect a product, get shipping costs, and initiate payment via Stripe Checkout. No critical dead ends or missing operations are apparent for the stated purpose.
Available Tools
4 toolscreate_checkoutOpprett Stripe Checkout-lenkeAInspect
Oppretter en Stripe Checkout-lenke for valgte produkter og leveringsmåte. Kunden åpner lenken selv og fyller inn adresse og betaling der; ingenting belastes før kunden betaler på Stripe-siden. Lenken gjelder i 24 timer. Priser hentes fra butikken (ikke fra deg), frakt fra postnummeret, mva beregnes av Stripe. delivery_method: pickup (henting i Hamar, ingen frakt), hentested eller hjemlevering (krever shipping_postcode). Kjøpsvilkår: https://ferbu.no/kjopsvilkar
| Name | Required | Description | Default |
|---|---|---|---|
| items | Yes | ||
| delivery_method | Yes | ||
| shipping_postcode | No | Påkrevd for hentested/hjemlevering |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description goes well beyond the sparse annotations by disclosing payment timing ('ingenting belastes før kunden betaler på Stripe-siden'), link expiry (24 timer), dynamic pricing from the store, shipping calculation from postcode, VAT handling by Stripe, and purchase terms. This gives the agent important behavioral context without contradicting annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is compact yet dense with useful information. Each sentence adds value: the main purpose, customer flow, expiry, pricing sources, delivery rules, and terms link. The most important action is front-loaded, and nothing feels redundant.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the creation flow, pricing behavior, delivery constraints, and terms, which is enough for correct invocation. The main missing piece is an explicit statement of the return value (e.g., that the response contains the Stripe link URL), especially since there is no output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is only 33%, and the description compensates by explaining delivery_method variants and the shipping_postcode requirement. It also clarifies that items are store products and that shipping depends on the postcode. It does not deeply describe the items array structure, but the schema already exposes sku and quantity with clear names and constraints.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action and resource: 'Oppretter en Stripe Checkout-lenke for valgte produkter og leveringsmåte.' This clearly distinguishes the tool from read-only siblings like get_product, get_shipping_rates, and list_products, since it is the only one creating a checkout link.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear context for when to use the tool: whenever a checkout link for selected products and a delivery method is needed. It also clarifies delivery-method requirements such as pickup having no shipping and hentested/hjemlevering requiring shipping_postcode. It does not explicitly compare against sibling tools, but the purpose is unmistakable.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_productProduktdetaljerARead-onlyIdempotentInspect
Full beskrivelse, ingredienser, bruksanvisning, mål/vekt og GTIN for ett produkt. Oppgi sku (f.eks. KF-001) eller slug.
| Name | Required | Description | Default |
|---|---|---|---|
| sku | No | Produktets SKU, f.eks. KF-001 | |
| slug | No | URL-slug fra list_products |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, so the safety profile is covered. The description adds value by specifying the concrete response content and the one-product bound, which go 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
One compact sentence that front-loads the return value and then gives the call instruction. No filler, no repetition of schema content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only single-product lookup, the description covers what it returns and how to identify the product. It lacks explicit error/not-found behavior and does not enforce the sku-or-slug requirement in the schema, but this is a minor gap given the annotations and simple parameter set.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema descriptions already document both parameters with examples, so the baseline is 3. The description adds the important selection semantics that the agent should supply sku or slug, which the schema does not express as a mutually-exclusive requirement.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool returns full details for one product and enumerates the data areas (description, ingredients, instructions, dimensions/weight, GTIN). It distinguishes itself from sibling list_products by explicitly scoping to a single product and requiring sku or slug.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear usage context: use when you need complete details for one product, identified by sku or slug. It does not explicitly mention alternatives or exclusions, but the singular scope and identifier instructions make the intended use unambiguous.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_shipping_ratesFraktpriser for et postnummerARead-onlyIdempotentInspect
Henter live fraktpriser (NOK, inkl. mva) for hentested og hjemlevering til et norsk postnummer, pluss henting i Hamar uten fraktkostnad. Kall denne før create_checkout når kunden ikke skal hente selv.
| Name | Required | Description | Default |
|---|---|---|---|
| items | Yes | ||
| postcode | Yes | Norsk postnummer, 4 siffer |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and openWorldHint, so the safety profile is covered. The description adds valuable context beyond annotations: 'live' rates signaling external variability, 'NOK, inkl. mva' currency/VAT behavior, and the free-Hamar pickup nuance. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with zero filler. The first sentence is now the purpose with the currency and domain detail, the second gives routing guidance for the sibling. Every clause earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Usage routing and semantics are adequate given the strong annotations, but the tool has no output schema and the description never hints at the return shape (rate structure per delivery mode), and the items parameter is unexplained. For a 2-param tool, the gaps are moderate: an agent could call it correctly but wouldn't know what result to expect.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 50% (postcode is described, items is not), so the description must compensate. It confirms the postcode is Norwegian, but 'items' is entirely undocumented in both schema and description — no hint about how sku/quantity affect rates or how the array relates to the checkout. The tool is very vague on building the parameter that drives pricing.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb plus resource — 'Henter live fraktpriser (NOK, inkl. mva)' — and defines its exact scope: pickup point and home delivery to a Norwegian postal code, plus the Hamar free-pickup special case. It also names the sibling create_checkout and tells the agent to call it first, which distinguishes it from the checkout flow without opening schemas.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'Kall denne før create_checkout når kunden du ikke skal hente selv' explicitly states when to use the tool (before create_checkout for non-pickup customers). It names the relevant sibling but does not give explicit when-not guidance or alternative conditions beyond the Hamar pickup implication.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_productsProdukter i nettbutikkenARead-onlyIdempotentInspect
Lister produktene i Klinikk Ferbus nettbutikk med pris (NOK, inkl. mva), tilgjengelighet og lenke. Kosmetiske hårpleieprodukter; sendes kun innen Norge.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, and non-destructive behavior. The description adds useful context beyond that: it specifies output contents (price, availability, link), product category (cosmetic hair care), and shipping restriction (Norway only). No contradictions with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences, with the main verb and resource front-loaded, followed by only the most relevant details. Every element in the description serves a purpose, and there is no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, read-only list operation, the description fully covers scope, content, category, pricing, and shipping constraint. Combined with annotations, an agent has enough context to select and invoke the tool correctly without needing further details.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, so parameter semantics are not needed. The description instead compensates by explaining what the response contains, which is helpful given the lack of an output schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Lister') and resource ('produktene i Klinikk Ferbus nettbutikk'), and specifies what is included: price in NOK incl. VAT, availability, and link. It clearly distinguishes itself from siblings like get_product by focusing on listing products rather than fetching a single one.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly implies use for listing all products in the webshop, with no explicit discussion of when not to use it. Sibling tools like get_product suggest an alternative for single-product retrieval, but the description itself does not explicitly state this boundary.
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.
4 tool updates
- First observed
create_checkout - First observed
get_product - First observed
get_shipping_rates - First observed
list_products
Related MCP Connectors
Free preview websites for local trades, then Stripe Checkout for $29/mo hosting.
Hosted storefront backend for AI agents: products, cart, Stripe + PayPal, delivery, order tracking.
Israeli cosmetics retailer: ΔE shade matching, customer wallet, cart, orders, gift cards.
Create instxnt.xyz storefronts through Claude: add products, connect Stripe, go live.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceMCP server for e-commerce operations including product catalog management, cart/checkout, and Stripe integration, with built-in EU AI Act compliance.MIT
- AlicenseAqualityBmaintenanceStructured product data from the open web — where platform APIs don't reach. Schema.org + AI extraction. Pay per call via Stripe MPP.241 npm3Apache 2.0
- AlicenseNot gradedqualityBmaintenanceLets any AI agent accept payments in Sweden via Stripe hosted checkout. Supports cards, Klarna, Apple Pay, and Google Pay through a stateless translation layer.MIT
- FlicenseNot gradedqualityCmaintenanceEnables users to search live products on crunchyfashion.in by keyword, collection, price and sort order, retrieve full details for individual items, and browse available collections — with results rendered as a shoppable, storefront-styled carousel or grid.-
Glama MCP Gateway
Add one secure layer between your agents and this server.