@simple-product/mcp 0.2.0 → 0.2.2
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/dist/index.js +481 -24
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -484,30 +484,129 @@ async function runBridge() {
|
|
|
484
484
|
}
|
|
485
485
|
const baseUrl = process.env.SIMPLE_PRODUCT_URL || initialConfig.baseUrl;
|
|
486
486
|
const remoteUrl = new URL(`${baseUrl}/api/mcp/v1`);
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
487
|
+
const accessToken = initialConfig.accessToken;
|
|
488
|
+
// Mutable so switch_workspace can rebind the active workspace mid-session
|
|
489
|
+
// and reconnect the remote client with the new X-SP-Workspace header.
|
|
490
|
+
let currentSlug = initialConfig.workspaceSlug;
|
|
491
|
+
async function connectClient() {
|
|
492
|
+
const c = new Client({ name: "simple-product-bridge", version: "0.2.1" }, { capabilities: {} });
|
|
493
|
+
const transport = new StreamableHTTPClientTransport(remoteUrl, {
|
|
494
|
+
requestInit: {
|
|
495
|
+
headers: {
|
|
496
|
+
Authorization: `Bearer ${accessToken}`,
|
|
497
|
+
...(currentSlug ? { "X-SP-Workspace": currentSlug } : {}),
|
|
498
|
+
},
|
|
496
499
|
},
|
|
500
|
+
});
|
|
501
|
+
await c.connect(transport);
|
|
502
|
+
return c;
|
|
503
|
+
}
|
|
504
|
+
let client = await connectClient();
|
|
505
|
+
// switch_workspace mutates local client state (project config + the next
|
|
506
|
+
// remote request's workspace header), so it can't live purely server-side
|
|
507
|
+
// like the other tools. The bridge advertises it in tools/list and
|
|
508
|
+
// intercepts it in tools/call instead of forwarding.
|
|
509
|
+
const switchWorkspaceTool = {
|
|
510
|
+
name: "switch_workspace",
|
|
511
|
+
description: "Switch to a different workspace. Takes effect immediately without restarting.",
|
|
512
|
+
inputSchema: {
|
|
513
|
+
type: "object",
|
|
514
|
+
properties: {
|
|
515
|
+
slug: { type: "string", description: "The workspace slug to switch to" },
|
|
516
|
+
},
|
|
517
|
+
required: ["slug"],
|
|
497
518
|
},
|
|
498
|
-
}
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
519
|
+
};
|
|
520
|
+
async function handleSwitchWorkspace(args) {
|
|
521
|
+
const { slug } = args ?? {};
|
|
522
|
+
if (!slug) {
|
|
523
|
+
return {
|
|
524
|
+
content: [{ type: "text", text: "Error: slug is required" }],
|
|
525
|
+
isError: true,
|
|
526
|
+
};
|
|
527
|
+
}
|
|
528
|
+
try {
|
|
529
|
+
const response = await fetch(`${baseUrl}/api/mcp/switch`, {
|
|
530
|
+
method: "POST",
|
|
531
|
+
headers: {
|
|
532
|
+
"Content-Type": "application/json",
|
|
533
|
+
Authorization: `Bearer ${accessToken}`,
|
|
534
|
+
},
|
|
535
|
+
body: JSON.stringify({ slug }),
|
|
536
|
+
});
|
|
537
|
+
if (!response.ok) {
|
|
538
|
+
const errorData = (await response
|
|
539
|
+
.json()
|
|
540
|
+
.catch(() => ({})));
|
|
541
|
+
return {
|
|
542
|
+
content: [
|
|
543
|
+
{
|
|
544
|
+
type: "text",
|
|
545
|
+
text: `Error: ${errorData.error ?? response.statusText}`,
|
|
546
|
+
},
|
|
547
|
+
],
|
|
548
|
+
isError: true,
|
|
549
|
+
};
|
|
550
|
+
}
|
|
551
|
+
const result = (await response.json());
|
|
552
|
+
// Reconnect the remote client so subsequent /api/mcp/v1 requests carry
|
|
553
|
+
// the new workspace header. Closing the old client is best-effort.
|
|
554
|
+
currentSlug = result.workspaceSlug;
|
|
555
|
+
try {
|
|
556
|
+
await client.close();
|
|
557
|
+
}
|
|
558
|
+
catch {
|
|
559
|
+
// ignore close errors
|
|
560
|
+
}
|
|
561
|
+
client = await connectClient();
|
|
562
|
+
// Persist to project config so the choice survives across sessions in
|
|
563
|
+
// terminal contexts. Sandboxed hosts (Claude Desktop, etc.) get a no-op
|
|
564
|
+
// here — the in-memory switch is still the source of truth for the
|
|
565
|
+
// current session.
|
|
566
|
+
const savedPath = saveProjectConfig({
|
|
567
|
+
workspaceId: result.workspaceId,
|
|
568
|
+
workspaceSlug: result.workspaceSlug,
|
|
569
|
+
});
|
|
570
|
+
const persistNote = savedPath
|
|
571
|
+
? `Saved to: ${savedPath}\n\nThis workspace will be used for this project. Other projects will use their own workspace setting.`
|
|
572
|
+
: `(Not persisted — this workspace applies for the current session only.)`;
|
|
573
|
+
return {
|
|
574
|
+
content: [
|
|
575
|
+
{
|
|
576
|
+
type: "text",
|
|
577
|
+
text: `Switched to **${result.workspaceName}** (${result.workspaceSlug})\n\n${persistNote}`,
|
|
578
|
+
},
|
|
579
|
+
],
|
|
580
|
+
};
|
|
581
|
+
}
|
|
582
|
+
catch (error) {
|
|
583
|
+
return {
|
|
584
|
+
content: [
|
|
585
|
+
{
|
|
586
|
+
type: "text",
|
|
587
|
+
text: `Error: ${error instanceof Error ? error.message : "Unknown error"}`,
|
|
588
|
+
},
|
|
589
|
+
],
|
|
590
|
+
isError: true,
|
|
591
|
+
};
|
|
592
|
+
}
|
|
593
|
+
}
|
|
594
|
+
// Local stdio server. Forwards most requests to the remote client; intercepts
|
|
595
|
+
// the bridge-side tools.
|
|
596
|
+
const serverName = currentSlug
|
|
597
|
+
? `simple-product (${currentSlug})`
|
|
503
598
|
: "simple-product";
|
|
504
|
-
const server = new Server({ name: serverName, version: "0.2.
|
|
505
|
-
//
|
|
599
|
+
const server = new Server({ name: serverName, version: "0.2.1" }, { capabilities: { tools: {} } });
|
|
600
|
+
// tools/list — start with the remote's list, append bridge-side tools
|
|
506
601
|
server.setRequestHandler(ListToolsRequestSchema, async () => {
|
|
507
|
-
|
|
602
|
+
const remote = await client.listTools();
|
|
603
|
+
return { ...remote, tools: [...remote.tools, switchWorkspaceTool] };
|
|
508
604
|
});
|
|
509
|
-
//
|
|
605
|
+
// tools/call — intercept bridge-side tools, forward everything else
|
|
510
606
|
server.setRequestHandler(CallToolRequestSchema, async (request) => {
|
|
607
|
+
if (request.params.name === "switch_workspace") {
|
|
608
|
+
return await handleSwitchWorkspace(request.params.arguments);
|
|
609
|
+
}
|
|
511
610
|
return await client.callTool(request.params);
|
|
512
611
|
});
|
|
513
612
|
// Connect stdio for Claude Desktop / Code / etc. to talk to us.
|
|
@@ -1423,19 +1522,19 @@ Use this when the user asks to find or recall a draft they wrote earlier (e.g. "
|
|
|
1423
1522
|
},
|
|
1424
1523
|
{
|
|
1425
1524
|
name: "get_setup_guide",
|
|
1426
|
-
description: "Get implementation guide for integrating Simple Product features into your app. Returns code examples tailored to your framework. Use 'analytics' to set up user + event tracking via the SDK.",
|
|
1525
|
+
description: "Get implementation guide for integrating Simple Product features into your app. Returns code examples tailored to your framework. Use 'analytics' to set up user + event tracking via the SDK. Use 'webhooks' to subscribe to events (doc.published, card.moved, feedback.created, etc.) and react to them in your own service.",
|
|
1427
1526
|
inputSchema: {
|
|
1428
1527
|
type: "object",
|
|
1429
1528
|
properties: {
|
|
1430
1529
|
feature: {
|
|
1431
1530
|
type: "string",
|
|
1432
|
-
enum: ["analytics", "feedback", "people", "releases", "all"],
|
|
1433
|
-
description: "Which feature to get setup instructions for. 'analytics' covers
|
|
1531
|
+
enum: ["analytics", "feedback", "people", "releases", "webhooks", "all"],
|
|
1532
|
+
description: "Which feature to get setup instructions for. 'analytics' covers the SDK; 'webhooks' covers subscribing to events from SP.",
|
|
1434
1533
|
},
|
|
1435
1534
|
framework: {
|
|
1436
1535
|
type: "string",
|
|
1437
1536
|
enum: ["react", "nextjs", "vue", "html", "node", "python"],
|
|
1438
|
-
description: "Target framework for code examples (default: react)",
|
|
1537
|
+
description: "Target framework for code examples (default: react). For webhooks, prefer node/nextjs/python since receivers are server-side.",
|
|
1439
1538
|
},
|
|
1440
1539
|
},
|
|
1441
1540
|
required: ["feature"],
|
|
@@ -2659,6 +2758,363 @@ def create_release(title, content, status='draft'):
|
|
|
2659
2758
|
)
|
|
2660
2759
|
return response.json()
|
|
2661
2760
|
\`\`\`
|
|
2761
|
+
`,
|
|
2762
|
+
},
|
|
2763
|
+
webhooks: {
|
|
2764
|
+
// Webhooks are server-side. Hard-redirect the client-side frameworks
|
|
2765
|
+
// to a server-oriented one so the agent doesn't spit out browser JS.
|
|
2766
|
+
react: `# Webhooks are server-side
|
|
2767
|
+
|
|
2768
|
+
Webhook handlers receive HTTP POSTs from Simple Product. They need to run on a server, not in a browser. Re-call this tool with:
|
|
2769
|
+
|
|
2770
|
+
\`\`\`
|
|
2771
|
+
get_setup_guide({ feature: "webhooks", framework: "node" })
|
|
2772
|
+
\`\`\`
|
|
2773
|
+
|
|
2774
|
+
…or "nextjs" / "python", depending on your stack.
|
|
2775
|
+
|
|
2776
|
+
The browser-side code (React/Vue/etc.) doesn't need any webhook integration — webhook deliveries land on your backend, which can then update your frontend via your existing API. The full webhooks reference is at https://simpleproduct.dev/docs/webhooks.`,
|
|
2777
|
+
vue: `# Webhooks are server-side
|
|
2778
|
+
|
|
2779
|
+
Webhook handlers receive HTTP POSTs from Simple Product. They need to run on a server, not in a browser. Re-call this tool with:
|
|
2780
|
+
|
|
2781
|
+
\`\`\`
|
|
2782
|
+
get_setup_guide({ feature: "webhooks", framework: "node" })
|
|
2783
|
+
\`\`\`
|
|
2784
|
+
|
|
2785
|
+
…or "nextjs" / "python", depending on your stack. Full reference at https://simpleproduct.dev/docs/webhooks.`,
|
|
2786
|
+
html: `# Webhooks are server-side
|
|
2787
|
+
|
|
2788
|
+
Webhooks need a server endpoint. If you have a Node backend, call this tool with framework: "node". If you only have static HTML, you'll need to add a small server (or use a webhook-to-anything service like Zapier, n8n, etc.). Reference: https://simpleproduct.dev/docs/webhooks.`,
|
|
2789
|
+
node: `# Webhooks — Node.js (Express) Receiver
|
|
2790
|
+
|
|
2791
|
+
Receive HTTP POSTs from Simple Product when things happen in your workspace — releases publish, feedback comes in, cards move, etc. — and react to them.
|
|
2792
|
+
|
|
2793
|
+
## What you need
|
|
2794
|
+
|
|
2795
|
+
- A secret API key (\`sk_ws_*\`) from Settings → API Keys (one-time setup)
|
|
2796
|
+
- A publicly reachable URL where your service listens (in dev, use ngrok / cloudflared / webhook.site)
|
|
2797
|
+
- The list of events you want — see https://simpleproduct.dev/docs/webhooks for the full set
|
|
2798
|
+
|
|
2799
|
+
## 1. Subscribe via the REST API
|
|
2800
|
+
|
|
2801
|
+
\`\`\`bash
|
|
2802
|
+
curl -X POST ${baseUrl}/api/v1/webhooks \\
|
|
2803
|
+
-H "Authorization: Bearer sk_ws_xxx" \\
|
|
2804
|
+
-H "Content-Type: application/json" \\
|
|
2805
|
+
-d '{
|
|
2806
|
+
"url": "https://your-service.example.com/webhooks/sp",
|
|
2807
|
+
"events": ["doc.published"]
|
|
2808
|
+
}'
|
|
2809
|
+
\`\`\`
|
|
2810
|
+
|
|
2811
|
+
Response includes a \`secret\` field (\`whsec_...\`) — **shown only once**. Save it in env vars:
|
|
2812
|
+
|
|
2813
|
+
\`\`\`bash
|
|
2814
|
+
export SP_WEBHOOK_SECRET=whsec_...
|
|
2815
|
+
\`\`\`
|
|
2816
|
+
|
|
2817
|
+
## 2. Receive + verify in your handler
|
|
2818
|
+
|
|
2819
|
+
\`\`\`javascript
|
|
2820
|
+
import express from 'express';
|
|
2821
|
+
import { createHmac, timingSafeEqual } from 'crypto';
|
|
2822
|
+
|
|
2823
|
+
const app = express();
|
|
2824
|
+
|
|
2825
|
+
// Capture the RAW request body (signature is computed over raw bytes, not
|
|
2826
|
+
// re-serialized JSON). Use express.raw() rather than express.json() for
|
|
2827
|
+
// the webhook route.
|
|
2828
|
+
app.post('/webhooks/sp',
|
|
2829
|
+
express.raw({ type: 'application/json' }),
|
|
2830
|
+
(req, res) => {
|
|
2831
|
+
const sigHeader = req.headers['x-sp-signature'];
|
|
2832
|
+
if (!verifySignature(req.body.toString(), sigHeader)) {
|
|
2833
|
+
return res.status(401).end();
|
|
2834
|
+
}
|
|
2835
|
+
|
|
2836
|
+
const event = JSON.parse(req.body.toString());
|
|
2837
|
+
|
|
2838
|
+
// Dedupe by event id (retries send the same id)
|
|
2839
|
+
if (alreadyProcessed(event.id)) return res.status(200).end();
|
|
2840
|
+
markProcessed(event.id);
|
|
2841
|
+
|
|
2842
|
+
// Filter to what you care about
|
|
2843
|
+
if (event.type === 'doc.published' && event.data.type === 'release') {
|
|
2844
|
+
// Fetch the full release content (payloads are thin — IDs only)
|
|
2845
|
+
const release = await fetch(
|
|
2846
|
+
\`${baseUrl}/api/v1/docs/public/\${event.data.slug}?type=release\`
|
|
2847
|
+
).then(r => r.json());
|
|
2848
|
+
|
|
2849
|
+
// Do your work — send an email, post to Slack, update a cache...
|
|
2850
|
+
}
|
|
2851
|
+
|
|
2852
|
+
res.status(200).end(); // ack within ~10s to avoid timeout retries
|
|
2853
|
+
}
|
|
2854
|
+
);
|
|
2855
|
+
|
|
2856
|
+
function verifySignature(rawBody, signatureHeader) {
|
|
2857
|
+
const parts = Object.fromEntries(
|
|
2858
|
+
signatureHeader.split(',').map(p => p.split('='))
|
|
2859
|
+
);
|
|
2860
|
+
const ts = parseInt(parts.t, 10);
|
|
2861
|
+
if (!ts || Math.abs(Date.now() / 1000 - ts) > 300) return false; // 5min window
|
|
2862
|
+
|
|
2863
|
+
const expected = createHmac('sha256', process.env.SP_WEBHOOK_SECRET)
|
|
2864
|
+
.update(\`\${ts}.\${rawBody}\`)
|
|
2865
|
+
.digest('hex');
|
|
2866
|
+
|
|
2867
|
+
const a = Buffer.from(parts.v1, 'hex');
|
|
2868
|
+
const b = Buffer.from(expected, 'hex');
|
|
2869
|
+
return a.length === b.length && timingSafeEqual(a, b);
|
|
2870
|
+
}
|
|
2871
|
+
\`\`\`
|
|
2872
|
+
|
|
2873
|
+
## Payload shape
|
|
2874
|
+
|
|
2875
|
+
\`\`\`json
|
|
2876
|
+
{
|
|
2877
|
+
"id": "evt_<uuid>",
|
|
2878
|
+
"type": "doc.published",
|
|
2879
|
+
"createdAt": 1779480000000,
|
|
2880
|
+
"workspaceId": "ws_...",
|
|
2881
|
+
"data": { "id": "doc_...", "type": "release", "slug": "v2-0", "title": "v2.0" }
|
|
2882
|
+
}
|
|
2883
|
+
\`\`\`
|
|
2884
|
+
|
|
2885
|
+
Headers: \`X-SP-Signature\` (HMAC), \`X-SP-Event-Id\` (dedupe key), \`X-SP-Event-Type\`.
|
|
2886
|
+
|
|
2887
|
+
Payloads are thin — they contain IDs/slugs only, not full content. Always fetch fresh state from the public API in your handler (\`/api/v1/docs/public/<slug>\`) so you get the latest version even if the doc was edited after the event fired.
|
|
2888
|
+
|
|
2889
|
+
## Available events
|
|
2890
|
+
|
|
2891
|
+
- \`doc.created\`, \`doc.updated\`, \`doc.published\`, \`doc.unpublished\`, \`doc.deleted\`
|
|
2892
|
+
- \`release.published\` (convenience alias when doc.type === "release")
|
|
2893
|
+
- \`feedback.created\` — customer feedback received
|
|
2894
|
+
- \`card.created\`, \`card.updated\`, \`card.moved\` (with previousStageId)
|
|
2895
|
+
- \`person.created\`, \`org.created\`
|
|
2896
|
+
|
|
2897
|
+
Subscribe to specific event types, or \`["*"]\` for everything.
|
|
2898
|
+
|
|
2899
|
+
## Retries
|
|
2900
|
+
|
|
2901
|
+
We retry 6 times on non-2xx: 30s, 2min, 10min, 1hr, 6hr, 24hr. After that, dead-letter. Inspect delivery history:
|
|
2902
|
+
|
|
2903
|
+
\`\`\`bash
|
|
2904
|
+
curl ${baseUrl}/api/v1/webhooks/<subscription-id>/deliveries \\
|
|
2905
|
+
-H "Authorization: Bearer sk_ws_xxx"
|
|
2906
|
+
\`\`\`
|
|
2907
|
+
|
|
2908
|
+
## Full reference
|
|
2909
|
+
|
|
2910
|
+
https://simpleproduct.dev/docs/webhooks
|
|
2911
|
+
`,
|
|
2912
|
+
nextjs: `# Webhooks — Next.js App Router Receiver
|
|
2913
|
+
|
|
2914
|
+
Receive HTTP POSTs from Simple Product when things happen in your workspace — releases publish, feedback comes in, cards move, etc. — and react to them.
|
|
2915
|
+
|
|
2916
|
+
## 1. Subscribe via the REST API (one-time setup)
|
|
2917
|
+
|
|
2918
|
+
\`\`\`bash
|
|
2919
|
+
curl -X POST ${baseUrl}/api/v1/webhooks \\
|
|
2920
|
+
-H "Authorization: Bearer sk_ws_xxx" \\
|
|
2921
|
+
-H "Content-Type: application/json" \\
|
|
2922
|
+
-d '{
|
|
2923
|
+
"url": "https://your-app.example.com/api/webhooks/sp",
|
|
2924
|
+
"events": ["doc.published"]
|
|
2925
|
+
}'
|
|
2926
|
+
\`\`\`
|
|
2927
|
+
|
|
2928
|
+
Response includes a \`secret\` (whsec_...) — shown once. Add to your env:
|
|
2929
|
+
|
|
2930
|
+
\`\`\`bash
|
|
2931
|
+
# .env.local
|
|
2932
|
+
SP_WEBHOOK_SECRET=whsec_...
|
|
2933
|
+
\`\`\`
|
|
2934
|
+
|
|
2935
|
+
## 2. Create the route handler
|
|
2936
|
+
|
|
2937
|
+
\`\`\`typescript
|
|
2938
|
+
// app/api/webhooks/sp/route.ts
|
|
2939
|
+
import { NextRequest } from 'next/server';
|
|
2940
|
+
import { createHmac, timingSafeEqual } from 'crypto';
|
|
2941
|
+
|
|
2942
|
+
const SECRET = process.env.SP_WEBHOOK_SECRET!;
|
|
2943
|
+
|
|
2944
|
+
export async function POST(req: NextRequest) {
|
|
2945
|
+
const rawBody = await req.text(); // raw bytes for signature verification
|
|
2946
|
+
const sigHeader = req.headers.get('x-sp-signature');
|
|
2947
|
+
|
|
2948
|
+
if (!sigHeader || !verifySignature(rawBody, sigHeader)) {
|
|
2949
|
+
return new Response(null, { status: 401 });
|
|
2950
|
+
}
|
|
2951
|
+
|
|
2952
|
+
const event = JSON.parse(rawBody);
|
|
2953
|
+
|
|
2954
|
+
// Dedupe by event id (retries send the same id)
|
|
2955
|
+
if (await alreadyProcessed(event.id)) {
|
|
2956
|
+
return new Response('ok', { status: 200 });
|
|
2957
|
+
}
|
|
2958
|
+
await markProcessed(event.id);
|
|
2959
|
+
|
|
2960
|
+
// Filter + act
|
|
2961
|
+
if (event.type === 'doc.published' && event.data.type === 'release') {
|
|
2962
|
+
const release = await fetch(
|
|
2963
|
+
\`${baseUrl}/api/v1/docs/public/\${event.data.slug}?type=release\`
|
|
2964
|
+
).then(r => r.json());
|
|
2965
|
+
|
|
2966
|
+
// Do your work — email, Slack, ISR revalidation, etc.
|
|
2967
|
+
// For Next.js cache revalidation specifically:
|
|
2968
|
+
// revalidatePath(\`/changelog/\${release.slug}\`);
|
|
2969
|
+
}
|
|
2970
|
+
|
|
2971
|
+
return new Response('ok', { status: 200 });
|
|
2972
|
+
}
|
|
2973
|
+
|
|
2974
|
+
function verifySignature(rawBody: string, signatureHeader: string): boolean {
|
|
2975
|
+
const parts = Object.fromEntries(
|
|
2976
|
+
signatureHeader.split(',').map((p) => p.split('=') as [string, string])
|
|
2977
|
+
);
|
|
2978
|
+
const ts = parseInt(parts.t, 10);
|
|
2979
|
+
if (!ts || Math.abs(Date.now() / 1000 - ts) > 300) return false;
|
|
2980
|
+
|
|
2981
|
+
const expected = createHmac('sha256', SECRET)
|
|
2982
|
+
.update(\`\${ts}.\${rawBody}\`)
|
|
2983
|
+
.digest('hex');
|
|
2984
|
+
|
|
2985
|
+
const a = Buffer.from(parts.v1, 'hex');
|
|
2986
|
+
const b = Buffer.from(expected, 'hex');
|
|
2987
|
+
return a.length === b.length && timingSafeEqual(a, b);
|
|
2988
|
+
}
|
|
2989
|
+
\`\`\`
|
|
2990
|
+
|
|
2991
|
+
## Payload shape
|
|
2992
|
+
|
|
2993
|
+
\`\`\`json
|
|
2994
|
+
{
|
|
2995
|
+
"id": "evt_<uuid>",
|
|
2996
|
+
"type": "doc.published",
|
|
2997
|
+
"createdAt": 1779480000000,
|
|
2998
|
+
"workspaceId": "ws_...",
|
|
2999
|
+
"data": { "id": "doc_...", "type": "release", "slug": "v2-0", "title": "v2.0" }
|
|
3000
|
+
}
|
|
3001
|
+
\`\`\`
|
|
3002
|
+
|
|
3003
|
+
Payloads are thin (IDs/slugs only). Always fetch fresh content via the public API in your handler.
|
|
3004
|
+
|
|
3005
|
+
## Common Next.js pattern: ISR cache revalidation
|
|
3006
|
+
|
|
3007
|
+
If you mirror SP releases on your site, use \`doc.published\` + \`doc.unpublished\` to revalidate surgically instead of polling:
|
|
3008
|
+
|
|
3009
|
+
\`\`\`typescript
|
|
3010
|
+
import { revalidatePath, revalidateTag } from 'next/cache';
|
|
3011
|
+
|
|
3012
|
+
if (event.type === 'doc.published' || event.type === 'doc.unpublished') {
|
|
3013
|
+
revalidatePath(\`/changelog/\${event.data.slug}\`);
|
|
3014
|
+
revalidateTag('changelog'); // if you tag your fetch() calls
|
|
3015
|
+
}
|
|
3016
|
+
\`\`\`
|
|
3017
|
+
|
|
3018
|
+
## Available events
|
|
3019
|
+
|
|
3020
|
+
doc.* (created/updated/published/unpublished/deleted), release.published, feedback.created, card.* (created/updated/moved), person.created, org.created. See https://simpleproduct.dev/docs/webhooks.
|
|
3021
|
+
|
|
3022
|
+
## Retries
|
|
3023
|
+
|
|
3024
|
+
6 retries on non-2xx (30s → 24hr). Inspect deliveries:
|
|
3025
|
+
|
|
3026
|
+
\`\`\`bash
|
|
3027
|
+
curl ${baseUrl}/api/v1/webhooks/<id>/deliveries -H "Authorization: Bearer sk_ws_xxx"
|
|
3028
|
+
\`\`\`
|
|
3029
|
+
`,
|
|
3030
|
+
python: `# Webhooks — Python (Flask) Receiver
|
|
3031
|
+
|
|
3032
|
+
Receive HTTP POSTs from Simple Product when things happen in your workspace.
|
|
3033
|
+
|
|
3034
|
+
## 1. Subscribe (one-time)
|
|
3035
|
+
|
|
3036
|
+
\`\`\`bash
|
|
3037
|
+
curl -X POST ${baseUrl}/api/v1/webhooks \\
|
|
3038
|
+
-H "Authorization: Bearer sk_ws_xxx" \\
|
|
3039
|
+
-H "Content-Type: application/json" \\
|
|
3040
|
+
-d '{"url":"https://your.example.com/webhooks/sp","events":["doc.published"]}'
|
|
3041
|
+
\`\`\`
|
|
3042
|
+
|
|
3043
|
+
Save the returned \`secret\` (whsec_...) in env vars.
|
|
3044
|
+
|
|
3045
|
+
## 2. Flask handler with signature verification
|
|
3046
|
+
|
|
3047
|
+
\`\`\`python
|
|
3048
|
+
import hmac
|
|
3049
|
+
import hashlib
|
|
3050
|
+
import json
|
|
3051
|
+
import os
|
|
3052
|
+
import time
|
|
3053
|
+
import requests
|
|
3054
|
+
from flask import Flask, request, abort
|
|
3055
|
+
|
|
3056
|
+
app = Flask(__name__)
|
|
3057
|
+
SECRET = os.environ['SP_WEBHOOK_SECRET']
|
|
3058
|
+
|
|
3059
|
+
def verify_signature(raw_body: bytes, sig_header: str) -> bool:
|
|
3060
|
+
if not sig_header:
|
|
3061
|
+
return False
|
|
3062
|
+
parts = dict(p.split('=', 1) for p in sig_header.split(','))
|
|
3063
|
+
ts = int(parts.get('t', 0))
|
|
3064
|
+
if not ts or abs(time.time() - ts) > 300:
|
|
3065
|
+
return False # reject signatures > 5min old (replay protection)
|
|
3066
|
+
|
|
3067
|
+
expected = hmac.new(
|
|
3068
|
+
SECRET.encode(),
|
|
3069
|
+
f'{ts}.{raw_body.decode()}'.encode(),
|
|
3070
|
+
hashlib.sha256,
|
|
3071
|
+
).hexdigest()
|
|
3072
|
+
return hmac.compare_digest(expected, parts.get('v1', ''))
|
|
3073
|
+
|
|
3074
|
+
processed_ids = set() # use Redis/DB in production
|
|
3075
|
+
|
|
3076
|
+
@app.route('/webhooks/sp', methods=['POST'])
|
|
3077
|
+
def receive():
|
|
3078
|
+
raw = request.get_data() # raw bytes — required for signature verification
|
|
3079
|
+
if not verify_signature(raw, request.headers.get('X-SP-Signature', '')):
|
|
3080
|
+
abort(401)
|
|
3081
|
+
|
|
3082
|
+
event = json.loads(raw)
|
|
3083
|
+
|
|
3084
|
+
if event['id'] in processed_ids:
|
|
3085
|
+
return ('', 200) # already handled
|
|
3086
|
+
processed_ids.add(event['id'])
|
|
3087
|
+
|
|
3088
|
+
if event['type'] == 'doc.published' and event['data'].get('type') == 'release':
|
|
3089
|
+
# Fetch full content (payloads are thin)
|
|
3090
|
+
release = requests.get(
|
|
3091
|
+
f"${baseUrl}/api/v1/docs/public/{event['data']['slug']}",
|
|
3092
|
+
params={'type': 'release'},
|
|
3093
|
+
).json()
|
|
3094
|
+
# ... your work: send email, post Slack, etc.
|
|
3095
|
+
|
|
3096
|
+
return ('', 200)
|
|
3097
|
+
\`\`\`
|
|
3098
|
+
|
|
3099
|
+
## Payload shape
|
|
3100
|
+
|
|
3101
|
+
\`\`\`json
|
|
3102
|
+
{
|
|
3103
|
+
"id": "evt_<uuid>",
|
|
3104
|
+
"type": "doc.published",
|
|
3105
|
+
"createdAt": 1779480000000,
|
|
3106
|
+
"workspaceId": "ws_...",
|
|
3107
|
+
"data": { "id": "doc_...", "type": "release", "slug": "v2-0", "title": "v2.0" }
|
|
3108
|
+
}
|
|
3109
|
+
\`\`\`
|
|
3110
|
+
|
|
3111
|
+
## Events available
|
|
3112
|
+
|
|
3113
|
+
doc.* (created/updated/published/unpublished/deleted), release.published, feedback.created, card.* (created/updated/moved), person.created, org.created.
|
|
3114
|
+
|
|
3115
|
+
## Reference
|
|
3116
|
+
|
|
3117
|
+
https://simpleproduct.dev/docs/webhooks
|
|
2662
3118
|
`,
|
|
2663
3119
|
},
|
|
2664
3120
|
all: {
|
|
@@ -2672,7 +3128,7 @@ def create_release(title, content, status='draft'):
|
|
|
2672
3128
|
};
|
|
2673
3129
|
const featureGuide = guides[feature];
|
|
2674
3130
|
if (!featureGuide) {
|
|
2675
|
-
return `Unknown feature: ${feature}. Available features: analytics, feedback, people, releases, all`;
|
|
3131
|
+
return `Unknown feature: ${feature}. Available features: analytics, feedback, people, releases, webhooks, all`;
|
|
2676
3132
|
}
|
|
2677
3133
|
return featureGuide[framework] || featureGuide.react || `No guide available for ${framework}`;
|
|
2678
3134
|
};
|
|
@@ -2775,8 +3231,9 @@ If the user has auto-memory enabled, save a memory noting which SP workspace thi
|
|
|
2775
3231
|
- \`get_setup_guide\` with \`feature: "feedback"\` — add a feedback widget
|
|
2776
3232
|
- \`get_setup_guide\` with \`feature: "releases"\` — show a changelog in your app
|
|
2777
3233
|
- \`get_setup_guide\` with \`feature: "people"\` — sync users/customers from your app
|
|
3234
|
+
- \`get_setup_guide\` with \`feature: "webhooks"\` — subscribe to SP events (doc.published, card.moved, feedback.created, etc.) and react in your service
|
|
2778
3235
|
|
|
2779
|
-
All accept \`framework\`: react | nextjs | vue | html | node | python.
|
|
3236
|
+
All accept \`framework\`: react | nextjs | vue | html | node | python. Webhooks are server-side, so prefer node | nextjs | python for the receiver.
|
|
2780
3237
|
|
|
2781
3238
|
## Tips
|
|
2782
3239
|
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|