Skip to content
mekedronPublic

About

Free & Open Source Wolt MCP server (Model Context Protocol) for Claude Desktop, Claude Code, Cursor, Continue, and Zed. Source lives in mekedron/wolt-cli.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Latest commit

Β 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
Β 
Β 

Repository files navigation

wolt-mcp

wolt-mcp β€” Wolt MCP server for Claude Desktop, Claude Code, and Cursor

An unofficial Model Context Protocol (MCP) server for Wolt.
Plugs into Claude Desktop, Claude Code, Cursor, Continue, Zed, and any other MCP host.


πŸ“¦ The code lives in mekedron/wolt-cli

wolt-mcp is built and released as a second binary inside the wolt-cli repository, alongside the wolt command-line tool. They share 100% of the gateway, auth, and service code.

For source, install, issues, releases, and full docs, go to β†’ github.com/mekedron/wolt-cli

This repository exists so that people searching for "wolt mcp", "wolt mcp server", "wolt model context protocol", or "wolt claude desktop" land in the right place.


What is wolt-mcp?

wolt-mcp is a Model Context Protocol server that gives large language models a typed, schema-described tool surface for Wolt food delivery. With wolt-mcp configured, an AI client can:

  • browse the Wolt discovery feed and rank top venues near an address
  • search restaurants and grocery stores by name, category, rating, or fee
  • read a venue's menu, opening hours, item details, and option matrices
  • view your order history, saved addresses, and payment methods
  • manage your cart (add, remove, clear) and preview checkout totals
  • favorite or unfavorite venues

…all without the model having to fabricate flags or shell out to a CLI.

It is not affiliated with Wolt. Use it at your own responsibility.

Supported MCP clients

