@yawlabs/lemonsqueezy-mcp 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +168 -0
- package/dist/index.js +22791 -0
- package/package.json +51 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Yaw Labs
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,168 @@
|
|
|
1
|
+
# @yawlabs/lemonsqueezy-mcp
|
|
2
|
+
|
|
3
|
+
MCP server for the [LemonSqueezy](https://lemonsqueezy.com) API. Manage your store, products, customers, subscriptions, discounts, license keys, and more from any MCP-compatible AI assistant.
|
|
4
|
+
|
|
5
|
+
## Quick start
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
npx @yawlabs/lemonsqueezy-mcp
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
## Setup
|
|
12
|
+
|
|
13
|
+
Set your LemonSqueezy API key as an environment variable:
|
|
14
|
+
|
|
15
|
+
```bash
|
|
16
|
+
export LEMONSQUEEZY_API_KEY="your-api-key"
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
Get your API key from your [LemonSqueezy dashboard](https://app.lemonsqueezy.com/settings/api).
|
|
20
|
+
|
|
21
|
+
### Claude Code
|
|
22
|
+
|
|
23
|
+
Add to your MCP config:
|
|
24
|
+
|
|
25
|
+
```json
|
|
26
|
+
{
|
|
27
|
+
"mcpServers": {
|
|
28
|
+
"lemonsqueezy": {
|
|
29
|
+
"command": "npx",
|
|
30
|
+
"args": ["-y", "@yawlabs/lemonsqueezy-mcp"],
|
|
31
|
+
"env": {
|
|
32
|
+
"LEMONSQUEEZY_API_KEY": "your-api-key"
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
### Claude Desktop
|
|
40
|
+
|
|
41
|
+
Add to `claude_desktop_config.json`:
|
|
42
|
+
|
|
43
|
+
```json
|
|
44
|
+
{
|
|
45
|
+
"mcpServers": {
|
|
46
|
+
"lemonsqueezy": {
|
|
47
|
+
"command": "npx",
|
|
48
|
+
"args": ["-y", "@yawlabs/lemonsqueezy-mcp"],
|
|
49
|
+
"env": {
|
|
50
|
+
"LEMONSQUEEZY_API_KEY": "your-api-key"
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
## Tools (59)
|
|
58
|
+
|
|
59
|
+
### Users
|
|
60
|
+
- `ls_get_user` — Get the authenticated user
|
|
61
|
+
|
|
62
|
+
### Stores
|
|
63
|
+
- `ls_get_store` — Get a store by ID
|
|
64
|
+
- `ls_list_stores` — List all stores
|
|
65
|
+
|
|
66
|
+
### Customers
|
|
67
|
+
- `ls_get_customer` — Get a customer by ID
|
|
68
|
+
- `ls_list_customers` — List customers (filter by store, email)
|
|
69
|
+
- `ls_create_customer` — Create a customer
|
|
70
|
+
- `ls_update_customer` — Update a customer
|
|
71
|
+
- `ls_archive_customer` — Archive a customer
|
|
72
|
+
|
|
73
|
+
### Products
|
|
74
|
+
- `ls_get_product` — Get a product by ID
|
|
75
|
+
- `ls_list_products` — List products (filter by store)
|
|
76
|
+
|
|
77
|
+
### Variants
|
|
78
|
+
- `ls_get_variant` — Get a variant by ID
|
|
79
|
+
- `ls_list_variants` — List variants (filter by product)
|
|
80
|
+
|
|
81
|
+
### Prices
|
|
82
|
+
- `ls_get_price` — Get a price by ID
|
|
83
|
+
- `ls_list_prices` — List prices (filter by variant)
|
|
84
|
+
|
|
85
|
+
### Files
|
|
86
|
+
- `ls_get_file` — Get a file by ID
|
|
87
|
+
- `ls_list_files` — List files (filter by variant)
|
|
88
|
+
|
|
89
|
+
### Orders
|
|
90
|
+
- `ls_get_order` — Get an order by ID
|
|
91
|
+
- `ls_list_orders` — List orders (filter by store, email)
|
|
92
|
+
- `ls_generate_order_invoice` — Generate a PDF invoice
|
|
93
|
+
- `ls_refund_order` — Issue a refund
|
|
94
|
+
|
|
95
|
+
### Order Items
|
|
96
|
+
- `ls_get_order_item` — Get an order item by ID
|
|
97
|
+
- `ls_list_order_items` — List order items (filter by order, product, variant)
|
|
98
|
+
|
|
99
|
+
### Subscriptions
|
|
100
|
+
- `ls_get_subscription` — Get a subscription by ID
|
|
101
|
+
- `ls_list_subscriptions` — List subscriptions (filter by store, status, product, etc.)
|
|
102
|
+
- `ls_update_subscription` — Update (plan switch, pause, billing anchor, trial)
|
|
103
|
+
- `ls_cancel_subscription` — Cancel a subscription
|
|
104
|
+
|
|
105
|
+
### Subscription Invoices
|
|
106
|
+
- `ls_get_subscription_invoice` — Get a subscription invoice by ID
|
|
107
|
+
- `ls_list_subscription_invoices` — List subscription invoices (filter by store, subscription, status)
|
|
108
|
+
- `ls_generate_subscription_invoice` — Generate a PDF invoice
|
|
109
|
+
- `ls_refund_subscription_invoice` — Issue a refund
|
|
110
|
+
|
|
111
|
+
### Subscription Items
|
|
112
|
+
- `ls_get_subscription_item` — Get a subscription item by ID
|
|
113
|
+
- `ls_list_subscription_items` — List subscription items (filter by subscription, price)
|
|
114
|
+
- `ls_update_subscription_item` — Update quantity
|
|
115
|
+
- `ls_get_subscription_item_usage` — Get current billing period usage
|
|
116
|
+
|
|
117
|
+
### Usage Records
|
|
118
|
+
- `ls_get_usage_record` — Get a usage record by ID
|
|
119
|
+
- `ls_list_usage_records` — List usage records (filter by subscription item)
|
|
120
|
+
- `ls_create_usage_record` — Report metered usage (increment or set)
|
|
121
|
+
|
|
122
|
+
### Discounts
|
|
123
|
+
- `ls_get_discount` — Get a discount by ID
|
|
124
|
+
- `ls_list_discounts` — List discounts (filter by store)
|
|
125
|
+
- `ls_create_discount` — Create a discount code
|
|
126
|
+
- `ls_delete_discount` — Delete a discount
|
|
127
|
+
|
|
128
|
+
### Discount Redemptions
|
|
129
|
+
- `ls_get_discount_redemption` — Get a discount redemption by ID
|
|
130
|
+
- `ls_list_discount_redemptions` — List redemptions (filter by discount, order)
|
|
131
|
+
|
|
132
|
+
### License Keys
|
|
133
|
+
- `ls_get_license_key` — Get a license key by ID
|
|
134
|
+
- `ls_list_license_keys` — List license keys (filter by store, order, product)
|
|
135
|
+
- `ls_update_license_key` — Update activation limit, expiry, or disabled status
|
|
136
|
+
|
|
137
|
+
### License Key Instances
|
|
138
|
+
- `ls_get_license_key_instance` — Get a license key activation by ID
|
|
139
|
+
- `ls_list_license_key_instances` — List activations (filter by license key)
|
|
140
|
+
|
|
141
|
+
### Checkouts
|
|
142
|
+
- `ls_get_checkout` — Get a checkout by ID
|
|
143
|
+
- `ls_list_checkouts` — List checkouts (filter by store, variant)
|
|
144
|
+
- `ls_create_checkout` — Create a checkout URL (custom pricing, prefill, discounts)
|
|
145
|
+
|
|
146
|
+
### Webhooks
|
|
147
|
+
- `ls_get_webhook` — Get a webhook by ID
|
|
148
|
+
- `ls_list_webhooks` — List webhooks (filter by store)
|
|
149
|
+
- `ls_create_webhook` — Create a webhook
|
|
150
|
+
- `ls_update_webhook` — Update a webhook
|
|
151
|
+
- `ls_delete_webhook` — Delete a webhook
|
|
152
|
+
|
|
153
|
+
### License API
|
|
154
|
+
- `ls_activate_license` — Activate a license key (no API key required)
|
|
155
|
+
- `ls_validate_license` — Validate a license key (no API key required)
|
|
156
|
+
- `ls_deactivate_license` — Deactivate a license key instance (no API key required)
|
|
157
|
+
|
|
158
|
+
## Features
|
|
159
|
+
|
|
160
|
+
- **Full API coverage** — All 17 LemonSqueezy API resources with 59 tools
|
|
161
|
+
- **JSON:API support** — Filtering, pagination, and relationship inclusion on all list/get operations
|
|
162
|
+
- **Zero runtime dependencies** — Single bundled file for instant `npx` startup
|
|
163
|
+
- **License API** — Activate, validate, and deactivate license keys without an API key
|
|
164
|
+
- **MCP annotations** — Every tool declares read-only, destructive, and idempotent hints
|
|
165
|
+
|
|
166
|
+
## License
|
|
167
|
+
|
|
168
|
+
MIT
|