We and selected third parties use cookies or similar technologies for technical purposes and, with your consent, to analyze how the site is used.

You can freely give, refuse or withdraw your consent at any time.

Kapruka

MCP server by Kapruka

Search Kapruka.com products, check delivery to Sri Lankan cities, place guest-checkout orders and track them.

No sign-in (No account or key needed)Streamable HTTP

Connect to Kapruka

No sign-in needed. Connect with Kapruka’s own URL:

https://mcp.kapruka.com/mcp

Paste it into any client that supports remote MCP servers. Your client talks to Kapruka directly, not through mcp.tc.

Share this server

Opens this page, with the URL and setup steps.

mcp.tc/i/kapruka

About

Connects to Kapruka.com, a Sri Lankan e-commerce platform. You can search the catalog, browse categories, read product details, check delivery availability and fees by city and date, create guest-checkout orders that return a payment link, and track existing orders.

Runs as a hosted streamable HTTP endpoint at mcp.kapruka.com. The free public tier needs no sign-in or API key and is limited to 60 requests per minute per client IP. Results may be cached for up to 30 minutes.

What you can do

  • Search products by keyword with category facets
  • Fetch product details, prices and variants
  • Check delivery availability, date and fee per city
  • Create guest-checkout orders with a pay link
  • Track orders by order number
  • Render product options as a shareable image card
  • List top-level categories and delivery cities

Tools 10

  • kapruka_list_categoriesRead-only

    List top-level navigation categories with Kapruka.com browse URLs.

  • kapruka_get_productRead-only

    Get full details for a product: price, stock, variants, images and delivery scope.

  • kapruka_search_productsRead-only

    Search products by keyword with category filter and paginated results.

  • kapruka_create_orderWrites

    Create a guest-checkout order and return a click-to-pay link.

  • kapruka_track_orderRead-only

    Look up order status and delivery progress by order number.

  • kapruka_render_options_cardRead-only

    Render 1-4 products as one shareable JPEG menu card with numbered refs.

  • kapruka_list_delivery_citiesRead-only

    List or search Sri Lankan cities Kapruka delivers to.

  • kapruka_check_deliveryRead-only

    Check delivery availability for a city and date, plus the delivery fee.

  • kapruka_gift_countriesRead-only

    Kapruka International Gifts — Countries

  • kapruka_gift_country_productsRead-only

    Kapruka International Gifts — Store

Read from the live server on 26 Oct 2026. Read-only, Writes and Can delete are hints the server declares; your client decides whether to ask before running a tool.

Example prompts

  • Find birthday cakes on Kapruka under 5000 LKR

  • Can this product be delivered to Kandy next Friday?

  • Create an order for these two gifts to Colombo and give me the pay link

  • Track my Kapruka order number 123456

Set up

Every client connects to mcp.kapruka.com. Pick yours; the page remembers your choice.

Claude Code

  1. Run this in a terminal, in your project folder:
claude mcp add --transport http kapruka https://mcp.kapruka.com/mcp
  1. Start Claude Code and type /mcp. kapruka should show as connected.

Add --scope user to make it available in every project, not just this one.

Claude Desktop

  1. Open Customize → Connectors, click + Add, then Add custom connector.
  2. Name it Kapruka and paste this URL:
https://mcp.kapruka.com/mcp
  1. Click Add. Its tools appear in the chat’s tools menu.

Claude Desktop’s JSON config file only starts local servers. Remote servers go through Connectors, and connectors you add on claude.ai show up here too.

claude.ai

  1. Open the connector form on claude.ai. This button fills in the name and URL for you:
  1. Check that the URL reads https://mcp.kapruka.com/mcp and click Add.
  2. Turn it on in a chat from the tools menu.

Free plans allow one custom connector. On Team and Enterprise plans an owner adds it under Organization settings → Connectors.

ChatGPT

  1. On chatgpt.com, open Settings → Security and login and turn on Developer mode.
  2. Go to chatgpt.com/plugins and click + to create an app for a remote MCP server.
  3. Paste https://mcp.kapruka.com/mcp as the server URL and choose No authentication.

