protogrid

Search / app.lenius/takeaway

Lenius

R0· no sign-in

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

v1.1.0 · active · website · descriptor JSON · versions

An agent can connect right now, no human step.Remote endpoint, no authentication, reachable on the last probe.
Quality89new
Trust82of 100
Uptime, 30 days92%
Latency p50487 ms

Connect

8 clients · secrets stay placeholders
{
  "mcpServers": {
    "takeaway": {
      "type": "http",
      "url": "https://mcp.lenius.app/mcp"
    }
  }
}
claude mcp add --transport http takeaway https://mcp.lenius.app/mcp
[mcp_servers.takeaway]
url = "https://mcp.lenius.app/mcp"
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "takeaway": {
      "type": "remote",
      "url": "https://mcp.lenius.app/mcp",
      "enabled": true
    }
  }
}
{
  "mcpServers": {
    "takeaway": {
      "type": "http",
      "url": "https://mcp.lenius.app/mcp"
    }
  },
  "deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=takeaway&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vbWNwLmxlbml1cy5hcHAvbWNwIn0%3D"
}
{
  "servers": {
    "takeaway": {
      "type": "http",
      "url": "https://mcp.lenius.app/mcp"
    }
  }
}
{
  "mcpServers": {
    "takeaway": {
      "httpUrl": "https://mcp.lenius.app/mcp"
    }
  }
}
extensions:
  "takeaway":
    enabled: true
    name: "takeaway"
    type: streamable_http
    uri: "https://mcp.lenius.app/mcp"
    timeout: 300

Quality 89 / 100new

protocol75 · weight 25
  • warn
    protocol.modernnewest supported version is 2025-11-25; 2026-07-28 not supported, older versions are deprecated until 2027-07-28
  • n/a
    protocol.statelessonly applies to 2026-07-28 servers
  • pass
    protocol.transportstreamable HTTP
  • n/a
    protocol.list_ttlonly applies to 2026-07-28 servers
authorizationn/a · weight 15
  • n/a
    auth.prm, auth.as_metadata, auth.cimdno remote uses OAuth
  • n/a
    auth.secret_in_urlno templated URL
tool hygiene100 · weight 30
  • pass
    tools.descriptionsevery tool has a description
  • pass
    tools.description_lengthdescriptions are concise
  • pass
    tools.schemasevery tool has an object input schema
  • pass
    tools.annotations8 of 8 tools declare readOnlyHint or destructiveHint
  • pass
    tools.directory_hintsevery tool declares readOnlyHint, destructiveHint, idempotentHint and openWorldHint
  • pass
    tools.token_costabout 3,492 tokens to load every tool
  • pass
    tools.api_dumptools are not a one-to-one API dump
stabilityn/a · weight 15
  • n/a
    stability.changes, stability.rug_pulltool history recorded for 6 of the 7 days needed
dependenciesn/a · weight 15
  • n/a
    deps.known_vulns, deps.mcp_sdk_version, deps.resolvableno npm or PyPI package

8 tools, about 3,492 tokens to load them all · tool set afb3fd632106 · tools last changed 2026-10-17 · checked 2026-10-20 15:57 UTC

Tool changes

  • start_age_checkchangeddescription
    before

    Start an age check with AltID before ordering products with an age limit (min_age from get_menu/quote_order). With several orders, use the highest age limit across all of them and reuse the age_check_id in every place_order (valid 30 minutes after approval, at any shop). Shows the AltID card (QR code / "Åbn AltID app") that updates by itself. Never make your own QR code.

    after · 79% of words in common

    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.

  • place_orderchangedinput schema
  • quote_orderchangedinput schema
  • get_age_checkadded

    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.

  • start_age_checkadded

    Start an age check with AltID before ordering products with an age limit (min_age from get_menu/quote_order). With several orders, use the highest age limit across all of them and reuse the age_check_id in every place_order (valid 30 minutes after approval, at any shop). Shows the AltID card (QR code / "Åbn AltID app") that updates by itself. Never make your own QR code.

  • place_orderchangeddescription, input schema
    before

    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.

    after · 68% of words in common

    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.

  • place_orderchangedinput schema
  • quote_orderchangedinput schema
  • quote_orderchangeddescription
    before

    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. Show the result to the customer before place_order.

    after · 77% of words in common

    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.

  • get_menuchangeddescriptionmeaning changed
    before

    The menu of a shop from find_shops: categories and products with prices in DKK (incl. VAT) and whether they are available. Optional query to only get matching products.

    after · 44% of words in common

    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.

Full history: list_changes · trend: quality JSON.

Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.

Trust 82 / 100

no-repository
provenance55
liveness97
freshness100
hygiene80

+dns-namespace +website +reachable +uptime-92% +updated-3d-ago -no-repository

Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.

Endpoints

remoteauthreachableuptime 30dp50protocollast ok
https://mcp.lenius.app/mcp streamable-httpnoneyes92%487 ms2025-11-252026-10-20

Tools (8)

available_timesread-onlyAvailable 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.
find_shopsread-onlyFind 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).
get_age_checkread-onlyStatus 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.
get_menuread-onlyThe 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.
order_statusread-onlyStatus 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).
place_orderPlace 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.
quote_orderread-onlyPrice 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.
start_age_checkOnly 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.

Schemas: list_tools.

Similar MCP servers

Official server.json
{
  "name": "app.lenius/takeaway",
  "title": "Lenius",
  "$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
  "remotes": [
    {
      "url": "https://mcp.lenius.app/mcp",
      "type": "streamable-http"
    }
  ],
  "version": "1.1.0",
  "websiteUrl": "https://www.lenius.dk",
  "description": "Order from local Danish shops: products, pickup times, card payment and AltID age verification."
}