fastr-mcp-suite 1.2.0 → 1.4.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/README.md +108 -105
- package/dist/cards/fluentcart/tools.d.ts.map +1 -1
- package/dist/cards/fluentcart/tools.js +1013 -0
- package/dist/cards/fluentcart/tools.js.map +1 -1
- package/dist/server.js +4 -1
- package/dist/server.js.map +1 -1
- package/dist/skills/fastr-mcp-suite/SKILL.md +317 -273
- package/dist/skills/fluentcart-developer/SKILL.md +356 -6
- package/dist/skills/fluentcart-developer/examples/README.md +5 -0
- package/dist/skills/fluentcart-developer/examples/sample-plugin-with-licensing-sdk/README.md +22 -0
- package/dist/skills/fluentcart-developer/examples/sample-plugin-with-licensing-sdk/sample-plugin-with-licensing-sdk.php +79 -0
- package/dist/skills/fluentcart-developer/examples/sample-plugin-with-licensing-sdk/updater/FluentLicensing.php +303 -0
- package/dist/skills/fluentcart-developer/examples/sample-plugin-with-licensing-sdk/updater/LicenseSettings.php +566 -0
- package/dist/skills/fluentcart-developer/examples/sample-plugin-with-licensing-sdk/updater/PluginUpdater.php +304 -0
- package/dist/skills/fluentcart-developer/references/customer-dashboard-endpoints.md +169 -0
- package/dist/skills/fluentcart-developer/references/device-licensing-and-hardware-tracking.md +241 -0
- package/dist/skills/fluentcart-developer/references/order-bump-module.md +163 -0
- package/dist/skills/fluentcart-developer/references/rest-api-licensing.md +3 -0
- package/dist/skills/fluentcart-developer/references/shipping-module-guide.md +126 -0
- package/dist/skills/fluentcart-developer/references/software-licensing-sdk.md +228 -0
- package/dist/skills/fluentcart-developer/references/storage-drivers-module.md +140 -0
- package/dist/skills/lemonsqueezy-developer/SKILL.md +162 -5
- package/dist/skills/lemonsqueezy-developer/examples/README.md +30 -0
- package/dist/skills/lemonsqueezy-developer/examples/lemonjs-checkout-overlay/index.html +59 -0
- package/dist/skills/lemonsqueezy-developer/examples/nextjs-app-router-billing/app/api/webhook/route.ts +86 -0
- package/dist/skills/lemonsqueezy-developer/examples/wordpress-plugin-lemon-licensing/lemon-squeezy-licensing-example.php +185 -0
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +67 -67
package/README.md
CHANGED
|
@@ -1,105 +1,108 @@
|
|
|
1
|
-
# Fastr MCP Suite
|
|
2
|
-
|
|
3
|
-
One MCP server that ships the Playing Cards — **FluentCart Developer Agent** and **Lemon Squeezy Developer Agent** — as executable tools plus a skills catalog, so an agent pulls only the slice of documentation it needs instead of loading 239 KB of markdown into the context window.
|
|
4
|
-
|
|
5
|
-
**Free and MIT-licensed.** All ten tools are registered for every caller on every transport: no licence key, no account, no subscription, no request quota. Nothing in this server validates a purchase, because there is nothing to purchase.
|
|
6
|
-
|
|
7
|
-
Protocol: MCP `2026-07-28` (stateless, per-request `_meta` envelope) with a `2025-11-25` legacy fallback. Transports: `stdio` for local clients, Streamable HTTP for marketplaces and hosted deploys.
|
|
8
|
-
|
|
9
|
-
## Run it
|
|
10
|
-
|
|
11
|
-
### From npm
|
|
12
|
-
|
|
13
|
-
Published as [`fastr-mcp-suite`](https://www.npmjs.com/package/fastr-mcp-suite) — Node 22+, no clone and no build:
|
|
14
|
-
|
|
15
|
-
```bash
|
|
16
|
-
npx -y fastr-mcp-suite
|
|
17
|
-
```
|
|
18
|
-
|
|
19
|
-
Client config (Claude Code / Cursor / Windsurf):
|
|
20
|
-
|
|
21
|
-
```json
|
|
22
|
-
{
|
|
23
|
-
"mcpServers": {
|
|
24
|
-
"fastr-suite": {
|
|
25
|
-
"command": "npx",
|
|
26
|
-
"args": ["-y", "fastr-mcp-suite"]
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
```
|
|
31
|
-
|
|
32
|
-
```bash
|
|
33
|
-
claude mcp add fastr-suite -- npx -y fastr-mcp-suite
|
|
34
|
-
```
|
|
35
|
-
|
|
36
|
-
The npm package ships the stdio entry point only. The Streamable HTTP transport needs the source tree or the Docker image.
|
|
37
|
-
|
|
38
|
-
### From source
|
|
39
|
-
|
|
40
|
-
```bash
|
|
41
|
-
npm install
|
|
42
|
-
npm run build # tsc + bundles both skill folders into dist/skills
|
|
43
|
-
npm run verify # boots the built server and asserts the protocol surface
|
|
44
|
-
node dist/index.js # stdio
|
|
45
|
-
node dist/http.js # Streamable HTTP on :8080 (POST /mcp, GET /health)
|
|
46
|
-
```
|
|
47
|
-
|
|
48
|
-
Point a client at the built file:
|
|
49
|
-
|
|
50
|
-
```json
|
|
51
|
-
{
|
|
52
|
-
"mcpServers": {
|
|
53
|
-
"fastr-suite": {
|
|
54
|
-
"command": "node",
|
|
55
|
-
"args": ["/absolute/path/to/server/dist/index.js"]
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
```
|
|
60
|
-
|
|
61
|
-
## Tools
|
|
62
|
-
|
|
63
|
-
Ten tools, all free. `suite_get_info` reports the same list at runtime, scoped by card.
|
|
64
|
-
|
|
65
|
-
| Card | Tool | Answers |
|
|
66
|
-
| --- | --- | --- |
|
|
67
|
-
| FluentCart | `fc_search_hooks` | A hook name, when it fires, its arguments |
|
|
68
|
-
| FluentCart | `fc_get_db_schema` | A `wp_fct_*` table, its columns, the Eloquent model |
|
|
69
|
-
| FluentCart | `fc_get_reference` | Any of the
|
|
70
|
-
| FluentCart | `fc_generate_payment_gateway_boilerplate` | A complete PHP gateway class, settings schema and webhook entry point |
|
|
71
|
-
|
|
|
72
|
-
|
|
|
73
|
-
|
|
|
74
|
-
| Lemon Squeezy | `
|
|
75
|
-
| Lemon Squeezy | `
|
|
76
|
-
|
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
```
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
1
|
+
# Fastr MCP Suite
|
|
2
|
+
|
|
3
|
+
One MCP server that ships the Playing Cards — **FluentCart Developer Agent** and **Lemon Squeezy Developer Agent** — as executable tools plus a skills catalog, so an agent pulls only the slice of documentation it needs instead of loading 239 KB of markdown into the context window.
|
|
4
|
+
|
|
5
|
+
**Free and MIT-licensed.** All ten tools are registered for every caller on every transport: no licence key, no account, no subscription, no request quota. Nothing in this server validates a purchase, because there is nothing to purchase.
|
|
6
|
+
|
|
7
|
+
Protocol: MCP `2026-07-28` (stateless, per-request `_meta` envelope) with a `2025-11-25` legacy fallback. Transports: `stdio` for local clients, Streamable HTTP for marketplaces and hosted deploys.
|
|
8
|
+
|
|
9
|
+
## Run it
|
|
10
|
+
|
|
11
|
+
### From npm
|
|
12
|
+
|
|
13
|
+
Published as [`fastr-mcp-suite`](https://www.npmjs.com/package/fastr-mcp-suite) — Node 22+, no clone and no build:
|
|
14
|
+
|
|
15
|
+
```bash
|
|
16
|
+
npx -y fastr-mcp-suite
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
Client config (Claude Code / Cursor / Windsurf):
|
|
20
|
+
|
|
21
|
+
```json
|
|
22
|
+
{
|
|
23
|
+
"mcpServers": {
|
|
24
|
+
"fastr-suite": {
|
|
25
|
+
"command": "npx",
|
|
26
|
+
"args": ["-y", "fastr-mcp-suite"]
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
```bash
|
|
33
|
+
claude mcp add fastr-suite -- npx -y fastr-mcp-suite
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
The npm package ships the stdio entry point only. The Streamable HTTP transport needs the source tree or the Docker image.
|
|
37
|
+
|
|
38
|
+
### From source
|
|
39
|
+
|
|
40
|
+
```bash
|
|
41
|
+
npm install
|
|
42
|
+
npm run build # tsc + bundles both skill folders into dist/skills
|
|
43
|
+
npm run verify # boots the built server and asserts the protocol surface
|
|
44
|
+
node dist/index.js # stdio
|
|
45
|
+
node dist/http.js # Streamable HTTP on :8080 (POST /mcp, GET /health)
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
Point a client at the built file:
|
|
49
|
+
|
|
50
|
+
```json
|
|
51
|
+
{
|
|
52
|
+
"mcpServers": {
|
|
53
|
+
"fastr-suite": {
|
|
54
|
+
"command": "node",
|
|
55
|
+
"args": ["/absolute/path/to/server/dist/index.js"]
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
## Tools
|
|
62
|
+
|
|
63
|
+
Ten tools, all free. `suite_get_info` reports the same list at runtime, scoped by card.
|
|
64
|
+
|
|
65
|
+
| Card | Tool | Answers |
|
|
66
|
+
| --- | --- | --- |
|
|
67
|
+
| FluentCart | `fc_search_hooks` | A hook name, when it fires, its arguments |
|
|
68
|
+
| FluentCart | `fc_get_db_schema` | A `wp_fct_*` table, its columns, the Eloquent model |
|
|
69
|
+
| FluentCart | `fc_get_reference` | Any of the 54 reference files, whole or by heading |
|
|
70
|
+
| FluentCart | `fc_generate_payment_gateway_boilerplate` | A complete PHP gateway class, settings schema and webhook entry point |
|
|
71
|
+
| FluentCart | `fc_generate_licensing_boilerplate` | Complete FluentCart Software Licensing SDK integration with automatic updates and admin UI |
|
|
72
|
+
| FluentCart | `fc_generate_customer_endpoint_boilerplate` | Custom server-rendered tabs and sub-pages in the Vue 3 customer dashboard with session resolution |
|
|
73
|
+
| FluentCart | `fc_generate_device_licensing_boilerplate` | Client licensing for non-WordPress software — Tauri/Rust, Chrome MV3, Python, C++/JUCE — using `device://` ids and clock-tamper guards |
|
|
74
|
+
| Lemon Squeezy | `ls_search_docs` | Webhook signatures, checkout payloads, subscription states |
|
|
75
|
+
| Lemon Squeezy | `ls_get_schema` | The exact JSON:API body for an endpoint |
|
|
76
|
+
| Lemon Squeezy | `ls_get_reference` | Any of the 7 Lemon Squeezy reference files, whole or by heading |
|
|
77
|
+
| Lemon Squeezy | `ls_verify_webhook` | Timing-safe HMAC-SHA256 check against a raw payload |
|
|
78
|
+
| Lemon Squeezy | `ls_validate_license` | A live licence key, validated against Lemon Squeezy's API |
|
|
79
|
+
| Suite | `suite_get_info` | What this server is, which tools serve which card, and its licence |
|
|
80
|
+
|
|
81
|
+
The skills catalog is attached as an MCP extension, so clients that understand it also get `skills/list` and `resources/read` over the same 64 files.
|
|
82
|
+
|
|
83
|
+
`ls_validate_license` is the only tool that reaches the network. It is cached for 60 s, bounded to 32 concurrent calls and times out at 5 s, so a public deploy does not become an unbounded relay into Lemon Squeezy's API.
|
|
84
|
+
|
|
85
|
+
## Deploy
|
|
86
|
+
|
|
87
|
+
### Docker
|
|
88
|
+
|
|
89
|
+
```bash
|
|
90
|
+
docker build -t fastr-mcp-suite .
|
|
91
|
+
docker run -p 8080:8080 -e ALLOWED_HOSTS=your-host.example fastr-mcp-suite
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
`ALLOWED_HOSTS` is the only environment variable worth setting: a comma-separated Host allowlist for DNS-rebinding protection. `PORT` overrides `8080`. Nothing else is read.
|
|
95
|
+
|
|
96
|
+
Any host that accepts a long-running HTTP process works — Railway, Render, Fly.io, a VPS. Mount `/health` as the liveness probe: it returns the protocol version, the card list and the licence.
|
|
97
|
+
|
|
98
|
+
### MCPize
|
|
99
|
+
|
|
100
|
+
[`mcpize.yaml`](../mcpize.yaml) at the repository root is the deployment manifest; `npx mcpize deploy` builds and publishes from there. MCPize authenticates callers at its own edge, but that credential no longer changes what the server registers — a caller with or without it sees the same ten tools.
|
|
101
|
+
|
|
102
|
+
## Not affiliated
|
|
103
|
+
|
|
104
|
+
This is an independent developer tool. It does not connect to a WordPress database, does not modify a FluentCart store, and is not published by either vendor. Documentation in `skills/` is compiled from their public references.
|
|
105
|
+
|
|
106
|
+
## Licence
|
|
107
|
+
|
|
108
|
+
MIT — see [`LICENSE.md`](./LICENSE.md). Fork it, host it, adapt it.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../../src/cards/fluentcart/tools.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAK9D,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../../src/cards/fluentcart/tools.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAK9D,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAgwC/D"}
|