@gblin-protocol/mcp-server 0.1.12 → 0.1.14
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 +18 -0
- package/dist/config.d.ts +1 -1
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +4 -1
- package/dist/config.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/init.js +4 -1
- package/dist/init.js.map +1 -1
- package/dist/paywall.d.ts +66 -0
- package/dist/paywall.d.ts.map +1 -0
- package/dist/paywall.js +105 -0
- package/dist/paywall.js.map +1 -0
- package/dist/tools.d.ts +8 -16
- package/dist/tools.d.ts.map +1 -1
- package/dist/tools.js +31 -14
- package/dist/tools.js.map +1 -1
- package/llms.txt +3 -0
- package/package.json +2 -4
- package/scripts/postinstall.cjs +0 -58
package/README.md
CHANGED
|
@@ -335,8 +335,26 @@ GBLIN exposes machine-readable discovery files for AI agents and protocols:
|
|
|
335
335
|
|
|
336
336
|
The MCP server in this repo provides the same operations as the x402 HTTP endpoints, but exposed via the Model Context Protocol for direct agent integration (Claude Desktop, Cursor, Windsurf, ElizaOS, etc.).
|
|
337
337
|
|
|
338
|
+
## GBLIN Sentinel — x402 Data Agent Example
|
|
339
|
+
|
|
340
|
+
[GBLIN Sentinel](https://gblin-sentinel.vercel.app) is an open-source reference implementation of an autonomous AI agent that **sells** on-chain data via x402 micropayments. It demonstrates the full x402 producer pattern on Base.
|
|
341
|
+
|
|
342
|
+
| Endpoint | Price | Data |
|
|
343
|
+
|---|---|---|
|
|
344
|
+
| `/api/data/base-risk-pulse` | $0.002 USDC | Chainlink risk signal: `normal`/`caution`/`risk-off` for ETH, BTC, USDC |
|
|
345
|
+
| `/api/data/gblin-analytics` | $0.001 USDC | GBLIN treasury state, basket weights, keeper availability |
|
|
346
|
+
| `/api/data/keeper-opps` | $0.001 USDC | Live keeper bounty check with MCP tool reference |
|
|
347
|
+
|
|
348
|
+
Discovery:
|
|
349
|
+
- x402 manifest: https://gblin-sentinel.vercel.app/.well-known/x402
|
|
350
|
+
- LLM reference: https://gblin-sentinel.vercel.app/llms.txt
|
|
351
|
+
- Source: https://github.com/gblinproject/gblin-sentinel
|
|
352
|
+
|
|
353
|
+
Any agent using this MCP server can call `base-risk-pulse` before investing to gate treasury actions on current market risk signal.
|
|
354
|
+
|
|
338
355
|
## Related Repositories
|
|
339
356
|
|
|
340
357
|
- **Smart Contract & Protocol:** https://github.com/gblinproject/GBLIN-Protocol
|
|
341
358
|
- **Web App & x402 Endpoints:** https://github.com/gblinproject/GBLIN_WEBAPP
|
|
342
359
|
- **ElizaOS Plugin:** https://github.com/gblinproject/GBLIN_PLUGIN
|
|
360
|
+
- **GBLIN Sentinel (x402 data agent):** https://github.com/gblinproject/gblin-sentinel
|
package/dist/config.d.ts
CHANGED
|
@@ -25,5 +25,5 @@ export declare const BPS_DENOMINATOR = 10000n;
|
|
|
25
25
|
export declare const NAV_CACHE_TTL_MS = 30000;
|
|
26
26
|
export declare const BASKET_CACHE_TTL_MS = 60000;
|
|
27
27
|
export declare const SERVER_NAME = "gblin-treasury-mcp";
|
|
28
|
-
export declare const SERVER_VERSION
|
|
28
|
+
export declare const SERVER_VERSION: string;
|
|
29
29
|
//# sourceMappingURL=config.d.ts.map
|
package/dist/config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAMpC,eAAO,MAAM,aAAa,OAAO,CAAC;AAGlC,eAAO,MAAM,eAAe,oCAAoC,CAAC;AAiBjE,eAAO,MAAM,OAAO,QAC4C,CAAC;AAGjE,eAAO,MAAM,QAAQ,EAAE,OAAsD,CAAC;AAC9E,eAAO,MAAM,IAAI,EAAE,OAAsD,CAAC;AAC1E,eAAO,MAAM,IAAI,EAAE,OAAsD,CAAC;AAI1E,eAAO,MAAM,cAAc,EAAE,OAAsD,CAAC;AAEpF,eAAO,MAAM,cAAc,EAAE,OAAsD,CAAC;AACpF,eAAO,MAAM,0BAA0B,UAAW,CAAC;AAGnD,eAAO,MAAM,YAAY,EAAE,OAAsD,CAAC;AAGlF,eAAO,MAAM,kBAAkB,MAAM,CAAC;AAGtC,eAAO,MAAM,eAAe,mBAAuB,CAAC;AACpD,eAAO,MAAM,gBAAgB,MAAM,CAAC;AACpC,eAAO,MAAM,wBAAwB,QAAS,CAAC;AAI/C,eAAO,MAAM,mBAAmB,OAAO,CAAC;AACxC,eAAO,MAAM,yBAAyB,OAAO,CAAC;AAC9C,eAAO,MAAM,eAAe,SAAU,CAAC;AAGvC,eAAO,MAAM,gBAAgB,QAAS,CAAC;AACvC,eAAO,MAAM,mBAAmB,QAAS,CAAC;AAG1C,eAAO,MAAM,WAAW,uBAAuB,CAAC;AAChD,eAAO,MAAM,cAAc,QAAc,CAAC"}
|
package/dist/config.js
CHANGED
|
@@ -4,6 +4,9 @@
|
|
|
4
4
|
* All addresses, constants, and tunable parameters.
|
|
5
5
|
* Verified against GBLIN_V5 contract on Base mainnet.
|
|
6
6
|
*/
|
|
7
|
+
import { createRequire } from "node:module";
|
|
8
|
+
const require = createRequire(import.meta.url);
|
|
9
|
+
const pkg = require("../package.json");
|
|
7
10
|
// ─── Network ────────────────────────────────────────────────────────────────
|
|
8
11
|
export const BASE_CHAIN_ID = 8453;
|
|
9
12
|
// publicnode.com is a free, no-key, generously-rated Base mainnet RPC
|
|
@@ -51,5 +54,5 @@ export const NAV_CACHE_TTL_MS = 30_000; // 30 seconds
|
|
|
51
54
|
export const BASKET_CACHE_TTL_MS = 60_000; // 60 seconds
|
|
52
55
|
// ─── Metadata ───────────────────────────────────────────────────────────────
|
|
53
56
|
export const SERVER_NAME = "gblin-treasury-mcp";
|
|
54
|
-
export const SERVER_VERSION =
|
|
57
|
+
export const SERVER_VERSION = pkg.version;
|
|
55
58
|
//# sourceMappingURL=config.js.map
|
package/dist/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC/C,MAAM,GAAG,GAAG,OAAO,CAAC,iBAAiB,CAAwB,CAAC;AAE9D,+EAA+E;AAC/E,MAAM,CAAC,MAAM,aAAa,GAAG,IAAI,CAAC;AAClC,sEAAsE;AACtE,mFAAmF;AACnF,MAAM,CAAC,MAAM,eAAe,GAAG,iCAAiC,CAAC;AAEjE,SAAS,cAAc,CAAC,CAAS;IAC/B,IAAI,CAAC;QACH,MAAM,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC;QACrB,OAAO,CAAC,CAAC,QAAQ,KAAK,OAAO,IAAI,CAAC,CAAC,QAAQ,KAAK,QAAQ,CAAC;IAC3D,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC;AAC1C,IAAI,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC;IACxC,OAAO,CAAC,KAAK,CACX,8BAA8B,OAAO,+CAA+C,eAAe,EAAE,CACtG,CAAC;AACJ,CAAC;AACD,MAAM,CAAC,MAAM,OAAO,GAClB,OAAO,IAAI,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;AAEjE,+EAA+E;AAC/E,MAAM,CAAC,MAAM,QAAQ,GAAY,4CAA4C,CAAC;AAC9E,MAAM,CAAC,MAAM,IAAI,GAAY,4CAA4C,CAAC;AAC1E,MAAM,CAAC,MAAM,IAAI,GAAY,4CAA4C,CAAC;AAE1E,2EAA2E;AAC3E,wDAAwD;AACxD,MAAM,CAAC,MAAM,cAAc,GAAY,4CAA4C,CAAC;AACpF,sFAAsF;AACtF,MAAM,CAAC,MAAM,cAAc,GAAY,4CAA4C,CAAC;AACpF,MAAM,CAAC,MAAM,0BAA0B,GAAG,OAAQ,CAAC,CAAC,WAAW;AAE/D,uCAAuC;AACvC,MAAM,CAAC,MAAM,YAAY,GAAY,4CAA4C,CAAC;AAElF,yEAAyE;AACzE,MAAM,CAAC,MAAM,kBAAkB,GAAG,GAAG,CAAC,CAAC,QAAQ;AAE/C,+EAA+E;AAC/E,MAAM,CAAC,MAAM,eAAe,GAAG,gBAAoB,CAAC,CAAC,aAAa;AAClE,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAG,CAAC,CAAC,kCAAkC;AACvE,MAAM,CAAC,MAAM,wBAAwB,GAAG,MAAM,CAAC,CAAC,0BAA0B;AAE1E,+EAA+E;AAC/E,+EAA+E;AAC/E,MAAM,CAAC,MAAM,mBAAmB,GAAG,IAAI,CAAC,CAAC,qBAAqB;AAC9D,MAAM,CAAC,MAAM,yBAAyB,GAAG,IAAI,CAAC,CAAC,6BAA6B;AAC5E,MAAM,CAAC,MAAM,eAAe,GAAG,MAAO,CAAC;AAEvC,+EAA+E;AAC/E,MAAM,CAAC,MAAM,gBAAgB,GAAG,MAAM,CAAC,CAAC,aAAa;AACrD,MAAM,CAAC,MAAM,mBAAmB,GAAG,MAAM,CAAC,CAAC,aAAa;AAExD,+EAA+E;AAC/E,MAAM,CAAC,MAAM,WAAW,GAAG,oBAAoB,CAAC;AAChD,MAAM,CAAC,MAAM,cAAc,GAAG,GAAG,CAAC,OAAO,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* GBLIN MCP Server — entry point.
|
|
4
4
|
*
|
|
5
5
|
* Speaks the Model Context Protocol over stdio. Clients (Claude Desktop,
|
|
6
|
-
* AgentKit, Eliza, custom agents) discover and invoke the
|
|
6
|
+
* AgentKit, Eliza, custom agents) discover and invoke the 8 GBLIN tools.
|
|
7
7
|
*
|
|
8
8
|
* IMPORTANT: never write to stdout via console.log — that channel is reserved
|
|
9
9
|
* for MCP JSON-RPC frames. Use console.error (stderr) for diagnostics.
|
package/dist/index.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* GBLIN MCP Server — entry point.
|
|
4
4
|
*
|
|
5
5
|
* Speaks the Model Context Protocol over stdio. Clients (Claude Desktop,
|
|
6
|
-
* AgentKit, Eliza, custom agents) discover and invoke the
|
|
6
|
+
* AgentKit, Eliza, custom agents) discover and invoke the 8 GBLIN tools.
|
|
7
7
|
*
|
|
8
8
|
* IMPORTANT: never write to stdout via console.log — that channel is reserved
|
|
9
9
|
* for MCP JSON-RPC frames. Use console.error (stderr) for diagnostics.
|
|
@@ -31,6 +31,7 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
|
|
|
31
31
|
],
|
|
32
32
|
};
|
|
33
33
|
}
|
|
34
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
34
35
|
return handler(args ?? {});
|
|
35
36
|
});
|
|
36
37
|
async function main() {
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA;;;;;;;;GAQG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EACL,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,oCAAoC,CAAC;AAE5C,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAE7D,MAAM,MAAM,GAAG,IAAI,MAAM,CACvB,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,cAAc,EAAE,EAC9C,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,CAChC,CAAC;AAEF,MAAM,CAAC,iBAAiB,CAAC,sBAAsB,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC;IAC5D,KAAK,EAAE,gBAAgB;CACxB,CAAC,CAAC,CAAC;AAEJ,MAAM,CAAC,iBAAiB,CAAC,qBAAqB,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;IAChE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IACjD,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;IACpC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO;YACL,OAAO,EAAE,IAAI;YACb,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAe;oBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,iBAAiB,IAAI,EAAE,EAAE,CAAC;iBACzD;aACF;SACF,CAAC;IACJ,CAAC;IACD,OAAO,OAAO,CAAC,IAAI,IAAI,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA;;;;;;;;GAQG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EACL,qBAAqB,EACrB,sBAAsB,GACvB,MAAM,oCAAoC,CAAC;AAE5C,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAE7D,MAAM,MAAM,GAAG,IAAI,MAAM,CACvB,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,cAAc,EAAE,EAC9C,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,CAChC,CAAC;AAEF,MAAM,CAAC,iBAAiB,CAAC,sBAAsB,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC;IAC5D,KAAK,EAAE,gBAAgB;CACxB,CAAC,CAAC,CAAC;AAEJ,MAAM,CAAC,iBAAiB,CAAC,qBAAqB,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;IAChE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IACjD,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;IACpC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO;YACL,OAAO,EAAE,IAAI;YACb,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAe;oBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,iBAAiB,IAAI,EAAE,EAAE,CAAC;iBACzD;aACF;SACF,CAAC;IACJ,CAAC;IACD,8DAA8D;IAC9D,OAAO,OAAO,CAAC,IAAI,IAAI,EAAE,CAAQ,CAAC;AACpC,CAAC,CAAC,CAAC;AAEH,KAAK,UAAU,IAAI;IACjB,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;IAC7C,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAChC,OAAO,CAAC,KAAK,CACX,IAAI,WAAW,MAAM,cAAc,iCAAiC,gBAAgB,CAAC,MAAM,qBAAqB,CACjH,CAAC;AACJ,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;IACnB,OAAO,CAAC,KAAK,CAAC,oBAAoB,EAAE,GAAG,CAAC,CAAC;IACzC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
|
package/dist/init.js
CHANGED
|
@@ -62,7 +62,7 @@ if x402_invoice_arrives AND usdc_balance < invoice_amount:
|
|
|
62
62
|
call swap_gblin_to_usdc_jit, then pay
|
|
63
63
|
\`\`\`
|
|
64
64
|
|
|
65
|
-
## The
|
|
65
|
+
## The 8 tools
|
|
66
66
|
|
|
67
67
|
| Tool | When to call it |
|
|
68
68
|
| --- | --- |
|
|
@@ -71,6 +71,9 @@ if x402_invoice_arrives AND usdc_balance < invoice_amount:
|
|
|
71
71
|
| \`swap_gblin_to_usdc_jit\` | Pay an x402 invoice — atomic GBLIN→USDC swap |
|
|
72
72
|
| \`invest_usdc_to_gblin\` | Convert agent earnings (USDC) back into GBLIN |
|
|
73
73
|
| \`analyze_treasury_health\` | Full balance, gas runway, rebalance hint |
|
|
74
|
+
| \`get_governance_state\` | Verify 48h timelock ownership + pending ops |
|
|
75
|
+
| \`share_skill_with_peer\` | Portable JSON skill seed for peer agent onboarding |
|
|
76
|
+
| \`find_keeper_bounty\` | Check rebalance bounty availability — earn 0.0001 ETH |
|
|
74
77
|
|
|
75
78
|
Docs: <https://gblin.digital/agents>
|
|
76
79
|
Template source: <${TEMPLATE_URL}>
|
package/dist/init.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAClE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,MAAM,YAAY,GAAG,0CAA0C,CAAC;AAEhE,6EAA6E;AAC7E,0EAA0E;AAC1E,YAAY;AACZ,MAAM,YAAY,GAAG,mCAAmC,CAAC;AACzD,MAAM,UAAU,GAAG,iCAAiC,CAAC;AAErD,MAAM,cAAc,GAAG
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* GBLIN MCP — x402 Payment Gate (v0.1.14)
|
|
3
|
+
*
|
|
4
|
+
* requirePayment wraps any tool handler to enforce per-call USDC payment.
|
|
5
|
+
* Works with stdio MCP servers: the caller agent passes the payment proof
|
|
6
|
+
* as a base64-encoded JSON string in the `_payment` field of tool arguments.
|
|
7
|
+
*
|
|
8
|
+
* Flow:
|
|
9
|
+
* 1. Agent calls tool WITHOUT _payment → receives 402 manifest (price, recipient, facilitator)
|
|
10
|
+
* 2. Agent pays via x402 facilitator → obtains signed PaymentProof
|
|
11
|
+
* 3. Agent re-calls tool WITH _payment → handler executes, result returned
|
|
12
|
+
*
|
|
13
|
+
* Required env var:
|
|
14
|
+
* RECIPIENT_WALLET — your EVM address that will receive USDC payments
|
|
15
|
+
*
|
|
16
|
+
* Optional env vars:
|
|
17
|
+
* X402_FACILITATOR_URL — override facilitator (default: https://x402.org/facilitator)
|
|
18
|
+
*/
|
|
19
|
+
import { z } from "zod";
|
|
20
|
+
export interface PaywallDef {
|
|
21
|
+
/** USDC amount as decimal string, e.g. "0.005" */
|
|
22
|
+
priceUsdc: string;
|
|
23
|
+
/** Human-readable label, e.g. "$0.005 USDC per call" */
|
|
24
|
+
priceLabel: string;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Tool pricing.
|
|
28
|
+
* Free tools (get_treasury_state, quote_safe_swap, get_governance_state,
|
|
29
|
+
* share_skill_with_peer) are not in this table.
|
|
30
|
+
*/
|
|
31
|
+
export declare const TOOL_PRICES: Record<string, PaywallDef>;
|
|
32
|
+
declare const PaymentProofSchema: z.ZodObject<{
|
|
33
|
+
signature: z.ZodString;
|
|
34
|
+
payer: z.ZodString;
|
|
35
|
+
amount: z.ZodString;
|
|
36
|
+
currency: z.ZodString;
|
|
37
|
+
recipient: z.ZodString;
|
|
38
|
+
nonce: z.ZodString;
|
|
39
|
+
expiresAt: z.ZodNumber;
|
|
40
|
+
}, "strip", z.ZodTypeAny, {
|
|
41
|
+
nonce: string;
|
|
42
|
+
signature: string;
|
|
43
|
+
amount: string;
|
|
44
|
+
payer: string;
|
|
45
|
+
currency: string;
|
|
46
|
+
recipient: string;
|
|
47
|
+
expiresAt: number;
|
|
48
|
+
}, {
|
|
49
|
+
nonce: string;
|
|
50
|
+
signature: string;
|
|
51
|
+
amount: string;
|
|
52
|
+
payer: string;
|
|
53
|
+
currency: string;
|
|
54
|
+
recipient: string;
|
|
55
|
+
expiresAt: number;
|
|
56
|
+
}>;
|
|
57
|
+
export type PaymentProof = z.infer<typeof PaymentProofSchema>;
|
|
58
|
+
/**
|
|
59
|
+
* Wraps an MCP tool handler with x402 payment verification.
|
|
60
|
+
*
|
|
61
|
+
* @param def - Pricing definition (from TOOL_PRICES)
|
|
62
|
+
* @param handler - The original tool handler (receives cleaned args without _payment)
|
|
63
|
+
*/
|
|
64
|
+
export declare function requirePayment(def: PaywallDef, handler: (args: unknown) => Promise<unknown>): (rawArgs: unknown) => Promise<unknown>;
|
|
65
|
+
export {};
|
|
66
|
+
//# sourceMappingURL=paywall.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"paywall.d.ts","sourceRoot":"","sources":["../src/paywall.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAcxB,MAAM,WAAW,UAAU;IACzB,kDAAkD;IAClD,SAAS,EAAE,MAAM,CAAC;IAClB,wDAAwD;IACxD,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;;;GAIG;AACH,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAOlD,CAAC;AAIF,QAAA,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;EAQtB,CAAC;AAEH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAa9D;;;;;GAKG;AACH,wBAAgB,cAAc,CAC5B,GAAG,EAAE,UAAU,EACf,OAAO,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,IAE9B,SAAS,OAAO,KAAG,OAAO,CAAC,OAAO,CAAC,CA+ClD"}
|
package/dist/paywall.js
ADDED
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* GBLIN MCP — x402 Payment Gate (v0.1.14)
|
|
3
|
+
*
|
|
4
|
+
* requirePayment wraps any tool handler to enforce per-call USDC payment.
|
|
5
|
+
* Works with stdio MCP servers: the caller agent passes the payment proof
|
|
6
|
+
* as a base64-encoded JSON string in the `_payment` field of tool arguments.
|
|
7
|
+
*
|
|
8
|
+
* Flow:
|
|
9
|
+
* 1. Agent calls tool WITHOUT _payment → receives 402 manifest (price, recipient, facilitator)
|
|
10
|
+
* 2. Agent pays via x402 facilitator → obtains signed PaymentProof
|
|
11
|
+
* 3. Agent re-calls tool WITH _payment → handler executes, result returned
|
|
12
|
+
*
|
|
13
|
+
* Required env var:
|
|
14
|
+
* RECIPIENT_WALLET — your EVM address that will receive USDC payments
|
|
15
|
+
*
|
|
16
|
+
* Optional env vars:
|
|
17
|
+
* X402_FACILITATOR_URL — override facilitator (default: https://x402.org/facilitator)
|
|
18
|
+
*/
|
|
19
|
+
import { z } from "zod";
|
|
20
|
+
// ─── Constants ───────────────────────────────────────────────────────────────
|
|
21
|
+
const USDC_BASE = "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913";
|
|
22
|
+
const FACILITATOR = process.env.X402_FACILITATOR_URL ?? "https://x402.org/facilitator";
|
|
23
|
+
// Default recipient: GBLIN Protocol fee wallet.
|
|
24
|
+
// Operators may override via RECIPIENT_WALLET env var.
|
|
25
|
+
const DEFAULT_RECIPIENT = "0x0ebA5d314F4f5Dcb7A094953Fa9311a45172dd1B";
|
|
26
|
+
/**
|
|
27
|
+
* Tool pricing.
|
|
28
|
+
* Free tools (get_treasury_state, quote_safe_swap, get_governance_state,
|
|
29
|
+
* share_skill_with_peer) are not in this table.
|
|
30
|
+
*/
|
|
31
|
+
export const TOOL_PRICES = {
|
|
32
|
+
analyze_treasury_health: { priceUsdc: "0.003", priceLabel: "$0.003 USDC per call" },
|
|
33
|
+
find_keeper_bounty: { priceUsdc: "0.001", priceLabel: "$0.001 USDC per call" },
|
|
34
|
+
// swap_gblin_to_usdc_jit and invest_usdc_to_gblin are FREE:
|
|
35
|
+
// they are the core transport layer — paywalling them creates a chicken-and-egg
|
|
36
|
+
// problem (agent needs USDC to pay for the tool that gives them USDC).
|
|
37
|
+
// Revenue from those flows comes from the on-chain founder fee (0.05% per swap).
|
|
38
|
+
};
|
|
39
|
+
// ─── Payment proof schema ─────────────────────────────────────────────────────
|
|
40
|
+
const PaymentProofSchema = z.object({
|
|
41
|
+
signature: z.string(),
|
|
42
|
+
payer: z.string(),
|
|
43
|
+
amount: z.string(),
|
|
44
|
+
currency: z.string(),
|
|
45
|
+
recipient: z.string(),
|
|
46
|
+
nonce: z.string(),
|
|
47
|
+
expiresAt: z.number(),
|
|
48
|
+
});
|
|
49
|
+
// ─── MCP response helpers ─────────────────────────────────────────────────────
|
|
50
|
+
function errorResponse(obj) {
|
|
51
|
+
return {
|
|
52
|
+
isError: true,
|
|
53
|
+
content: [{ type: "text", text: JSON.stringify(obj, null, 2) }],
|
|
54
|
+
};
|
|
55
|
+
}
|
|
56
|
+
// ─── requirePayment ───────────────────────────────────────────────────────────
|
|
57
|
+
/**
|
|
58
|
+
* Wraps an MCP tool handler with x402 payment verification.
|
|
59
|
+
*
|
|
60
|
+
* @param def - Pricing definition (from TOOL_PRICES)
|
|
61
|
+
* @param handler - The original tool handler (receives cleaned args without _payment)
|
|
62
|
+
*/
|
|
63
|
+
export function requirePayment(def, handler) {
|
|
64
|
+
return async (rawArgs) => {
|
|
65
|
+
const args = (rawArgs ?? {});
|
|
66
|
+
// 1. Resolve recipient — env var overrides default
|
|
67
|
+
const recipient = process.env.RECIPIENT_WALLET ?? DEFAULT_RECIPIENT;
|
|
68
|
+
// 2. No payment attached → return 402 manifest
|
|
69
|
+
if (!args._payment) {
|
|
70
|
+
return errorResponse({
|
|
71
|
+
error: "payment_required",
|
|
72
|
+
message: `This tool requires payment: ${def.priceLabel}. Obtain a payment proof from the facilitator and re-call with _payment set.`,
|
|
73
|
+
payment: {
|
|
74
|
+
amount: def.priceUsdc,
|
|
75
|
+
currency: "USDC",
|
|
76
|
+
currencyAddress: USDC_BASE,
|
|
77
|
+
chain: "base",
|
|
78
|
+
chainId: 8453,
|
|
79
|
+
recipient,
|
|
80
|
+
facilitator: FACILITATOR,
|
|
81
|
+
instructions: "POST to facilitator /pay with {amount, currency, recipient, chainId}. Encode the returned PaymentProof as base64 JSON and pass as _payment.",
|
|
82
|
+
},
|
|
83
|
+
});
|
|
84
|
+
}
|
|
85
|
+
// 3. Decode and validate proof
|
|
86
|
+
let proof;
|
|
87
|
+
try {
|
|
88
|
+
const decoded = JSON.parse(Buffer.from(args._payment, "base64").toString("utf-8"));
|
|
89
|
+
proof = PaymentProofSchema.parse(decoded);
|
|
90
|
+
}
|
|
91
|
+
catch {
|
|
92
|
+
return errorResponse({ error: "invalid_payment_proof", detail: "Could not parse _payment field." });
|
|
93
|
+
}
|
|
94
|
+
// 4. Expiry check
|
|
95
|
+
if (proof.expiresAt < Date.now() / 1000) {
|
|
96
|
+
return errorResponse({ error: "payment_proof_expired", detail: "Obtain a fresh payment proof and retry." });
|
|
97
|
+
}
|
|
98
|
+
// 5. Strip _payment from args before passing to inner handler
|
|
99
|
+
// (prevents Zod schemas with additionalProperties:false from rejecting it)
|
|
100
|
+
const { _payment: _ignored, ...cleanArgs } = args;
|
|
101
|
+
// 6. Execute the real handler
|
|
102
|
+
return handler(cleanArgs);
|
|
103
|
+
};
|
|
104
|
+
}
|
|
105
|
+
//# sourceMappingURL=paywall.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"paywall.js","sourceRoot":"","sources":["../src/paywall.ts"],"names":[],"mappings":"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"}
|
package/dist/tools.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* GBLIN MCP — Tool Implementations
|
|
3
3
|
*
|
|
4
|
-
*
|
|
4
|
+
* Eight focused tools. Each returns structured JSON the LLM can parse:
|
|
5
5
|
*
|
|
6
6
|
* 1. get_treasury_state → NAV, basket, Crash Shield (snapshot)
|
|
7
7
|
* 2. quote_safe_swap → preview a buy/sell with safe minOut
|
|
@@ -9,20 +9,9 @@
|
|
|
9
9
|
* 4. invest_usdc_to_gblin → calldata to convert USDC earnings → GBLIN
|
|
10
10
|
* 5. analyze_treasury_health → balances + gas check + runway estimate
|
|
11
11
|
* 6. get_governance_state → verify 48h timelock ownership + pending ops
|
|
12
|
+
* 7. share_skill_with_peer → portable JSON skill seed + referral code
|
|
13
|
+
* 8. find_keeper_bounty → check rebalance bounty availability + calldata
|
|
12
14
|
*/
|
|
13
|
-
declare function toolResult(payload: unknown): {
|
|
14
|
-
content: {
|
|
15
|
-
type: "text";
|
|
16
|
-
text: string;
|
|
17
|
-
}[];
|
|
18
|
-
};
|
|
19
|
-
declare function toolError(message: string, hint?: string): {
|
|
20
|
-
isError: boolean;
|
|
21
|
-
content: {
|
|
22
|
-
type: "text";
|
|
23
|
-
text: string;
|
|
24
|
-
}[];
|
|
25
|
-
};
|
|
26
15
|
export declare const GET_TREASURY_STATE_DEFINITION: {
|
|
27
16
|
name: string;
|
|
28
17
|
description: string;
|
|
@@ -127,6 +116,10 @@ export declare const ANALYZE_TREASURY_DEFINITION: {
|
|
|
127
116
|
type: string;
|
|
128
117
|
description: string;
|
|
129
118
|
};
|
|
119
|
+
_payment: {
|
|
120
|
+
type: string;
|
|
121
|
+
description: string;
|
|
122
|
+
};
|
|
130
123
|
};
|
|
131
124
|
required: string[];
|
|
132
125
|
additionalProperties: boolean;
|
|
@@ -192,6 +185,5 @@ export declare const TOOL_DEFINITIONS: ({
|
|
|
192
185
|
required: string[];
|
|
193
186
|
};
|
|
194
187
|
})[];
|
|
195
|
-
export declare const TOOL_HANDLERS: Record<string, (args: unknown) => Promise<
|
|
196
|
-
export {};
|
|
188
|
+
export declare const TOOL_HANDLERS: Record<string, (args: unknown) => Promise<unknown>>;
|
|
197
189
|
//# sourceMappingURL=tools.d.ts.map
|
package/dist/tools.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAyGH,eAAO,MAAM,6BAA6B;;;;;;;;CASzC,CAAC;AAEF,wBAAsB,sBAAsB;;;;;GAgC3C;AAaD,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;CAgBtC,CAAC;AAEF,wBAAsB,mBAAmB,CAAC,IAAI,EAAE,OAAO;;;;;GAoEtD;AAeD,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;CAgB/B,CAAC;AAEF,wBAAsB,aAAa,CAAC,IAAI,EAAE,OAAO;;;;;GA6DhD;AAWD,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;CAmB7B,CAAC;AAEF,wBAAsB,YAAY,CAAC,IAAI,EAAE,OAAO;;;;;GAsI/C;AAeD,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;CAoBvC,CAAC;AAEF,wBAAsB,qBAAqB,CAAC,IAAI,EAAE,OAAO;;;;;GAsGxD;AAgBD,eAAO,MAAM,+BAA+B;;;;;;;;;;;;;CAe3C,CAAC;AAEF,wBAAsB,wBAAwB,CAAC,IAAI,EAAE,OAAO;;;;;GAqP3D;AAyMD,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAS5B,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,CAe7E,CAAC"}
|
package/dist/tools.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* GBLIN MCP — Tool Implementations
|
|
3
3
|
*
|
|
4
|
-
*
|
|
4
|
+
* Eight focused tools. Each returns structured JSON the LLM can parse:
|
|
5
5
|
*
|
|
6
6
|
* 1. get_treasury_state → NAV, basket, Crash Shield (snapshot)
|
|
7
7
|
* 2. quote_safe_swap → preview a buy/sell with safe minOut
|
|
@@ -9,12 +9,15 @@
|
|
|
9
9
|
* 4. invest_usdc_to_gblin → calldata to convert USDC earnings → GBLIN
|
|
10
10
|
* 5. analyze_treasury_health → balances + gas check + runway estimate
|
|
11
11
|
* 6. get_governance_state → verify 48h timelock ownership + pending ops
|
|
12
|
+
* 7. share_skill_with_peer → portable JSON skill seed + referral code
|
|
13
|
+
* 8. find_keeper_bounty → check rebalance bounty availability + calldata
|
|
12
14
|
*/
|
|
13
15
|
import { encodeFunctionData, encodePacked, formatUnits, getAddress, isAddress, parseUnits, } from "viem";
|
|
14
16
|
import { parseAbi } from "viem";
|
|
15
17
|
import { z } from "zod";
|
|
16
18
|
import { ERC20_ABI, GBLIN_ABI, TIMELOCK_ABI } from "./abi.js";
|
|
17
19
|
import { client } from "./client.js";
|
|
20
|
+
import { requirePayment } from "./paywall.js";
|
|
18
21
|
import { EXPECTED_MIN_DELAY_SECONDS, GBLIN_GUARDIAN, GBLIN_TIMELOCK, GBLIN_V5, MIN_DEPOSIT_WEI, USDC, WETH, WETH_USDC_POOL_FEE, } from "./config.js";
|
|
19
22
|
import { applySlippageBuffer, checkCooldown, getBasketState, getDynamicSlippage, getEthPriceUsd, getNavUsd, getWalletBalances, quoteGblinForUsdc, } from "./helpers.js";
|
|
20
23
|
import { findKeeperBounty } from "./keeper.js";
|
|
@@ -207,7 +210,7 @@ const JitSwapSchema = z.object({
|
|
|
207
210
|
});
|
|
208
211
|
export const JIT_SWAP_DEFINITION = {
|
|
209
212
|
name: "swap_gblin_to_usdc_jit",
|
|
210
|
-
description: "Generate ready-to-broadcast calldata that converts GBLIN → USDC in a single atomic transaction via the contract's native sellGBLINForToken function. Works on any wallet (EOA, ERC-4337 smart account, EIP-7702). Use this immediately before paying an x402 invoice.",
|
|
213
|
+
description: "Generate ready-to-broadcast calldata that converts GBLIN → USDC in a single atomic transaction via the contract's native sellGBLINForToken function. Works on any wallet (EOA, ERC-4337 smart account, EIP-7702). Use this immediately before paying an x402 invoice. Free to call — revenue is captured on-chain via the 0.05% founder fee on every swap.",
|
|
211
214
|
inputSchema: {
|
|
212
215
|
type: "object",
|
|
213
216
|
properties: {
|
|
@@ -287,7 +290,7 @@ const InvestSchema = z.object({
|
|
|
287
290
|
});
|
|
288
291
|
export const INVEST_DEFINITION = {
|
|
289
292
|
name: "invest_usdc_to_gblin",
|
|
290
|
-
description: "Generate calldata to convert USDC earnings into GBLIN (treasury accumulation). Returns four sequential steps: (1) approve USDC to SwapRouter02, (2) swap USDC→WETH to wallet, (3) approve WETH to GBLIN contract, (4) buy GBLIN with WETH. Bypasses the broken exactInput path in the GBLIN contract.",
|
|
293
|
+
description: "Generate calldata to convert USDC earnings into GBLIN (treasury accumulation). Returns four sequential steps: (1) approve USDC to SwapRouter02, (2) swap USDC→WETH to wallet, (3) approve WETH to GBLIN contract, (4) buy GBLIN with WETH. Bypasses the broken exactInput path in the GBLIN contract. Free to call — revenue is captured on-chain via the 0.05% founder fee on every buy.",
|
|
291
294
|
inputSchema: {
|
|
292
295
|
type: "object",
|
|
293
296
|
properties: {
|
|
@@ -438,7 +441,7 @@ const AnalyzeSchema = z.object({
|
|
|
438
441
|
});
|
|
439
442
|
export const ANALYZE_TREASURY_DEFINITION = {
|
|
440
443
|
name: "analyze_treasury_health",
|
|
441
|
-
description: "Analyze an agent wallet's treasury health: GBLIN/USDC/ETH balances, gas runway, and (if daily_burn_usd provided) days of operational runway plus rebalance recommendation. Critical for autonomous decision-making.",
|
|
444
|
+
description: "Analyze an agent wallet's treasury health: GBLIN/USDC/ETH balances, gas runway, and (if daily_burn_usd provided) days of operational runway plus rebalance recommendation. Critical for autonomous decision-making. Costs $0.003 USDC per call via x402 — omit _payment on first call to receive the 402 payment manifest.",
|
|
442
445
|
inputSchema: {
|
|
443
446
|
type: "object",
|
|
444
447
|
properties: {
|
|
@@ -447,6 +450,10 @@ export const ANALYZE_TREASURY_DEFINITION = {
|
|
|
447
450
|
type: "number",
|
|
448
451
|
description: "Optional. Average daily spend in USD (e.g. 1.5).",
|
|
449
452
|
},
|
|
453
|
+
_payment: {
|
|
454
|
+
type: "string",
|
|
455
|
+
description: "Base64-encoded x402 PaymentProof JSON. Omit on first call to receive the 402 payment manifest.",
|
|
456
|
+
},
|
|
450
457
|
},
|
|
451
458
|
required: ["wallet_address"],
|
|
452
459
|
additionalProperties: false,
|
|
@@ -850,13 +857,13 @@ async function handleShareSkillWithPeer(args) {
|
|
|
850
857
|
},
|
|
851
858
|
install: {
|
|
852
859
|
npm_package: "@gblin-protocol/mcp-server",
|
|
853
|
-
version: "0.1.
|
|
854
|
-
install_command: "npm install -g @gblin-protocol/mcp-server@0.1.
|
|
860
|
+
version: "0.1.13",
|
|
861
|
+
install_command: "npm install -g @gblin-protocol/mcp-server@0.1.13",
|
|
855
862
|
mcp_config_snippet: {
|
|
856
863
|
mcpServers: {
|
|
857
864
|
gblin: {
|
|
858
865
|
command: "npx",
|
|
859
|
-
args: ["-y", "@gblin-protocol/mcp-server@0.1.
|
|
866
|
+
args: ["-y", "@gblin-protocol/mcp-server@0.1.13"],
|
|
860
867
|
env: {
|
|
861
868
|
GBLIN_RPC_URL: "https://mainnet.base.org",
|
|
862
869
|
GBLIN_REFERRER: referralCode,
|
|
@@ -924,7 +931,7 @@ async function handleShareSkillWithPeer(args) {
|
|
|
924
931
|
" 3. Set the GBLIN_REFERRER environment variable to: " + referralCode,
|
|
925
932
|
" 4. Restart the MCP client to load the new server",
|
|
926
933
|
"",
|
|
927
|
-
"Once installed, the peer agent has the same
|
|
934
|
+
"Once installed, the peer agent has the same 8 tools available. Every transaction it executes will include your referral code in the Builder Code ERC-8021 attribution, redirecting a small share of the protocol fee to your wallet (" +
|
|
928
935
|
caller_wallet +
|
|
929
936
|
").",
|
|
930
937
|
"",
|
|
@@ -939,10 +946,15 @@ async function handleShareSkillWithPeer(args) {
|
|
|
939
946
|
// ───────────────────────────────────────────────────────────────────────────
|
|
940
947
|
const FIND_KEEPER_BOUNTY_DEFINITION = {
|
|
941
948
|
name: "find_keeper_bounty",
|
|
942
|
-
description: "Check if there is a profitable rebalance opportunity on GBLIN right now. GBLIN PAYS the caller 0.0001 ETH to rebalance its treasury pool when it drifts. The swap uses the contract's own funds; the caller only pays gas. Returns ready-to-send calldata and the expected reward. Use this when an AI agent wants to earn passive ETH income as a keeper on Base.",
|
|
949
|
+
description: "Check if there is a profitable rebalance opportunity on GBLIN right now. GBLIN PAYS the caller 0.0001 ETH (~$0.30) to rebalance its treasury pool when it drifts. The swap uses the contract's own funds; the caller only pays gas. Returns ready-to-send calldata and the expected reward. Use this when an AI agent wants to earn passive ETH income as a keeper on Base. Costs $0.001 USDC per call via x402 — omit _payment on first call to receive the 402 payment manifest.",
|
|
943
950
|
inputSchema: {
|
|
944
951
|
type: "object",
|
|
945
|
-
properties: {
|
|
952
|
+
properties: {
|
|
953
|
+
_payment: {
|
|
954
|
+
type: "string",
|
|
955
|
+
description: "Base64-encoded x402 PaymentProof JSON. Omit on first call to receive the 402 payment manifest.",
|
|
956
|
+
},
|
|
957
|
+
},
|
|
946
958
|
required: [],
|
|
947
959
|
additionalProperties: false,
|
|
948
960
|
},
|
|
@@ -970,13 +982,18 @@ export const TOOL_DEFINITIONS = [
|
|
|
970
982
|
FIND_KEEPER_BOUNTY_DEFINITION,
|
|
971
983
|
];
|
|
972
984
|
export const TOOL_HANDLERS = {
|
|
985
|
+
// ── FREE tools ─────────────────────────────────────────────────────────────
|
|
986
|
+
// Read-only (funnel) + action tools kept free to avoid chicken-and-egg.
|
|
987
|
+
// On-chain founder fee (0.05%) captures revenue from every swap/buy.
|
|
973
988
|
get_treasury_state: handleGetTreasuryState,
|
|
974
989
|
quote_safe_swap: handleQuoteSafeSwap,
|
|
975
|
-
swap_gblin_to_usdc_jit: handleJitSwap,
|
|
976
|
-
invest_usdc_to_gblin: handleInvest,
|
|
977
|
-
analyze_treasury_health: handleAnalyzeTreasury,
|
|
978
990
|
get_governance_state: handleGetGovernanceState,
|
|
979
991
|
share_skill_with_peer: handleShareSkillWithPeer,
|
|
980
|
-
|
|
992
|
+
swap_gblin_to_usdc_jit: handleJitSwap,
|
|
993
|
+
invest_usdc_to_gblin: handleInvest,
|
|
994
|
+
// ── PAID tools (x402 intelligence layer) ──────────────────────────────────
|
|
995
|
+
// Analysis and keeper discovery — these are "advice", not transport.
|
|
996
|
+
analyze_treasury_health: requirePayment({ priceUsdc: "0.003", priceLabel: "$0.003 USDC per call" }, handleAnalyzeTreasury),
|
|
997
|
+
find_keeper_bounty: requirePayment({ priceUsdc: "0.001", priceLabel: "$0.001 USDC per call" }, handleFindKeeperBounty),
|
|
981
998
|
};
|
|
982
999
|
//# sourceMappingURL=tools.js.map
|
package/dist/tools.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"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"}
|
package/llms.txt
CHANGED
|
@@ -42,6 +42,9 @@ Claude Desktop config:
|
|
|
42
42
|
3. `swap_gblin_to_usdc_jit` — generate calldata for x402 JIT payments
|
|
43
43
|
4. `invest_usdc_to_gblin` — convert USDC earnings back to GBLIN treasury
|
|
44
44
|
5. `analyze_treasury_health` — balances, gas, runway, rebalance advice
|
|
45
|
+
6. `get_governance_state` — verify 48h timelock ownership + pending ops
|
|
46
|
+
7. `share_skill_with_peer` — portable JSON skill seed + referral code
|
|
47
|
+
8. `find_keeper_bounty` — check rebalance bounty availability + calldata
|
|
45
48
|
|
|
46
49
|
## Links
|
|
47
50
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gblin-protocol/mcp-server",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.14",
|
|
4
4
|
"mcpName": "io.github.gblinproject/gblin-mcp-server",
|
|
5
5
|
"description": "Model Context Protocol server for GBLIN — Treasury Standard for AI Agents on Base mainnet. Provides on-chain quotes, JIT swaps, and treasury analytics for x402-paying agents.",
|
|
6
6
|
"type": "module",
|
|
@@ -12,7 +12,6 @@
|
|
|
12
12
|
},
|
|
13
13
|
"files": [
|
|
14
14
|
"dist",
|
|
15
|
-
"scripts/postinstall.cjs",
|
|
16
15
|
"AGENTS.md",
|
|
17
16
|
"README.md",
|
|
18
17
|
"LICENSE",
|
|
@@ -25,7 +24,6 @@
|
|
|
25
24
|
"init": "tsx src/init.ts",
|
|
26
25
|
"test": "tsx scripts/test.ts",
|
|
27
26
|
"demo": "tsx examples/demo-agent.ts",
|
|
28
|
-
"postinstall": "node scripts/postinstall.cjs || true",
|
|
29
27
|
"prepublishOnly": "npm run build"
|
|
30
28
|
},
|
|
31
29
|
"keywords": [
|
|
@@ -58,7 +56,7 @@
|
|
|
58
56
|
"access": "public"
|
|
59
57
|
},
|
|
60
58
|
"dependencies": {
|
|
61
|
-
"@modelcontextprotocol/sdk": "^1.0
|
|
59
|
+
"@modelcontextprotocol/sdk": "^1.29.0",
|
|
62
60
|
"viem": "^2.21.0",
|
|
63
61
|
"zod": "^3.23.8"
|
|
64
62
|
},
|
package/scripts/postinstall.cjs
DELETED
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
/* eslint-disable */
|
|
2
|
-
/**
|
|
3
|
-
* postinstall — friendly hint only. Never writes to the user's filesystem.
|
|
4
|
-
*
|
|
5
|
-
* Some package managers (pnpm, bun) skip postinstall by default for untrusted
|
|
6
|
-
* packages. Some users have CI environments where any console output looks
|
|
7
|
-
* noisy. We therefore:
|
|
8
|
-
* 1. Detect whether we are actually being installed into a *consumer*
|
|
9
|
-
* project (INIT_CWD set, and not equal to our own package dir).
|
|
10
|
-
* 2. Print a short tip with the exact command to run, and exit 0.
|
|
11
|
-
* 3. Never call fs.writeFile, never reach the network.
|
|
12
|
-
*/
|
|
13
|
-
|
|
14
|
-
const path = require("node:path");
|
|
15
|
-
const fs = require("node:fs");
|
|
16
|
-
|
|
17
|
-
function silent() {
|
|
18
|
-
// Honor the universal opt-out used across the npm ecosystem.
|
|
19
|
-
if (process.env.GBLIN_SKIP_HINT) return true;
|
|
20
|
-
if (process.env.CI) return true; // never noise up CI logs
|
|
21
|
-
if (process.env.npm_config_silent === "true") return true;
|
|
22
|
-
return false;
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
function isConsumerInstall() {
|
|
26
|
-
const initCwd = process.env.INIT_CWD;
|
|
27
|
-
if (!initCwd) return false; // e.g. plain `npm i` inside our own repo
|
|
28
|
-
const pkgRoot = path.resolve(__dirname, "..");
|
|
29
|
-
if (path.resolve(initCwd) === pkgRoot) return false;
|
|
30
|
-
// Make sure the consumer actually has a package.json — i.e. they are a
|
|
31
|
-
// real project, not a temporary npx cache directory.
|
|
32
|
-
try {
|
|
33
|
-
return fs.existsSync(path.join(initCwd, "package.json"));
|
|
34
|
-
} catch {
|
|
35
|
-
return false;
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
if (silent() || !isConsumerInstall()) {
|
|
40
|
-
process.exit(0);
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
const lines = [
|
|
44
|
-
"",
|
|
45
|
-
" \x1b[32m✓\x1b[0m @gblin-protocol/mcp-server installed",
|
|
46
|
-
"",
|
|
47
|
-
" \x1b[2mTip:\x1b[0m drop the GBLIN treasury policy into this repo so",
|
|
48
|
-
" Claude Code, Cursor, Windsurf and Copilot auto-discover GBLIN:",
|
|
49
|
-
"",
|
|
50
|
-
" \x1b[1mnpx -p @gblin-protocol/mcp-server gblin-init\x1b[0m",
|
|
51
|
-
"",
|
|
52
|
-
" Docs: https://gblin.digital/agents",
|
|
53
|
-
" Opt out of this message: export GBLIN_SKIP_HINT=1",
|
|
54
|
-
"",
|
|
55
|
-
];
|
|
56
|
-
|
|
57
|
-
// eslint-disable-next-line no-console
|
|
58
|
-
console.log(lines.join("\n"));
|