Developer mode is available on the web for Plus, Pro, Business, Enterprise and Education accounts.

Cursor

Or add it by hand to ~/.cursor/mcp.json (all projects) or .cursor/mcp.json (this project):

mcp.json
{
  "mcpServers": {
    "kapruka": {
      "url": "https://mcp.kapruka.com/mcp"
    }
  }
}

VS Code

Or from a terminal:

code --add-mcp '{"name":"kapruka","type":"http","url":"https://mcp.kapruka.com/mcp"}'

Or commit it to the repo in .vscode/mcp.json:

.vscode/mcp.json
{
  "servers": {
    "kapruka": {
      "type": "http",
      "url": "https://mcp.kapruka.com/mcp"
    }
  }
}

Devin Desktop

  1. Add it to ~/.config/devin/mcp_config.json (macOS and Linux) or %APPDATA%\devin\mcp_config.json (Windows):
mcp_config.json
{
  "mcpServers": {
    "kapruka": {
      "serverUrl": "https://mcp.kapruka.com/mcp"
    }
  }
}
  1. Refresh the MCP server list in Cascade.

Devin Desktop is the new name for Windsurf. It reads serverUrl (or url) for remote servers.

Codex

codex mcp add kapruka --url https://mcp.kapruka.com/mcp

Or edit ~/.codex/config.toml directly:

config.toml
[mcp_servers.kapruka]
url = "https://mcp.kapruka.com/mcp"

Gemini CLI

gemini mcp add --transport http kapruka https://mcp.kapruka.com/mcp

This adds it to the current project. Add -s user to use it everywhere.

Any client

Most clients accept this shape. Some name the URL field differently: serverUrl in Devin Desktop, httpUrl in Gemini CLI’s settings file.

{
  "mcpServers": {
    "kapruka": {
      "type": "http",
      "url": "https://mcp.kapruka.com/mcp"
    }
  }
}

Zed puts servers under context_servers in its settings. Cline needs "type": "streamableHttp", or it assumes SSE.

Client only starts local servers? Bridge it with npx -y mcp-remote https://mcp.kapruka.com/mcp.

Embed

Show Kapruka in a README or on your site. Each embed links to this page, uses the server’s own URL, and sets no cookies. How embeds work

The card, the iframe and the JSON are in English. Add ?lang=it, fr, de or es to their address for another language.

README badge