wolt-mcp speaks stdio MCP, so it works with every modern MCP host:

  • Claude Desktop (macOS, Windows)
  • Claude Code (Anthropic's official CLI)
  • Cursor
  • Continue (VS Code, JetBrains)
  • Zed
  • any other client that supports the mcpServers config shape

Quick start

1. Install

wolt-mcp ships in the same Homebrew bottle as the wolt CLI:

brew install mekedron/tap/wolt-cli   # installs both `wolt` and `wolt-mcp`

From source:

go install github.com/mekedron/wolt-cli/cmd/wolt-mcp@latest

Verify:

wolt-mcp --version

2. Wire into your MCP client

The same one-line config works in every client that speaks MCP over stdio:

{
  "mcpServers": {
    "wolt": { "command": "wolt-mcp" }
  }
}

Per-client config paths:

Client Config file
Claude Desktop (macOS) ~/Library/Application Support/Claude/claude_desktop_config.json
Claude Desktop (Windows) %APPDATA%\Claude\claude_desktop_config.json
Claude Code .mcp.json (project) or ~/.claude.json (global)
Cursor ~/.cursor/mcp.json
Continue, Zed, other stdio MCP hosts same mcpServers shape β€” see the client's docs

If your desktop client doesn't inherit your shell $PATH, use an absolute path (which wolt-mcp β†’ e.g. /opt/homebrew/bin/wolt-mcp).

Full per-client setup, locale pinning, env vars, and troubleshooting: wolt-cli/docs/mcp.md.

3. Authenticate once

wolt-mcp shares its session with the wolt CLI. Log in once:

wolt login

The MCP server reads and rotates the same tokens from ~/.wolt/.wolt-config.json automatically. Auth-gated tools (cart, favorites, account, checkout preview) will return a clear "Run wolt login" message until you do.

Tool catalog

24 tools in v1. βœ“ = read-only, ⚠ = mutates user state.

Discovery (no auth required)

Tool Purpose
wolt_feed βœ“ Discovery home page grouped by section
wolt_top βœ“ Top N venues for a location, with sort/filter
wolt_search_venues βœ“ Search venues with category, open-now, Wolt+, rating, fee filters
wolt_venue_categories βœ“ Available category slugs at a location
wolt_resolve_address βœ“ Geocode a free-form address to lat/lon

Venue (no auth required)

Tool Purpose
wolt_venue_detail βœ“ Address, rating, delivery methods, opening windows, tags
wolt_venue_menu βœ“ Browse a venue's menu (paginated, filterable)
wolt_venue_hours βœ“ Opening windows in the venue's timezone
wolt_venue_item βœ“ Full payload for one item (price, options, sold-out)
wolt_venue_search_items βœ“ Free-text item search within a venue

Account (auth required)

Tool Purpose
wolt_account_status βœ“ Current user profile
wolt_account_orders βœ“ Paginated order history
wolt_account_order βœ“ Full detail for one order
wolt_account_addresses βœ“ Saved delivery addresses
wolt_account_payments βœ“ Saved payment methods

Favorites (auth required)

Tool Purpose
wolt_favorites_list βœ“ Favorited venues
wolt_favorites_add ⚠ Add a venue to favorites
wolt_favorites_remove ⚠ Remove a venue from favorites

Cart + checkout (auth required)

Tool Purpose
wolt_cart_show βœ“ All baskets with item lines and totals
wolt_cart_count βœ“ Total items across all baskets
wolt_cart_add ⚠ Add an item to a basket
wolt_cart_remove ⚠ Remove an item line from a basket
wolt_cart_clear ⚠ Delete every basket the user has
wolt_checkout_preview βœ“ Preview totals without placing an order

No tool places an actual order. Final checkout still happens in the official Wolt app or web UI. wolt_checkout_preview is a pricing preview only.

Full input/output schemas and per-tool examples live in wolt-cli/docs/mcp.md.

Why use an MCP server instead of "just call the CLI"?

  • The model gets JSON-Schema typed inputs for every tool, so it stops fabricating flag combinations.
  • Errors are returned in-band (e.g. "Wolt session expired or missing. Run 'wolt login'…") β€” the model self-corrects instead of failing silently.
  • One stdio process per host session, instead of one subprocess per CLI call.
  • Pricing previews, cart manipulation, and order history are all addressable as typed tools, so an agent can reason about "what's in my basket right now?" natively.

FAQ

Is wolt-mcp official?

No. This is an unofficial community project. It is not endorsed by, sponsored by, or affiliated with Wolt Enterprises Oy.

Which countries does it work in?

Any market Wolt operates in. The default locale is en-FI (English copy, Finland market). Set --locale fi-FI, --locale et-EE, --locale de-DE, --locale sv-FI, etc., or WOLT_LOCALE=<bcp47> for other markets.

Does wolt-mcp place real orders?

No. The MCP server can build a cart and preview checkout totals, but final order placement still happens in the official Wolt app or web UI. This is a deliberate guardrail β€” you should never let an LLM commit money to a payment processor unsupervised.

How does authentication work?

wolt-mcp shares ~/.wolt/.wolt-config.json with the wolt CLI. Run wolt login once and both binaries inherit the same session. Refresh-token rotation is handled inside the MCP server β€” on a 401, the server refreshes and retries the original call once.

What transport does it use?

Stdio MCP only in v1, which is what every modern desktop MCP host (Claude Desktop, Claude Code, Cursor, Continue, Zed) speaks.

What MCP SDK is it built on?

The official Anthropic Go SDK: github.com/modelcontextprotocol/go-sdk.

Where do I file bugs or feature requests?

In the main repository: github.com/mekedron/wolt-cli/issues.


Everything else lives in the main repo

That includes:

License

MIT β€” see LICENSE in wolt-cli.

Copyright

Copyright (c) 2026 Nikita Rabykin. Not affiliated with Wolt.

About

Free & Open Source Wolt MCP server (Model Context Protocol) for Claude Desktop, Claude Code, Cursor, Continue, and Zed. Source lives in mekedron/wolt-cli.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors