About walletap
A server for issuing and managing Apple Wallet and Google Wallet passes through Walletap. It gives AI assistants access to pass, template, location, and team-management operations.
Key features
- 01Create and manage wallet passes
- 02Search, list, and export passes as CSV
- 03Manage templates and locations
- 04Send pass and template notifications
- 05Manage team members and permissions
- 06Translate pass text
Use cases
- 01Issue loyalty passes and update stamps or balances
- 02Find passes by email or phone
- 03Export passes for marketing reports
- 04Send updates to pass holders
MCP support
Exposes Walletap operations as MCP tools, including pass issuance and management, template and location administration, notifications, and team accounts. Supports stdio use and an HTTP transport mode.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
npx -y @walletap/mcp-serverWALLETAP_API_KEYSecretYour Walletap API key from app.walletap.ioLocal servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.
Tools
23Saved tool list · updated 3w ago
| Parameter | Type | Required | Description |
|---|---|---|---|
| limit | number | No | Max results to return (default: 15) |
| status | enum | No | Filter by installation status (default: all)all | installed | not_installed |
| endBefore | string | No | Cursor for previous page |
| startAfter | string | No | Cursor for next page — use value from previous response |
| templateId | string | Yes | Template ID to list passes for |
Details
From the project README@walletap/mcp-server
Issue and manage Apple Wallet & Google Wallet passes from any AI assistant.
Quick Start
npx @walletap/mcp-server
Or install globally:
npm install -g @walletap/mcp-server
walletap-mcp
Authentication
Set your Walletap API key as an environment variable:
export WALLETAP_API_KEY=wt_live_xxxxxxxxxxxxxxxxxxxx
You can find your API key in the Walletap dashboard under Settings.
Claude Desktop
Add to ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"walletap": {
"command": "npx",
"args": ["-y", "@walletap/mcp-server"],
"env": {
"WALLETAP_API_KEY": "wt_live_xxxxxxxxxxxxxxxxxxxx"
}
}
}
}
Cursor / Windsurf
Add to .cursor/mcp.json or .windsurf/mcp.json:
{
"mcpServers": {
"walletap": {
"command": "npx",
"args": ["-y", "@walletap/mcp-server"],
"env": {
"WALLETAP_API_KEY": "wt_live_xxxxxxxxxxxxxxxxxxxx"
}
}
}
}
HTTP Remote Mode
For self-hosted deployments, n8n, Make, or Zapier AI:
walletap-mcp --transport http
This starts an HTTP server (default port 3001) exposing:
POST /mcp— JSON-RPC endpointGET /mcp/sse— Server-Sent Events for streamingGET /health— Health check
Docker example:
FROM node:22-alpine
RUN npm install -g @walletap/mcp-server
ENV WALLETAP_API_KEY=wt_live_xxxxxxxxxxxxxxxxxxxx
ENV MCP_PORT=3001
EXPOSE 3001
CMD ["walletap-mcp", "--transport", "http"]
Tools Reference
| Tool | What it does | Key inputs |
|---|---|---|
list_passes | List passes for a template with pagination | templateId, status, limit |
search_passes | Search passes by email or phone | templateId, searchQuery |
export_passes | Export passes as CSV | templateId, status |
get_pass | Get a single pass with wallet URLs | id or externalId+templateId |
create_pass | Create one or more wallet passes | passes[], sendToEmail, sendToPhone |
update_pass | Update pass fields, stamps, or balance | id, templateFields, stampOperation, balanceOperation |
notify_pass | Send notification to one pass holder | passId, title, content |
list_templates | List all pass templates | limit, startAfter |
create_template | Create a new template | name, type |
update_template | Update template config/design | templateId, data |
delete_template | Delete a template | templateId |
send_template_notification | Notify all pass holders in a template | templateId, title, content |
create_certificate | Create Apple Wallet certificate | templateId |
list_locations | List all business locations | — |
create_location | Create a new location | name, latitude, longitude |
update_location | Update location details | id, name, address |
delete_location | Delete a location | id |
create_reader | Create a VTAP NFC reader | name, templateId, phone |
list_sub_accounts | List team members | — |
create_sub_account | Create a team member | email, displayName, password |
update_sub_account | Update team member permissions | userId, permissions, templateIds |
delete_sub_account | Remove a team member | userId |
translate_pass_text | Translate pass text to multiple languages | texts, sourceLanguage, targetLanguages |
Example Prompts
Here are things you can say to your AI assistant with Walletap connected:
- "Create a loyalty card template called 'Coffee Rewards' and issue a pass to [email protected]"
- "Show me all passes for my loyalty template that haven't been installed yet"
- "Add 3 stamps to the pass with external ID 'CUST-42' in my stamp card template"
- "Send a notification to all pass holders: 'Double points this weekend! Visit any location to earn 2x.'"
- "Export all my loyalty passes as CSV for the marketing team"
- "Translate our pass labels into Spanish, French, and German"
API Base URL
By default connects to https://api.walletap.io. Override with:
export WALLETAP_API_BASE_URL=https://your-custom-instance.example.com
License
MIT
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.