mcp-alza
This server does not currently have a deployable release on Glama. Follow the repository's setup instructions to install and configure it for your MCP client, including any required credentials and local dependencies.
mcp-alza
A remote MCP connector for Alza.cz: the community alza-mcp-community server behind GitHub OAuth and a tool allowlist, served over Streamable HTTP so it works as a custom connector in claude.ai — including on the phone.
Unofficial; not affiliated with or endorsed by Alza.cz a.s.
What an agent can and cannot do
The line is: browse, fill the basket, watch prices, read orders. Nothing that spends money, changes the account, or publishes something under your name — those stay in the Alza app, where you do them by hand.
Allowed | Not available |
Catalog: search, product detail, reviews, comparison, alternatives, deals, categories, pickup points | Placing, paying or cancelling an order |
Basket: view, add, coupons, gifts, services, pickup point, checkout preview | Account changes: password, 2FA, e-mail, phone, addresses, account deletion |
Shopping lists | Reviews, discussion posts, feedback (published under your name) |
Price and stock watchdogs ("Hlídací pes") | Signing in to another account ( |
Order and claim history (read-only) |
|
PC builder | GDPR export, country / ISIC changes, chat |
The full list is src/alza_gateway/policy.py.
It is enforced twice:
The gateway filters
tools/listand refuses any call outside the list, and formutate_list/prepare_mutationalso anyactionoutside it.The Alza server gets the same lists as
ALZA_TOOLS_ALLOWandALZA_MUTATION_ACTIONS_ALLOW(added in the alza-mcp-community ≥ 0.6.0): other tools are removed, not just hidden, and other mutations never get the one-time confirmation token every guarded write needs. The one exception isauth_start/auth_exchange: the Alza server keeps them for the gateway's sign-in page, so for those two the gateway's filter is the only layer.
Either layer alone is enough; both together survive a bug in one of them.
The basket is still a write. Set the connector in claude.ai to ask before
running write tools (add_to_cart, mutate_list, watchdog_set, …).
Related MCP server: kupi-mcp
How it is put together
claude.ai ──HTTPS──▶ FastMCP gateway ──stdio──▶ alza-mcp-community (Node)
GitHub OAuth headless Chromium (catalog)
login allowlist curl_cffi sidecar (account API)
tool policy /data/tokens.jsonThe Alza server runs as one long-lived child process with one MCP session.
A proxy normally opens a fresh backend session per request, which here would
restart the Alza server each time and lose what it keeps in memory: the
signed-in user and the one-time tokens prepare_mutation issues for the next
call. The single session is shared by every client, which is fine for a
one-person connector.
GitHub is only the login screen: claude.ai needs OAuth for a remote connector,
and the app requests the user scope only. Your login is compared against
ALLOWED_GITHUB_LOGINS; an empty list refuses to start.
Setup
GitHub OAuth app (Settings → Developer settings → OAuth Apps), callback URL
<BASE_URL>/auth/callback.Configure and start the container (see below), with
/dataon a volume.Sign in to Alza once at
<BASE_URL>/alza/login?token=<SETUP_TOKEN>. Before you click the sign-in link, open the browser's developer tools (Chrome: Network, with Preserve log). Sign in to Alza; the page ends on analza://identity?code=…address the browser cannot open — that is expected. Copy it from the Console error or from the last redirect'sLocationheader, paste it into the form, and submit. Your password goes to Alza only. The running Alza server exchanges the code (over the same transport as its other account requests) and, withALZA_PERSIST_SIGNIN=1, which the gateway sets, writes the tokens to/data/tokens.jsonand keeps them refreshed.Add the connector in claude.ai: Settings → Connectors → Add custom connector →
<BASE_URL>/mcp.
Without step 3 the catalog works and the basket, watchdogs and orders do not;
account_status tells which.
Configuration
Variable | |
| Public URL, no trailing slash. |
| The GitHub OAuth app. |
| Comma-separated GitHub logins allowed in. |
| Stable key for the tokens issued to clients; without it every restart signs them out. |
| Guards |
| Storefront, default |
| Optional proxy for Alza traffic, if Cloudflare challenges the host's IP. |
| Default |
Give the container shm_size: 512m; Chromium crashes with Docker's default
64 MB /dev/shm.
Notes
Cloudflare. Alza's bot protection sometimes challenges the headless browser that reads the catalog (
search_productsthen reports a Cloudflare challenge, not an empty result). The account stack goes through the curl_cffi sidecar and is rarely affected. If it persists, setALZA_PROXY_URL.Upstream version: the image clones
ALZA_REPOatALZA_REF(build args), pinned to a release tag. Raise it deliberately after reading the upstream changelog.
Tests
pip install -e '.[test]'
pytest # policy only
ALZA_ENTRYPOINT=../alza-mcp-community/dist/index.js pytest # + end-to-end through the real serverLicence
MIT
This server cannot be deployed
Maintenance
Related MCP Connectors
Secure remote MCP for supported accounting workflows in authorized Money S3 companies.
Remote MCP for Living Stack offer discovery and buyer-authorized checkout preparation.
Remote MCP server for product discovery catalog and retrieving product details.
Search products from independent stores. Read-only remote MCP; no sign-in. Buy on merchant sites.
Related MCP Servers
- FlicenseNot gradedqualityFmaintenanceRemote MCP server (Streamable HTTP) that reads and parses the public catalog website atcmarket.cz (AT Computers) to enable product search, category-filtered search, supported filter listing, product detail lookup, and cross-product comparison — without login or state.-
- AlicenseAqualityBmaintenanceEnables searching public Kupi.cz discount offers, comparing store prices, and approximating shopping list optimization through a read-only MCP interface.3MIT
- AlicenseNot gradedqualityBmaintenanceEnables reading reports and accounting data, searching transactions, inspecting accounts, categories, payees, and rules, and optionally authorizing undoable bookkeeping changes through MCP.MIT
- AlicenseNot gradedqualityBmaintenanceEnables read-only catalogue discovery through standard MCP tools for searching, batch lookup, and retrieving product/variant details with prices and availability.MIT