darioa: websites, booking sites, webshops and web apps

Fixed-price websites, booking sites, webshops and web apps: products, prices, work and contact.

Should I use this

Quality & Safety

A
Description quality
93%
Schema completeness
95%
Naming quality
95%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Findings (1)

  • LOWTool 'list_products' description lacks action verbin list_products

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~1,261Tokens (tool definitions)
~2.2 KBTypical response size
Moderate attention impact (0.99% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "webdev": {
      "url": "https://www.darioa.nl/mcp"
    }
  }
}

Remote endpoints

https://www.darioa.nl/mcpstreamable-http

What it can do

Tool inventory

Tools (4)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢list_products(locale)

The four products (website, booking site, webshop, web app) with the one-off price, the yearly price, what is included, when you pay, what every yearly price includes, the usage included per month for each product (visitors, emails, orders, database; not a limit), the overage terms (at cost, no markup, a monthly cap, a written yes from the customer above it), and the contact channels. Prices are in EUR excluding 21% Dutch VAT. No side effects.

Input Schema

{
  "type": "object",
  "properties": {
    "locale": {
      "type": "string",
      "enum": [
        "en",
        "nl"
      ],
      "description": "Language of the text in the result. Prices are the same in both. Default en."
    }
  },
  "additionalProperties": false
}
🟢list_work(locale, product, trade)

Real client sites built and hosted by darioa (a tyre shop webshop, two chauffeur booking sites, a bike rental, a restaurant, a till system with a scale): what was built, which product it is, and the live site and case study. Optionally filter by product or by trade. No side effects.

Input Schema

{
  "type": "object",
  "properties": {
    "locale": {
      "type": "string",
      "enum": [
        "en",
        "nl"
      ],
      "description": "Language of the text in the result. Prices are the same in both. Default en."
    },
    "product": {
      "type": "string",
      "enum": [
        "website",
        "booking",
        "webshop",
        "webapp"
      ],
      "description": "One of the four products: website, booking (booking site), webshop, webapp (web app)."
    },
    "trade": {
      "type": "string",
      "enum": [
        "taxi-chauffeur",
        "bandenservice-garage",
        "winkel-kassa-weegschaal",
        "restaurant",
        "fietsverhuur"
      ],
      "description": "Kind of business, for example taxi-chauffeur or restaurant."
    }
  },
  "additionalProperties": false
}
🟢get_quote(need, features, locale)

Maps what the user needs to one product and returns its prices (once, yearly, first year, excluding 21% VAT), what is included and when they pay. Describe the need in plain words (Dutch or English) and/or pass features. If the need is unclear it asks questions instead of guessing; if it is outside the four products (for example an app for the App Store) it returns no price. Prices come only from the public price list. An indication, not a binding offer. No side effects.

Input Schema

{
  "type": "object",
  "properties": {
    "need": {
      "type": "string",
      "minLength": 3,
      "maxLength": 1000,
      "description": "What the user needs, in their words. For example: a website for my taxi company where customers can book rides."
    },
    "features": {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "information_pages",
          "contact_form",
          "online_booking",
          "appointment_or_ride_requests",
          "online_payment_for_bookings",
          "admin_page_for_bookings",
          "sell_products_online",
          "product_catalog",
          "stock_management",
          "invoices",
          "customer_accounts",
          "shipping_labels",
          "staff_logins",
          "customer_portal",
          "point_of_sale",
          "internal_tool",
          "integrations"
        ]
      },
      "description": "Optional: what the site must do, from this list. The most capable feature decides the product."
    },
    "locale": {
      "type": "string",
      "enum": [
        "en",
        "nl"
      ],
      "description": "Language of the text in the result. Prices are the same in both. Default en."
    }
  },
  "required": [
    "need"
  ],
  "additionalProperties": false
}
🟡request_contact(name, email, message, product, businessName, ...)

Starts a real contact request for the user. Call ONLY after the user has seen exactly what will be sent and said yes (set userConfirmed true), and use their own name and email. Nothing reaches Dario yet: the user gets an email from darioa with a confirm button and only their click sends it (valid 24 hours); Dario then replies personally, usually within one working day. Repeating the identical call does not send a second email. Returns the WhatsApp link, phone and email for direct contact too. Limits: 5 requests per email address a day; throwaway email addresses are refused.

Input Schema

{
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "minLength": 2,
      "maxLength": 120,
      "description": "The user's name."
    },
    "email": {
      "type": "string",
      "format": "email",
      "description": "The user's own email address; the confirmation email goes here."
    },
    "message": {
      "type": "string",
      "minLength": 10,
      "maxLength": 1000,
      "description": "What the user needs, in a few sentences (include the product and any details from get_quote). Shown to Dario as written."
    },
    "product": {
      "type": "string",
      "enum": [
        "website",
        "booking",
        "webshop",
        "webapp"
      ],
      "description": "One of the four products: website, booking (booking site), webshop, webapp (web app)."
    },
    "businessName": {
      "type": "string",
      "maxLength": 180,
      "description": "Optional: the user's business name."
    },
    "websiteUrl": {
      "type": "string",
      "maxLength": 200,
      "description": "Optional: the user's current website."
    },
    "phone": {
      "type": "string",
      "maxLength": 40,
      "description": "Optional: the user's phone number with country code."
    },
    "locale": {
      "type": "string",
      "enum": [
        "en",
        "nl"
      ],
      "description": "Language Dario and the confirmation email should use. Default en."
    },
    "userConfirmed": {
      "type": "boolean",
      "description": "true only after the user has seen the data above and agreed that Dario may contact them."
    }
  },
  "required": [
    "name",
    "email",
    "message",
    "userConfirmed"
  ],
  "additionalProperties": false
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded4 tools