Badge preview, lightBadge preview, dark
Markdown
[![Kapruka on mcp.tc](https://mcp.tc/i/kapruka/badge.svg)](https://mcp.tc/i/kapruka)
HTML
<a href="https://mcp.tc/i/kapruka"><img src="https://mcp.tc/i/kapruka/badge.svg" alt="Kapruka on mcp.tc" height="20"></a>

It follows the reader’s light or dark mode. Add ?theme=light or ?theme=dark to fix it, or ?style=compact to show the mark without the word.

Website card

HTML
<script src="https://mcp.tc/w/kapruka.js" async></script>

The card appears where the tag is. Add data-theme="dark" or data-size="compact" to the tag to change it. The file holds everything it needs, so it makes no other requests and sets no cookies.

iframe

HTML
<iframe src="https://mcp.tc/embed/kapruka" title="Kapruka on mcp.tc" width="420" height="200" loading="lazy" allow="clipboard-write" style="border:0;border-radius:8px;max-width:100%"></iframe>

Use it on pages that don’t allow scripts. Add ?theme=light or ?theme=dark to the address to fix the colors.

JSON

The listing as data for your own pages and tools: name, tagline, the server’s own URL, tools and the “Add to” links. Any site can read it (CORS is open).

https://mcp.tc/i/kapruka.json

What each field means

AI prompt

Paste this into an AI coding assistant, such as Claude Code or Cursor, and it adds the Kapruka card to your site.

Markdown
Add the mcp.tc card for Kapruka, an MCP server, to my website. It is one static script: no build step, no package to install, no cookies.

Put this tag where the card should appear. The card renders right before it:

```html
<script src="https://mcp.tc/w/kapruka.js" async></script>
```

To show the card somewhere else, put this placeholder there and load the same script once, for example before `</body>`. Keep the link inside: visitors without JavaScript see it.

```html
<div data-mcptc="kapruka"><a href="https://mcp.tc/i/kapruka">Kapruka on mcp.tc</a></div>
```

Options:
- `data-theme="light"` or `"dark"` on the tag or the placeholder fixes the colors. Without it, the card follows the visitor’s light or dark mode.
- `data-size="compact"` gives a smaller card without the tagline.
- The CSS variable `--mcptc-max-width` on the placeholder or a parent sets the width (default `520px`).
- `?lang=` on the script URL sets the card’s language: `en`, `it`, `fr`, `de` or `es`.

If the site has a Content Security Policy, allow `script-src https://mcp.tc` and `img-src data:` (the icon is inline).

For a README or other Markdown docs, use the badge instead:

```markdown
[![Kapruka on mcp.tc](https://mcp.tc/i/kapruka/badge.svg)](https://mcp.tc/i/kapruka)
```

Reference: https://mcp.tc/embed

Change history

We read this server’s tool list every 3 hours and record what changes. Last read 26 Oct 2026, 14:39 UTC.

Follow Kapruka and we’ll email you when something changes.

  1. , Automatic check

    2 tools added and 4 tools changed. Server instructions changed.

    New server instructions

    Details, 20 Oct 2026, 07:39 UTC

    Added 2

    • kapruka_gift_countriesRead-only

      List the countries Kapruka delivers gifts IN (international gift stores). Use when the RECIPIENT is outside Sri Lanka — e.g. "send flowers to my sister in Dubai", "a cake for my son in Melbourne". These gifts are delivered by Kapruka's partner in that country, not shipped from Sri Lanka. They are NOT in kapruka_search_products; list a store with kapruka_gift_country_products. For each country: how many gifts are in stock now (0 = nothing can be ordered there right now — say so), the delivery fee (one fee per order, whatever the number of items), and for Australia and the UAE the zones they deliver to — delivery is ONLY to those zones, each with its own fee. The earliest delivery date is 3 days from today (Sri Lanka date). Args: params: currency ('LKR' default or 'USD'), response_format. Returns: str. JSON: {"currency", "earliest_date", "countries": [{"country", "products_in_stock", "delivery_fee": {"amount","currency"}, "zone_required": bool, "zones": [{"name","delivery_fee"}], "earli…

    • kapruka_gift_country_productsRead-only

      List EVERY gift in stock in one country's store (international gifts), grouped by type. The stores are small (tens of products), so this returns the whole store: read it and choose for the customer — there is no keyword search for these products. Prices are exactly what checkout charges for the item (no website discounts apply to these stores); delivery is extra — one fee per order (zone fee in Australia / the UAE), shown at the top. Use the `id` with kapruka_get_product for full detail and with kapruka_create_order (delivery.type "international_gift"). Args: params: country, type (optional filter), currency ('LKR' default or 'USD'), response_format. Returns: str. JSON: {"country", "currency", "count", "delivery": {country row from kapruka_gift_countries}, "products": [{"id", "name", "type", "summary", "price": {"amount","currency"}, "image_url", "url"}]}

    Changed 4

    • kapruka_check_deliverydescription and input schema

      The text shown here is the same before and after: the change is past the first 1,000 characters or in characters that don’t show.

    • kapruka_create_orderinput schema
    • kapruka_get_productdescription
      Before

      Fetch full details for a single Kapruka product by its product ID. Returns name, description, price (with optional currency conversion), stock status, images, variants, shipping info, delivery scope, and a direct product URL. `economy_delivery` ("optional" | "only" | "only_5to7" | null) says whether the item can go by the cheaper economy courier; kapruka_check_delivery with the cart says whether an order is offered it. Discounts: `price` is what checkout charges, with any website discount already applied; `compare_at_price` is the pre-discount price when one applies (null otherwise). Each variant carries its own pair. Quote `price`. Delivery scope: most gifts ship island-wide, but restaurant food, hotel cakes and liquor only reach a limited city set (typically the Colombo area). The `delivery` object is the authority — search results do NOT carry it. When `delivery.island_wide` is false, tell the customer up front that the item is delivered only to selected cities, and confirm their c…

      After

      Fetch full details for a single Kapruka product by its product ID. Returns name, description, price (with optional currency conversion), stock status, images, variants, shipping info, delivery scope, and a direct product URL. `economy_delivery` ("optional" | "only" | "only_5to7" | null) says whether the item can go by the cheaper economy courier; kapruka_check_delivery with the cart says whether an order is offered it. International gift store products carry `international_gift` {"country", "orderable", "store_url"}: they are delivered IN that country by Kapruka's partner (see kapruka_gift_countries), not in Sri Lanka. Discounts: `price` is what checkout charges, with any website discount already applied; `compare_at_price` is the pre-discount price when one applies (null otherwise). Each variant carries its own pair. Quote `price`. Delivery scope: most gifts ship island-wide, but restaurant food, hotel cakes and liquor only reach a limited city set (typically the Colombo area). The `…

    • kapruka_search_productsdescription

      The text shown here is the same before and after: the change is past the first 1,000 characters or in characters that don’t show.

    Server instructions

    Before

    You are connected to the Kapruka MCP server for Kapruka.com — Sri Lanka's largest e-commerce platform. Use the tools to search products, browse categories, look up product details, quote delivery, create guest-checkout orders (pay link) and track orders. This is a free public tier; treat results as cached for up to 30 minutes. DELIVERY-CITY LIMITS — follow these rules: 1. Most gifts ship island-wide, but restaurant food, hotel cakes and liquor are delivered only to selected cities (typically the Colombo area). Never promise delivery of a product to a city without checking: call kapruka_check_delivery with BOTH city and product_id (or read delivery.island_wide from kapruka_get_product). Say yes only if available is true. 2. Surface the limit proactively: when a product's delivery.island_wide is false, tell the customer it is delivered only to selected cities before they pick a city. If deliverable_city_count is larger than the list you were given, say 'and more' — the list is truncated. 3. On item_deliverable=false / available=false, offer the returned deliverable_cities (nearest first) or an island-wide alternative. Do not retry kapruka_create_order with the same city. 4. An order ships as ONE shipment, so the whole cart must be deliverable to the city (intersection of every item's cities). If kapruka_create_order returns city_not_deliverable_for_item, nothing was created: tell the customer which item blocks it and offer to change the city or remove/replace that item. Never pretend a partial order was placed. 5. Search results carry no delivery info — resolve it per item via kapruka_get_product or kapruka_check_delivery. 6. Send canonical city spellings from kapruka_list_delivery_cities / deliverable_cities.

    After

    You are connected to the Kapruka MCP server for Kapruka.com — Sri Lanka's largest e-commerce platform. Use the tools to search products, browse categories, look up product details, quote delivery, create guest-checkout orders (pay link) and track orders. This is a free public tier; treat results as cached for up to 30 minutes. DELIVERY-CITY LIMITS — follow these rules: 1. Most gifts ship island-wide, but restaurant food, hotel cakes and liquor are delivered only to selected cities (typically the Colombo area). Never promise delivery of a product to a city without checking: call kapruka_check_delivery with BOTH city and product_id (or read delivery.island_wide from kapruka_get_product). Say yes only if available is true. 2. Surface the limit proactively: when a product's delivery.island_wide is false, tell the customer it is delivered only to selected cities before they pick a city. If deliverable_city_count is larger than the list you were given, say 'and more' — the list is truncated. 3. On item_deliverable=false / available=false, offer the returned deliverable_cities (nearest first) or an island-wide alternative. Do not retry kapruka_create_order with the same city. 4. An order ships as ONE shipment, so the whole cart must be deliverable to the city (intersection of every item's cities). If kapruka_create_order returns city_not_deliverable_for_item, nothing was created: tell the customer which item blocks it and offer to change the city or remove/replace that item. Never pretend a partial order was placed. 5. Search results carry no delivery info — resolve it per item via kapruka_get_product or kapruka_check_delivery. 6. Send canonical city spellings from kapruka_list_delivery_cities / deliverable_cities. INTERNATIONAL GIFTS — when the RECIPIENT is outside Sri Lanka (USA, UK, Canada, Australia, UAE, ...): call kapruka_gift_countries, then kapruka_gift_country_products(country) and choose from the whole store (these products are not in kapruka_search_products).…

  2. , Automatic check

    3 tools changed.

    Details, 12 Oct 2026, 13:33 UTC

    Changed 3

    • kapruka_check_deliverydescription and input schema

      The text shown here is the same before and after: the change is past the first 1,000 characters or in characters that don’t show.

    • kapruka_create_orderdescription and input schema

      The text shown here is the same before and after: the change is past the first 1,000 characters or in characters that don’t show.

    • kapruka_get_productdescription
      Before

      Fetch full details for a single Kapruka product by its product ID. Returns name, description, price (with optional currency conversion), stock status, images, variants, shipping info, delivery scope, and a direct product URL. Discounts: `price` is what checkout charges, with any website discount already applied; `compare_at_price` is the pre-discount price when one applies (null otherwise). Each variant carries its own pair. Quote `price`. Delivery scope: most gifts ship island-wide, but restaurant food, hotel cakes and liquor only reach a limited city set (typically the Colombo area). The `delivery` object is the authority — search results do NOT carry it. When `delivery.island_wide` is false, tell the customer up front that the item is delivered only to selected cities, and confirm their city with kapruka_check_delivery(city, product_id) before promising anything. If `deliverable_city_count` exceeds the returned list, the list is truncated — say "and more", don't treat it as complet…

      After

      Fetch full details for a single Kapruka product by its product ID. Returns name, description, price (with optional currency conversion), stock status, images, variants, shipping info, delivery scope, and a direct product URL. `economy_delivery` ("optional" | "only" | "only_5to7" | null) says whether the item can go by the cheaper economy courier; kapruka_check_delivery with the cart says whether an order is offered it. Discounts: `price` is what checkout charges, with any website discount already applied; `compare_at_price` is the pre-discount price when one applies (null otherwise). Each variant carries its own pair. Quote `price`. Delivery scope: most gifts ship island-wide, but restaurant food, hotel cakes and liquor only reach a limited city set (typically the Colombo area). The `delivery` object is the authority — search results do NOT carry it. When `delivery.island_wide` is false, tell the customer up front that the item is delivered only to selected cities, and confirm their c…

  3. , Automatic check

    Tracking started: 8 tools.

FAQ

Can I paste mcp.tc/i/kapruka into my MCP client?

No. mcp.tc links are pages, not server addresses. Connect with https://mcp.kapruka.com/mcp, so your client talks to Kapruka directly. The quick link is for sharing: it opens this page, with setup steps for every client.

Does Kapruka need an API key or a sign-in?

No. Kapruka doesn’t ask for an account or key.

Is Kapruka a remote or a local server?

Remote. Kapruka hosts it at https://mcp.kapruka.com/mcp, and it speaks Streamable HTTP. There’s nothing to install.

What can Kapruka do?

It has 10 tools, including kapruka_list_categories, kapruka_get_product and kapruka_search_products. You can search products by keyword with category facets, fetch product details, prices and variants and check delivery availability, date and fee per city.

Which clients can use it?

Any client that supports remote MCP servers: Claude Code, Claude Desktop, claude.ai, ChatGPT in developer mode, Cursor, VS Code, Devin Desktop, Codex, Gemini CLI, Zed and others. The setup steps cover each one.

Does mcp.tc track changes to Kapruka?

Yes. Kapruka’s History tab shows each change we find to its tools, down to descriptions and parameters, plus new versions and edits by its owner. Follow the listing to get an email when it changes.

Who wrote this page?

mcp.tc’s robot read Kapruka’s own metadata (its MCP handshake, tool list and public pages), and an AI model drafted the text from it. A person reviews anything the checks can’t confirm. The text can still be wrong, so if you spot a mistake, use Report this listing on this page.

mcp.tc isn’t affiliated with Kapruka. This page was built from Kapruka’s public metadata, last checked on 26 Oct 2026, and an AI model wrote the description, so it can be wrong. Names and marks belong to their owners. Something off? Report this listing.