MCP HeartbeatTHE MCP OBSERVATORY
Public workspace

Explore

Evidence for your next connection.

Independent measurements of remote MCP servers. Every observation has a timestamp.

Read-only probes

MCP server · Payments & trading

Lenius

Order from local Danish shops: products, pickup times, card payment and AltID age verification.

Checks passed
11 / 22

3 failed · 8 not measured

Median response
107 ms

Median of successful probes over 7 days

30-day uptime
Not measured

Share of countable probes over 30 days, including daily rollups. Auth challenges are excluded.

Discovered tools
25

Tool definitions returned by this server

Independent monitoring

Health & checks

Status history

Responded

The server completed its last measured handshake. This is an observation, not a guarantee.

Last checked
Check summary by test group
Test areaPassedFailedUnmeasured
ConnectionCan a client connect and discover tools?
500
Reliability & speedDoes it respond consistently and quickly?
004
Access & authenticationWhat is required to use this server?
102
Tool qualityAre the tool definitions usable by an agent?
310
Publisher identityCan the publisher be traced to its source?
222

Unmeasured means there is not enough evidence to decide. How these checks work

Inspect individual checks 22 recorded

Core

  • Pass
    Reachable

    Latest probe returned HTTP 200 in 107 ms.

  • Pass
    Valid handshake

    protocolVersion 2025-11-25, serverInfo.name lenius.

  • Pass
    Lists tools

    tools/list returned 25 tools.

  • Pass
    Current protocol

    Negotiated 2025-11-25. The bar is 2025-06-18 or newer.

  • Pass
    HTTPS

    The endpoint URL is https.

Performance

  • Not measured
    Fast (p50)

    Median latency 107 ms over 1 samples in 7 days. The bar is 1000 ms. Need at least 5 samples.

  • Not measured
    Consistent (p95)

    95th percentile 107 ms over 1 samples in 7 days. The bar is 3000 ms. Need at least 20 samples.

  • Not measured
    Reliable (uptime)

    1 of 1 attempts returned a tool list in 30 days (100%). The bar is 99%. Need at least 30 samples.

  • Not measured
    Stable tool list

    Fewer than two successful probes in 30 days, so tool-list stability is not measured.

Access

  • Pass
    Open access

    tools/list succeeded with no credential, and the record declares none.

  • Not measured
    Standard auth

    Auth is not required, so the OAuth metadata check does not apply.

  • Not measured
    Free tier cited

    No publisher quote has been checked.

Tools

  • Pass
    Tools described

    Every tool description is at least 20 characters.

  • Pass
    Valid input schemas

    Every inputSchema is a JSON Schema object.

  • Fail
    Parameters documented

    65 of 87 parameters have a description (75%). The bar is 80%.

  • Pass
    Safety hints

    Every tool sets readOnlyHint or destructiveHint.

Publisher

  • Pass
    Verified namespace

    Listed in the Official MCP Registry.

  • Fail
    Website matches publisher

    The website host does not match the reverse-domain namespace.

  • Fail
    Source repo linked

    No repository URL is on file.

  • Not measured
    Repo owner matches

    This namespace is not an io.github login, so the owner comparison does not apply.

  • Pass
    Recently updated

    Updated 2026-10-17T20:56:28.51467Z, within 180 days.

  • Not measured
    Open-source licence

    No GitHub repository to ask about a licence.

Start using Lenius

Connect to this server

Choose your client, copy the configuration, then enable the server in your client’s MCP settings.

Run this command in your terminal, then restart Claude Code.

Claude Code

claude mcp add --transport http lenius https://mcp.lenius.app/mcp

Capabilities

Tools 25

available_times

Available pickup or delivery times for a shop on a date (default: the first date with times), the next dates with times, preparation time and upcoming closed days.

Discovered
check_delivery

Whether the shop delivers to an address, the delivery fee for that address (same zones and calculation as the checkout), free delivery threshold, minimum order, other fees and the next delivery time. Saves nothing.

Discovered
check_stock

Whether products can be ordered now (available or sold out). Shops do not track quantities, so quantity is always null; quote_order checks again when ordering.

Discovered
compare_products

Compare 2–5 specific products side by side: price (and sizes, price per kg), description, options and required choices, age limit, preparation time and availability, with a short summary (cheapest, most expensive, which have sizes or required choices). Get product_id from search_products or get_menu.

Discovered
find_shops

Find Lenius takeaway restaurants and shops in a Danish city or postal code. Optional: what the customer wants (query, e.g. "pizza"), pickup or delivery, and a date/time to check availability (returns the nearest available times).

Discovered
get_age_check

Status of an age check: pending, approved (pass age_check_id to place_order), failed, expired or revoked. wait_seconds (max 25) waits while pending. While pending, the card shows the AltID QR code again.

Discovered
get_checkout_requirements

