@aifinpay/mcp 0.1.0-alpha.2 → 0.1.0-alpha.3
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/bin/aifinpay-mcp.js +1 -1
- package/dist/index.d.ts +5 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -3
- package/dist/index.js.map +1 -1
- package/dist/server.d.ts +10 -5
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +23 -13
- package/dist/server.js.map +1 -1
- package/dist/tools/agent-address.d.ts.map +1 -1
- package/dist/tools/agent-address.js +13 -6
- package/dist/tools/agent-address.js.map +1 -1
- package/dist/tools/agent-call.d.ts +60 -0
- package/dist/tools/agent-call.d.ts.map +1 -0
- package/dist/tools/agent-call.js +108 -0
- package/dist/tools/agent-call.js.map +1 -0
- package/dist/tools/agent-quote.js +1 -1
- package/dist/tools/agent-quote.js.map +1 -1
- package/dist/tools/pay-with-split.js +2 -2
- package/dist/tools/pay-with-split.js.map +1 -1
- package/dist/tools/payable-fetch.d.ts.map +1 -1
- package/dist/tools/payable-fetch.js +6 -3
- package/dist/tools/payable-fetch.js.map +1 -1
- package/package.json +19 -6
package/bin/aifinpay-mcp.js
CHANGED
|
@@ -13,6 +13,6 @@
|
|
|
13
13
|
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
|
|
14
14
|
import { createServer, loadConfigFromEnv } from "../dist/index.js";
|
|
15
15
|
|
|
16
|
-
const { server } = createServer(loadConfigFromEnv());
|
|
16
|
+
const { server } = await createServer(loadConfigFromEnv());
|
|
17
17
|
const transport = new StdioServerTransport();
|
|
18
18
|
await server.connect(transport);
|
package/dist/index.d.ts
CHANGED
|
@@ -3,9 +3,11 @@
|
|
|
3
3
|
* loop as agent-callable tools.
|
|
4
4
|
*
|
|
5
5
|
* Tools:
|
|
6
|
-
* -
|
|
7
|
-
* -
|
|
8
|
-
* -
|
|
6
|
+
* - agent_address() — return Solana + EVM addresses to fund
|
|
7
|
+
* - agent_call(provider, body) — registry-resolved paid call (Polygon settle)
|
|
8
|
+
* - payable_fetch(url, opts?) — raw-URL paid fetch (legacy Solana path)
|
|
9
|
+
* - agent_quote(url) — inspect 402 cost before paying
|
|
10
|
+
* - pay_with_split / quote_split — direct B2BSplitter invoice (advanced)
|
|
9
11
|
*
|
|
10
12
|
* Quick start (stdio transport for Claude Desktop / MCP-aware runtimes):
|
|
11
13
|
*
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,YAAY,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC/C,YAAY,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -3,9 +3,11 @@
|
|
|
3
3
|
* loop as agent-callable tools.
|
|
4
4
|
*
|
|
5
5
|
* Tools:
|
|
6
|
-
* -
|
|
7
|
-
* -
|
|
8
|
-
* -
|
|
6
|
+
* - agent_address() — return Solana + EVM addresses to fund
|
|
7
|
+
* - agent_call(provider, body) — registry-resolved paid call (Polygon settle)
|
|
8
|
+
* - payable_fetch(url, opts?) — raw-URL paid fetch (legacy Solana path)
|
|
9
|
+
* - agent_quote(url) — inspect 402 cost before paying
|
|
10
|
+
* - pay_with_split / quote_split — direct B2BSplitter invoice (advanced)
|
|
9
11
|
*
|
|
10
12
|
* Quick start (stdio transport for Claude Desktop / MCP-aware runtimes):
|
|
11
13
|
*
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAG3C,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC"}
|
package/dist/server.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { AiFinPayAgent } from "@aifinpay/agent";
|
|
2
2
|
import { Server } from "@modelcontextprotocol/sdk/server/index.js";
|
|
3
3
|
import type { McpConfig } from "./config.js";
|
|
4
4
|
/**
|
|
@@ -6,8 +6,13 @@ import type { McpConfig } from "./config.js";
|
|
|
6
6
|
*
|
|
7
7
|
* Returned server is unstarted — caller wires up a transport (stdio, SSE,
|
|
8
8
|
* etc.) via the official `@modelcontextprotocol/sdk` package.
|
|
9
|
+
*
|
|
10
|
+
* As of 0.1.0-alpha.3 the wrapped identity is `AiFinPayAgent` — dual-chain
|
|
11
|
+
* (Solana base58 pubkey AND Polygon EVM address from one secret). Tools
|
|
12
|
+
* that previously called legacy `Agent` methods now reach them via
|
|
13
|
+
* `agent.inner.*`.
|
|
9
14
|
*/
|
|
10
|
-
export declare function createServer(config?: McpConfig): {
|
|
15
|
+
export declare function createServer(config?: McpConfig): Promise<{
|
|
11
16
|
server: Server<{
|
|
12
17
|
method: string;
|
|
13
18
|
params?: {
|
|
@@ -42,10 +47,10 @@ export declare function createServer(config?: McpConfig): {
|
|
|
42
47
|
} | undefined;
|
|
43
48
|
} | undefined;
|
|
44
49
|
}>;
|
|
45
|
-
agent:
|
|
46
|
-
}
|
|
50
|
+
agent: AiFinPayAgent;
|
|
51
|
+
}>;
|
|
47
52
|
export interface ToolContext {
|
|
48
|
-
agent:
|
|
53
|
+
agent: AiFinPayAgent;
|
|
49
54
|
config: McpConfig;
|
|
50
55
|
log: (level: "info" | "warn" | "error", msg: string) => void;
|
|
51
56
|
}
|
package/dist/server.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAS,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AAKnE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAY7C;;;;;;;;;;GAUG;AACH,wBAAsB,YAAY,CAAC,MAAM,GAAE,SAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgFxD;AAED,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,aAAa,CAAC;IACrB,MAAM,EAAE,SAAS,CAAC;IAClB,GAAG,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;CAC9D"}
|
package/dist/server.js
CHANGED
|
@@ -1,40 +1,47 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { AiFinPayAgent } from "@aifinpay/agent";
|
|
2
2
|
import { Server } from "@modelcontextprotocol/sdk/server/index.js";
|
|
3
3
|
import { CallToolRequestSchema, ListToolsRequestSchema, } from "@modelcontextprotocol/sdk/types.js";
|
|
4
4
|
import { payableFetchTool, runPayableFetch } from "./tools/payable-fetch.js";
|
|
5
5
|
import { agentAddressTool, runAgentAddress } from "./tools/agent-address.js";
|
|
6
6
|
import { agentQuoteTool, runAgentQuote } from "./tools/agent-quote.js";
|
|
7
|
+
import { agentCallTool, runAgentCall } from "./tools/agent-call.js";
|
|
7
8
|
import { payWithSplitTool, runPayWithSplit, quoteSplitTool, runQuoteSplit, } from "./tools/pay-with-split.js";
|
|
8
9
|
/**
|
|
9
10
|
* Build an MCP server that wraps the AiFinPay agent SDK as MCP tools.
|
|
10
11
|
*
|
|
11
12
|
* Returned server is unstarted — caller wires up a transport (stdio, SSE,
|
|
12
13
|
* etc.) via the official `@modelcontextprotocol/sdk` package.
|
|
14
|
+
*
|
|
15
|
+
* As of 0.1.0-alpha.3 the wrapped identity is `AiFinPayAgent` — dual-chain
|
|
16
|
+
* (Solana base58 pubkey AND Polygon EVM address from one secret). Tools
|
|
17
|
+
* that previously called legacy `Agent` methods now reach them via
|
|
18
|
+
* `agent.inner.*`.
|
|
13
19
|
*/
|
|
14
|
-
export function createServer(config = {}) {
|
|
20
|
+
export async function createServer(config = {}) {
|
|
15
21
|
const log = config.logFn ?? defaultLog;
|
|
16
22
|
// Agent identity: load from env secret if provided, else generate one
|
|
17
23
|
// and print to stderr so the human knows what to fund.
|
|
18
24
|
const agent = config.agentSecretB58
|
|
19
|
-
?
|
|
25
|
+
? await AiFinPayAgent.fromSolanaSecret(config.agentSecretB58, {
|
|
20
26
|
baseUrl: config.baseUrl,
|
|
21
27
|
timeoutMs: config.timeoutMs,
|
|
22
28
|
})
|
|
23
|
-
: (() => {
|
|
24
|
-
const a =
|
|
29
|
+
: await (async () => {
|
|
30
|
+
const a = await AiFinPayAgent.new({
|
|
25
31
|
baseUrl: config.baseUrl,
|
|
26
32
|
timeoutMs: config.timeoutMs,
|
|
27
33
|
});
|
|
28
34
|
log("warn", `[aifinpay-mcp] no AIFINPAY_AGENT_SECRET set — generated EPHEMERAL agent.\n` +
|
|
29
|
-
`
|
|
30
|
-
`
|
|
31
|
-
`
|
|
35
|
+
` solana_address: ${a.solanaAddress}\n` +
|
|
36
|
+
` evm_address: ${a.evmAddress}\n` +
|
|
37
|
+
` solana_secret: ${a.inner.secretB58}\n` +
|
|
38
|
+
` >> Save the secret to AIFINPAY_AGENT_SECRET to keep the agent across restarts.`);
|
|
32
39
|
return a;
|
|
33
40
|
})();
|
|
34
|
-
log("info", `[aifinpay-mcp] agent
|
|
41
|
+
log("info", `[aifinpay-mcp] solana: ${agent.solanaAddress} · evm: ${agent.evmAddress}`);
|
|
35
42
|
const server = new Server({
|
|
36
43
|
name: "@aifinpay/mcp",
|
|
37
|
-
version: "0.1.0-alpha.
|
|
44
|
+
version: "0.1.0-alpha.3",
|
|
38
45
|
}, {
|
|
39
46
|
capabilities: {
|
|
40
47
|
tools: {},
|
|
@@ -43,8 +50,9 @@ export function createServer(config = {}) {
|
|
|
43
50
|
server.setRequestHandler(ListToolsRequestSchema, async () => {
|
|
44
51
|
return {
|
|
45
52
|
tools: [
|
|
46
|
-
payableFetchTool(),
|
|
47
53
|
agentAddressTool(),
|
|
54
|
+
agentCallTool(),
|
|
55
|
+
payableFetchTool(),
|
|
48
56
|
agentQuoteTool(),
|
|
49
57
|
payWithSplitTool(),
|
|
50
58
|
quoteSplitTool(),
|
|
@@ -55,10 +63,12 @@ export function createServer(config = {}) {
|
|
|
55
63
|
const { name, arguments: args } = request.params;
|
|
56
64
|
const ctx = { agent, config, log };
|
|
57
65
|
switch (name) {
|
|
58
|
-
case "payable_fetch":
|
|
59
|
-
return runPayableFetch(ctx, args ?? {});
|
|
60
66
|
case "agent_address":
|
|
61
67
|
return runAgentAddress(ctx, args ?? {});
|
|
68
|
+
case "agent_call":
|
|
69
|
+
return runAgentCall(ctx, args ?? {});
|
|
70
|
+
case "payable_fetch":
|
|
71
|
+
return runPayableFetch(ctx, args ?? {});
|
|
62
72
|
case "agent_quote":
|
|
63
73
|
return runAgentQuote(ctx, args ?? {});
|
|
64
74
|
case "pay_with_split":
|
package/dist/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-address.d.ts","sourceRoot":"","sources":["../../src/tools/agent-address.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAEhD,wBAAgB,gBAAgB;;;;;;;
|
|
1
|
+
{"version":3,"file":"agent-address.d.ts","sourceRoot":"","sources":["../../src/tools/agent-address.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAEhD,wBAAgB,gBAAgB;;;;;;;EAc/B;AAED,wBAAsB,eAAe,CACnC,GAAG,EAAE,WAAW,EAChB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;;;;;GAe/B"}
|
|
@@ -1,8 +1,11 @@
|
|
|
1
1
|
export function agentAddressTool() {
|
|
2
2
|
return {
|
|
3
3
|
name: "agent_address",
|
|
4
|
-
description: "Return the agent's
|
|
5
|
-
"
|
|
4
|
+
description: "Return the agent's on-chain identity on both Solana and Polygon. " +
|
|
5
|
+
"Fund EITHER address to enable payments via payable_fetch / agent_call. " +
|
|
6
|
+
"Polygon (EVM) address — for io.net, Exa, Venice and other bridges " +
|
|
7
|
+
"advertising Polygon settlement. Solana (base58) address — for the " +
|
|
8
|
+
"leaderboard / Seat PDA and Solana-native bridges. One agent, two chains.",
|
|
6
9
|
inputSchema: {
|
|
7
10
|
type: "object",
|
|
8
11
|
properties: {},
|
|
@@ -10,12 +13,16 @@ export function agentAddressTool() {
|
|
|
10
13
|
};
|
|
11
14
|
}
|
|
12
15
|
export async function runAgentAddress(ctx, _args) {
|
|
16
|
+
const payload = {
|
|
17
|
+
solana: ctx.agent.solanaAddress,
|
|
18
|
+
evm: ctx.agent.evmAddress,
|
|
19
|
+
note: "Polygon (EVM) is the default settlement chain for live bridges " +
|
|
20
|
+
"(io.net, Exa, Venice). Solana is supported via Seat PDA payments. " +
|
|
21
|
+
"Same seed derives both — funding either enables the corresponding chain.",
|
|
22
|
+
};
|
|
13
23
|
return {
|
|
14
24
|
content: [
|
|
15
|
-
{
|
|
16
|
-
type: "text",
|
|
17
|
-
text: ctx.agent.address,
|
|
18
|
-
},
|
|
25
|
+
{ type: "text", text: JSON.stringify(payload, null, 2) },
|
|
19
26
|
],
|
|
20
27
|
};
|
|
21
28
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-address.js","sourceRoot":"","sources":["../../src/tools/agent-address.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,gBAAgB;IAC9B,OAAO;QACL,IAAI,EAAE,eAAe;QACrB,WAAW,EACT,
|
|
1
|
+
{"version":3,"file":"agent-address.js","sourceRoot":"","sources":["../../src/tools/agent-address.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,gBAAgB;IAC9B,OAAO;QACL,IAAI,EAAE,eAAe;QACrB,WAAW,EACT,mEAAmE;YACnE,yEAAyE;YACzE,oEAAoE;YACpE,oEAAoE;YACpE,0EAA0E;QAC5E,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE;SACf;KACF,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,GAAgB,EAChB,KAA8B;IAE9B,MAAM,OAAO,GAAG;QACd,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,aAAa;QAC/B,GAAG,EAAK,GAAG,CAAC,KAAK,CAAC,UAAU;QAC5B,IAAI,EACF,iEAAiE;YACjE,oEAAoE;YACpE,0EAA0E;KAC7E,CAAC;IACF,OAAO;QACL,OAAO,EAAE;YACP,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE;SACzD;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import type { ToolContext } from "../server.js";
|
|
2
|
+
/**
|
|
3
|
+
* `agent_call` — unified registry-resolved paid HTTP call.
|
|
4
|
+
*
|
|
5
|
+
* The agent picks a provider by name ("exa", "io-net", "venice", …),
|
|
6
|
+
* the SDK looks up the bridge URL + price from the public AiFinPay
|
|
7
|
+
* registry, negotiates the 402 challenge, settles on Polygon via
|
|
8
|
+
* B2BSplitter.payMatic, retries with proof, and returns the upstream
|
|
9
|
+
* response body.
|
|
10
|
+
*
|
|
11
|
+
* Use this in preference to `payable_fetch` when you have a registered
|
|
12
|
+
* provider name — it auto-routes price, chain, and bridge URL.
|
|
13
|
+
*
|
|
14
|
+
* Requires the EVM address (from `agent_address`) to be funded with POL
|
|
15
|
+
* on Polygon mainnet (gas + payment), or USDC if the provider quotes in
|
|
16
|
+
* stablecoin.
|
|
17
|
+
*/
|
|
18
|
+
export declare function agentCallTool(): {
|
|
19
|
+
name: string;
|
|
20
|
+
description: string;
|
|
21
|
+
inputSchema: {
|
|
22
|
+
type: string;
|
|
23
|
+
properties: {
|
|
24
|
+
provider: {
|
|
25
|
+
type: string;
|
|
26
|
+
description: string;
|
|
27
|
+
};
|
|
28
|
+
body: {
|
|
29
|
+
type: string;
|
|
30
|
+
description: string;
|
|
31
|
+
additionalProperties: boolean;
|
|
32
|
+
};
|
|
33
|
+
method: {
|
|
34
|
+
type: string;
|
|
35
|
+
enum: string[];
|
|
36
|
+
default: string;
|
|
37
|
+
description: string;
|
|
38
|
+
};
|
|
39
|
+
cost: {
|
|
40
|
+
type: string;
|
|
41
|
+
description: string;
|
|
42
|
+
};
|
|
43
|
+
};
|
|
44
|
+
required: string[];
|
|
45
|
+
};
|
|
46
|
+
};
|
|
47
|
+
export declare function runAgentCall(ctx: ToolContext, args: Record<string, unknown>): Promise<{
|
|
48
|
+
isError: boolean;
|
|
49
|
+
content: {
|
|
50
|
+
type: string;
|
|
51
|
+
text: string;
|
|
52
|
+
}[];
|
|
53
|
+
} | {
|
|
54
|
+
content: {
|
|
55
|
+
type: string;
|
|
56
|
+
text: string;
|
|
57
|
+
}[];
|
|
58
|
+
isError?: undefined;
|
|
59
|
+
}>;
|
|
60
|
+
//# sourceMappingURL=agent-call.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-call.d.ts","sourceRoot":"","sources":["../../src/tools/agent-call.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAEhD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqC5B;AAED,wBAAsB,YAAY,CAChC,GAAG,EAAE,WAAW,EAChB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;;;;;;;;;;;;GAqD9B"}
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `agent_call` — unified registry-resolved paid HTTP call.
|
|
3
|
+
*
|
|
4
|
+
* The agent picks a provider by name ("exa", "io-net", "venice", …),
|
|
5
|
+
* the SDK looks up the bridge URL + price from the public AiFinPay
|
|
6
|
+
* registry, negotiates the 402 challenge, settles on Polygon via
|
|
7
|
+
* B2BSplitter.payMatic, retries with proof, and returns the upstream
|
|
8
|
+
* response body.
|
|
9
|
+
*
|
|
10
|
+
* Use this in preference to `payable_fetch` when you have a registered
|
|
11
|
+
* provider name — it auto-routes price, chain, and bridge URL.
|
|
12
|
+
*
|
|
13
|
+
* Requires the EVM address (from `agent_address`) to be funded with POL
|
|
14
|
+
* on Polygon mainnet (gas + payment), or USDC if the provider quotes in
|
|
15
|
+
* stablecoin.
|
|
16
|
+
*/
|
|
17
|
+
export function agentCallTool() {
|
|
18
|
+
return {
|
|
19
|
+
name: "agent_call",
|
|
20
|
+
description: "Make a paid call to any AiFinPay-registered provider by name. " +
|
|
21
|
+
"Provider names come from https://aifinpay.company/api/providers — " +
|
|
22
|
+
"currently 'exa' (search), 'io-net' (Llama-3.3-70B inference), " +
|
|
23
|
+
"'venice' (image generation), more added per partner integration. " +
|
|
24
|
+
"Body is the provider-specific request (e.g. {messages:[...]} for " +
|
|
25
|
+
"io-net, {query:'...'} for exa). Returns the full upstream response. " +
|
|
26
|
+
"Settlement: Polygon mainnet, atomic 99/1 split via B2BSplitter.",
|
|
27
|
+
inputSchema: {
|
|
28
|
+
type: "object",
|
|
29
|
+
properties: {
|
|
30
|
+
provider: {
|
|
31
|
+
type: "string",
|
|
32
|
+
description: "Registered provider name. Example: 'io-net', 'exa', 'venice'.",
|
|
33
|
+
},
|
|
34
|
+
body: {
|
|
35
|
+
type: "object",
|
|
36
|
+
description: "Provider-specific request body. Forwarded to the bridge after payment.",
|
|
37
|
+
additionalProperties: true,
|
|
38
|
+
},
|
|
39
|
+
method: {
|
|
40
|
+
type: "string",
|
|
41
|
+
enum: ["GET", "POST"],
|
|
42
|
+
default: "POST",
|
|
43
|
+
description: "HTTP method. Defaults to POST (matches all current providers).",
|
|
44
|
+
},
|
|
45
|
+
cost: {
|
|
46
|
+
type: "number",
|
|
47
|
+
description: "Optional override of the registry-quoted price (USD). Use to enforce a stricter budget cap.",
|
|
48
|
+
},
|
|
49
|
+
},
|
|
50
|
+
required: ["provider"],
|
|
51
|
+
},
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
export async function runAgentCall(ctx, args) {
|
|
55
|
+
const provider = args.provider;
|
|
56
|
+
const body = args.body;
|
|
57
|
+
const method = args.method ?? "POST";
|
|
58
|
+
const cost = args.cost;
|
|
59
|
+
if (!provider) {
|
|
60
|
+
return {
|
|
61
|
+
isError: true,
|
|
62
|
+
content: [{ type: "text", text: "`provider` is required (e.g. 'exa', 'io-net')" }],
|
|
63
|
+
};
|
|
64
|
+
}
|
|
65
|
+
try {
|
|
66
|
+
const resp = await ctx.agent.call({
|
|
67
|
+
provider,
|
|
68
|
+
body,
|
|
69
|
+
method,
|
|
70
|
+
cost,
|
|
71
|
+
});
|
|
72
|
+
if (resp === null) {
|
|
73
|
+
return {
|
|
74
|
+
isError: true,
|
|
75
|
+
content: [{ type: "text", text: "Call skipped — budget cap exceeded (on_limit_exceeded='skip')." }],
|
|
76
|
+
};
|
|
77
|
+
}
|
|
78
|
+
const text = await resp.text();
|
|
79
|
+
let parsed = text;
|
|
80
|
+
try {
|
|
81
|
+
parsed = JSON.parse(text);
|
|
82
|
+
}
|
|
83
|
+
catch { /* keep as text */ }
|
|
84
|
+
return {
|
|
85
|
+
content: [
|
|
86
|
+
{
|
|
87
|
+
type: "text",
|
|
88
|
+
text: typeof parsed === "string"
|
|
89
|
+
? parsed
|
|
90
|
+
: JSON.stringify({ status: resp.status, body: parsed }, null, 2),
|
|
91
|
+
},
|
|
92
|
+
],
|
|
93
|
+
};
|
|
94
|
+
}
|
|
95
|
+
catch (err) {
|
|
96
|
+
const message = err instanceof Error ? err.message : String(err);
|
|
97
|
+
const hint = message.toLowerCase().includes("budget")
|
|
98
|
+
? "Tip: increase the per-call cost cap or use `agent_quote` to preview before paying."
|
|
99
|
+
: message.toLowerCase().includes("revert") || message.toLowerCase().includes("insufficient")
|
|
100
|
+
? `Tip: ensure the EVM address ${ctx.agent.evmAddress} holds enough POL on Polygon for gas + payment.`
|
|
101
|
+
: `Provider may be misconfigured. Check https://aifinpay.company/api/providers.`;
|
|
102
|
+
return {
|
|
103
|
+
isError: true,
|
|
104
|
+
content: [{ type: "text", text: `agent_call failed: ${message}\n\n${hint}` }],
|
|
105
|
+
};
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
//# sourceMappingURL=agent-call.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-call.js","sourceRoot":"","sources":["../../src/tools/agent-call.ts"],"names":[],"mappings":"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"}
|
|
@@ -24,7 +24,7 @@ export async function runAgentQuote(ctx, args) {
|
|
|
24
24
|
if (!url)
|
|
25
25
|
return errorResult("missing required arg: url");
|
|
26
26
|
const method = String(args.method ?? "GET").toUpperCase();
|
|
27
|
-
const resp = await ctx.agent.fetchImpl(url, { method });
|
|
27
|
+
const resp = await ctx.agent.inner.fetchImpl(url, { method });
|
|
28
28
|
if (resp.status !== 402) {
|
|
29
29
|
return {
|
|
30
30
|
content: [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-quote.js","sourceRoot":"","sources":["../../src/tools/agent-quote.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAGpD,MAAM,UAAU,cAAc;IAC5B,OAAO;QACL,IAAI,EAAE,aAAa;QACnB,WAAW,EACT,yEAAyE;YACzE,qEAAqE;YACrE,oEAAoE;QACtE,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,qBAAqB,EAAE;gBAC3D,MAAM,EAAE;oBACN,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC;oBACrB,OAAO,EAAE,KAAK;iBACf;aACF;YACD,QAAQ,EAAE,CAAC,KAAK,CAAC;SAClB;KACF,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,GAAgB,EAChB,IAA6B;IAE7B,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC;IACnC,IAAI,CAAC,GAAG;QAAE,OAAO,WAAW,CAAC,2BAA2B,CAAC,CAAC;IAC1D,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,IAAI,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;IAE1D,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"agent-quote.js","sourceRoot":"","sources":["../../src/tools/agent-quote.ts"],"names":[],"mappings":"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"}
|
|
@@ -53,7 +53,7 @@ export async function runPayWithSplit(ctx, args) {
|
|
|
53
53
|
? args.fee_recipient
|
|
54
54
|
: undefined;
|
|
55
55
|
try {
|
|
56
|
-
const invoice = await ctx.agent.payWithSplitInvoice({
|
|
56
|
+
const invoice = await ctx.agent.inner.payWithSplitInvoice({
|
|
57
57
|
chain,
|
|
58
58
|
merchantWallet,
|
|
59
59
|
merchantAmount,
|
|
@@ -98,7 +98,7 @@ export async function runQuoteSplit(ctx, args) {
|
|
|
98
98
|
if (!merchantAmount)
|
|
99
99
|
return errorResult("merchant_amount required");
|
|
100
100
|
try {
|
|
101
|
-
const quote = await ctx.agent.quoteSplit({ chain, merchantAmount });
|
|
101
|
+
const quote = await ctx.agent.inner.quoteSplit({ chain, merchantAmount });
|
|
102
102
|
return {
|
|
103
103
|
content: [{ type: "text", text: JSON.stringify(quote, null, 2) }],
|
|
104
104
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pay-with-split.js","sourceRoot":"","sources":["../../src/tools/pay-with-split.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,gBAAgB;IAC9B,OAAO;QACL,IAAI,EAAE,gBAAgB;QACtB,WAAW,EACT,mEAAmE;YACnE,qEAAqE;YACrE,oEAAoE;YACpE,qEAAqE;YACrE,iEAAiE;YACjE,kCAAkC;QACpC,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,KAAK,EAAE;oBACL,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,QAAQ,EAAE,SAAS,CAAC;oBAC3B,WAAW,EAAE,qBAAqB;iBACnC;gBACD,eAAe,EAAE;oBACf,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,yDAAyD;iBAC5D;gBACD,eAAe,EAAE;oBACf,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,+DAA+D;wBAC/D,uDAAuD;iBAC1D;gBACD,QAAQ,EAAE;oBACR,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,qCAAqC;iBACnD;gBACD,aAAa,EAAE;oBACb,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,4DAA4D;wBAC5D,oCAAoC;iBACvC;aACF;YACD,QAAQ,EAAE,CAAC,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,UAAU,CAAC;SACtE;KACF,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,GAAgB,EAChB,IAA6B;IAE7B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAyC,CAAC;IAC7D,IAAI,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QAC9C,OAAO,WAAW,CAAC,qCAAqC,CAAC,CAAC;IAC5D,CAAC;IACD,MAAM,cAAc,GAAG,MAAM,CAAC,IAAI,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC;IAC1D,MAAM,cAAc,GAAG,MAAM,CAAC,IAAI,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC;IAC1D,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC;IAC5C,IAAI,CAAC,cAAc,IAAI,CAAC,cAAc,IAAI,CAAC,OAAO,EAAE,CAAC;QACnD,OAAO,WAAW,CAChB,iEAAiE,CAClE,CAAC;IACJ,CAAC;IACD,MAAM,YAAY,GAChB,OAAO,IAAI,CAAC,aAAa,KAAK,QAAQ,IAAI,IAAI,CAAC,aAAa;QAC1D,CAAC,CAAE,IAAI,CAAC,aAAwB;QAChC,CAAC,CAAC,SAAS,CAAC;IAEhB,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,KAAK,CAAC,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"pay-with-split.js","sourceRoot":"","sources":["../../src/tools/pay-with-split.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"payable-fetch.d.ts","sourceRoot":"","sources":["../../src/tools/payable-fetch.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAEhD,wBAAgB,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA0C/B;AAED,wBAAsB,eAAe,CACnC,GAAG,EAAE,WAAW,EAChB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"payable-fetch.d.ts","sourceRoot":"","sources":["../../src/tools/payable-fetch.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAEhD,wBAAgB,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA0C/B;AAED,wBAAsB,eAAe,CACnC,GAAG,EAAE,WAAW,EAChB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;;;;;;;;;;;GA6D9B"}
|
|
@@ -50,7 +50,9 @@ export async function runPayableFetch(ctx, args) {
|
|
|
50
50
|
? args.max_amount_usd
|
|
51
51
|
: ctx.config.maxAmountUsd;
|
|
52
52
|
try {
|
|
53
|
-
|
|
53
|
+
// Legacy URL-keyed path lives on the wrapped Solana-side Agent. For
|
|
54
|
+
// registry-resolved Polygon-native calls prefer the `agent_call` tool.
|
|
55
|
+
const resp = await ctx.agent.inner.pay(url, {
|
|
54
56
|
method,
|
|
55
57
|
body,
|
|
56
58
|
headers,
|
|
@@ -80,8 +82,9 @@ export async function runPayableFetch(ctx, args) {
|
|
|
80
82
|
}
|
|
81
83
|
catch (e) {
|
|
82
84
|
const err = e;
|
|
83
|
-
return errorResult(`${err.constructor.name}: ${err.message}`, `Tip: ensure agent ${ctx.agent.
|
|
84
|
-
`
|
|
85
|
+
return errorResult(`${err.constructor.name}: ${err.message}`, `Tip: ensure agent ${ctx.agent.solanaAddress} has a funded Seat PDA, ` +
|
|
86
|
+
`or use the unified \`agent_call\` tool (Polygon settlement). ` +
|
|
87
|
+
`Docs: https://aifinpay.company/docs`);
|
|
85
88
|
}
|
|
86
89
|
}
|
|
87
90
|
function errorResult(...lines) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"payable-fetch.js","sourceRoot":"","sources":["../../src/tools/payable-fetch.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,gBAAgB;IAC9B,OAAO;QACL,IAAI,EAAE,eAAe;QACrB,WAAW,EACT,2EAA2E;YAC3E,6EAA6E;YAC7E,wEAAwE;YACxE,4DAA4D;QAC9D,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,qBAAqB,EAAE;gBAC3D,MAAM,EAAE;oBACN,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,CAAC;oBAC/C,OAAO,EAAE,KAAK;iBACf;gBACD,IAAI,EAAE;oBACJ,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,kEAAkE;iBACrE;gBACD,OAAO,EAAE;oBACP,IAAI,EAAE,QAAQ;oBACd,oBAAoB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACxC,WAAW,EAAE,wBAAwB;iBACtC;gBACD,cAAc,EAAE;oBACd,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,yDAAyD;wBACzD,6CAA6C;iBAChD;gBACD,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,oEAAoE;iBACvE;aACF;YACD,QAAQ,EAAE,CAAC,KAAK,CAAC;SAClB;KACF,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,GAAgB,EAChB,IAA6B;IAE7B,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC;IACnC,IAAI,CAAC,GAAG;QAAE,OAAO,WAAW,CAAC,2BAA2B,CAAC,CAAC;IAC1D,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,IAAI,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;IAC1D,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACvD,MAAM,OAAO,GACX,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ,IAAI,IAAI,CAAC,OAAO,KAAK,IAAI;QACvD,CAAC,CAAE,IAAI,CAAC,OAAkC;QAC1C,CAAC,CAAC,SAAS,CAAC;IAEhB,MAAM,YAAY,GAChB,OAAO,IAAI,CAAC,cAAc,KAAK,QAAQ;QACrC,CAAC,CAAC,IAAI,CAAC,cAAc;QACrB,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC;IAE9B,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE;
|
|
1
|
+
{"version":3,"file":"payable-fetch.js","sourceRoot":"","sources":["../../src/tools/payable-fetch.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aifinpay/mcp",
|
|
3
|
-
"version": "0.1.0-alpha.
|
|
4
|
-
"description": "MCP server
|
|
3
|
+
"version": "0.1.0-alpha.3",
|
|
4
|
+
"description": "Pay-per-call MCP server for autonomous AI agents \u2014 installs in Claude Desktop / Cursor / Continue with one config block; on-chain settlement on Polygon and Solana via x402.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
7
7
|
"types": "dist/index.d.ts",
|
|
@@ -26,13 +26,26 @@
|
|
|
26
26
|
"prepublishOnly": "npm run build"
|
|
27
27
|
},
|
|
28
28
|
"keywords": [
|
|
29
|
-
"x402",
|
|
30
|
-
"ai-agent",
|
|
31
29
|
"mcp",
|
|
32
30
|
"model-context-protocol",
|
|
31
|
+
"mcp-server",
|
|
32
|
+
"claude-desktop",
|
|
33
|
+
"claude-mcp",
|
|
34
|
+
"cursor",
|
|
35
|
+
"windsurf",
|
|
36
|
+
"ai-agent",
|
|
37
|
+
"ai-agents",
|
|
38
|
+
"agentic-ai",
|
|
39
|
+
"autonomous-agents",
|
|
40
|
+
"agent-payments",
|
|
41
|
+
"agent-commerce",
|
|
42
|
+
"x402",
|
|
33
43
|
"payments",
|
|
44
|
+
"crypto-payments",
|
|
45
|
+
"polygon",
|
|
46
|
+
"solana",
|
|
34
47
|
"non-custodial",
|
|
35
|
-
"
|
|
48
|
+
"stripe-for-ai-agents"
|
|
36
49
|
],
|
|
37
50
|
"author": "CoinSecurities (SECCO) <contact@aifinpay.company>",
|
|
38
51
|
"license": "MIT",
|
|
@@ -44,7 +57,7 @@
|
|
|
44
57
|
},
|
|
45
58
|
"bugs": "https://github.com/AiFinPay/sdk/issues",
|
|
46
59
|
"dependencies": {
|
|
47
|
-
"@aifinpay/agent": "^0.
|
|
60
|
+
"@aifinpay/agent": "^0.3.0-alpha.1",
|
|
48
61
|
"@modelcontextprotocol/sdk": "^1.0.0"
|
|
49
62
|
},
|
|
50
63
|
"devDependencies": {
|