@munchi_oy/license-mcp
v0.1.4
Published
MCP server for the Munchi license service: search venues, read licenses and (optionally) change them from Claude
Readme
@munchi_oy/license-mcp
Lets Claude (Desktop or Code) look up and manage Munchi licenses: find a venue, read its plan, prices, rates and features, and, if you enable it, suspend, resume or change it. Every change is written to the license service's audit log under your service key.
Tools
| Tool | Mode | Does |
|---|---|---|
| search_venues | read | Find venues by name, company/chain name or venue ID |
| get_venue_license | read | Stored terms (items, prices, revert dates, version) and the snapshot (plan, features, rates, usage, suspension) |
| get_catalog | read | Plans, add-ons and features with their codes |
| suspend_venue, resume_venue | write | Suspend (read-only or off) and resume |
| set_venue_items | write | Plan and add-ons |
| change_venue_terms | write | Negotiated prices, limits and revert dates, merged (only what you send changes). Card rates use set_venue_rate |
| set_venue_rate | write | A channel's card fee (kind: "fee", default) or Munchi's Viva share by hand (kind: "isv", POS and kiosk), as percent + cents (0.59 and 1); null goes back to the package fee or the calculated share. On POS and kiosk the ISV is the fee minus Viva's cost (0.43%, or 0.38% + 1c with cents). Needs rates:write. Until the push to the payment backends is live, change it there too |
What a tool may do is decided by your key: a read-only key can use every read tool, and the license server refuses a change the key isn't allowed to make.
Use it by URL (no install)
The license server serves the same tools at /mcp (Streamable HTTP). Your key goes in the header; tools act as you, with your key's scopes.
claude mcp add --transport http munchi-license https://one-license-api-prod-749434767588.europe-west3.run.app/mcp --header "Authorization: Bearer <your key>"Claude Desktop, through mcp-remote:
{
"mcpServers": {
"munchi-license": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://one-license-api-prod-749434767588.europe-west3.run.app/mcp", "--header", "Authorization:${AUTH_HEADER}"],
"env": { "AUTH_HEADER": "Bearer <your key>" }
}
}
}claude.ai custom connectors need OAuth, which /mcp doesn't support yet.
Claude Code
claude mcp add munchi-license --env LICENSE_URL=<service URL> --env LICENSE_KEY=<your key> -- npx -y @munchi_oy/license-mcpClaude Desktop
Settings → Developer → Edit Config, then add:
{
"mcpServers": {
"munchi-license": {
"command": "npx",
"args": ["-y", "@munchi_oy/license-mcp@latest"],
"env": {
"LICENSE_URL": "https://one-license-api-prod-749434767588.europe-west3.run.app",
"LICENSE_KEY": "<your key>"
}
}
}
}Use your own service key so the audit log shows who made a change. The key is stored in plain text in this config file, so give it only what it needs: read-only is entitlements:read + licenses:read; changes also need licenses:write (licenses:suspend to suspend, rates:write for card rates). Create one with POST /v1/admin/keys (see the one-license README).