What is needed before ordering at the shop: customer details (name, e-mail, phone) and their rules, address for delivery, time, accepted terms (terms_url), card payment, comment, age check for age-limited products, minimum order and fees per fulfillment, and whether the customer can log in instead of typing details.

Discovered
get_delivery_eta

When the order is expected ready for pickup or delivered: the chosen time plus the shop’s delay, with minutes left. An estimate from the shop’s time, not GPS.

Discovered
get_delivery_status

The current status of an order as a timeline: ordered, paid, accepted, being prepared, ready / out for delivery, delivered or picked up (with times), and any delay. Status from the shop, not live courier tracking.

Discovered
get_menu

The menu of a shop from find_shops: categories and products with prices in DKK (incl. VAT) and whether they are available. A product with a unit is priced per unit (pcs, portion, pack, kg, g, l, cl, ml, m = metre). Also weight in grams, preparation time in minutes (orders for it need at least that much notice) and the main image when set. Optional query to only get matching products.

Discovered
get_opening_hours

The shop's opening hours: the week, special days (holidays, closed days, changed hours), whether it is open now, and the times orders can be placed for per day with closed periods for orders. Use available_times for the exact times on a date.

Discovered
get_order

An order and its current status: awaiting_payment, awaiting_shop_approval, approved, in_kitchen, ready, out_for_delivery, completed, cancelled or rejected (and any delay), items, total, order_url and the seller. Same as order_status.

Discovered
get_payment_link

The link to pay an order: the shop's order page with "Betal nu" (order_url) and a QR code, while the order can still be paid. If the payment could not be created before, it is started again. For a paid, cancelled or expired order it says so instead. Never a direct link to the payment provider.

Discovered
get_payment_status

The actual payment status of an order, looked up at the payment provider now (not only the stored status): not paid, paid (reserved), charged, released, refunded or failed, with the amount. If the customer has paid, the order is updated as on the order page.

Discovered
get_product

One product: full description, price in DKK incl. VAT, all images, variants (sizes with their own price), weight, preparation time, age limit and availability.

Discovered
get_product_options

The options of a product: sizes, extras, ingredients to choose, free text and which are required, with option_id/choice_id and prices in the format quote_order and place_order take.

Discovered
get_shop_info

The shop's name, company name, address, phone, e-mail, CVR (Danish company number), website, social links, logo and whether it offers pickup and delivery.

Discovered
get_shop_policies

The shop's terms: terms of sale and its other pages (privacy, delivery, returns, complaints) with links, right of withdrawal, payment, cancellation rules, fees and minimum order, and the seller's company details.

Discovered
get_support_contact

The right contact for a question: the shop (order, items, allergens, time, delivery, refunds, returns, complaints) with phone, e-mail and whether it is open now, or Lenius support (payment pages, login, the AI connection, technical problems, personal data).

Discovered
order_status

Status of an order from place_order: awaiting_payment, awaiting_shop_approval, approved, in_kitchen, ready, out_for_delivery, completed, cancelled or rejected (and any delay).

Discovered
place_order

Place the order with the shop (like the checkout). Only after the customer confirmed the quoted order and accepted the terms (terms_url). Paid by card in advance on the shop's order page: returns the order number and order_url (with "Betal nu"; the shop gets the order when paid). The customer gets a confirmation e-mail when paid. With products with an age limit and no approved age_check_id, nothing is ordered: returns status age_check_required with the AltID card; call again with age_check_id when the age is confirmed.

Discovered
quote_order

Price an order exactly like the shop checkout (lines, fees, discounts, total in DKK incl. VAT), check that the time, products, minimum order and delivery address are OK, and tell how it is paid. Nothing is saved. Shows a card with the products (with their images), fees and total so the customer can see what they are ordering; show the result to the customer before place_order.

Discovered
search_products

Search the shop's products by name, description or category (e.g. "pizza", "vegetar", "cola"). Returns product_id, price in DKK incl. VAT, availability, image and whether the product has options.

Discovered
start_age_check

Only when the customer orders products with an age limit from several shops: start one age check with AltID with the highest age limit across all the orders (min_age from get_menu/quote_order) and reuse the age_check_id in every place_order (valid 30 minutes after approval, at any shop). With an order from one shop, call place_order instead: it shows the AltID card itself. Shows the AltID card (QR code / "Åbn AltID app") that updates by itself. Never make your own QR code.

Discovered
validate_cart

Check a cart before quoting: every item is checked against the shop catalogue (exists, available, current price, required and valid options) and all problems are returned at once, with the price per item. With fulfillment, date and time (and address for delivery) the time, address and minimum order are checked too. Saves nothing.

Discovered

Recent measurements

Probe history

View status
Latest stored probes. Raw probe rows are kept for 14 days.
CheckedResultResponseTools
Connected107 ms25