agentpay-mcp 4.1.4 → 4.1.6

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/Dockerfile ADDED
@@ -0,0 +1,15 @@
1
+ FROM node:20-slim AS builder
2
+ WORKDIR /app
3
+ COPY package*.json ./
4
+ RUN npm ci
5
+ COPY tsconfig.json ./
6
+ COPY src/ ./src/
7
+ RUN npm run build
8
+
9
+ FROM node:20-slim
10
+ WORKDIR /app
11
+ COPY --from=builder /app/dist ./dist
12
+ COPY --from=builder /app/node_modules ./node_modules
13
+ COPY package*.json ./
14
+ ENV NODE_ENV=production
15
+ ENTRYPOINT ["node", "dist/index.js"]
package/README.md CHANGED
@@ -90,6 +90,7 @@ AgentPay MCP is built for enterprise MCP deployments where supply chain security
90
90
  - **x402 multi-SDK batch-settlement parity.** For providers testing x402 TypeScript and Go batch-settlement clients, use the [multi-SDK batch-settlement parity recipe](docs/x402-multi-sdk-batch-settlement-parity.md) to prove shared channel state, phased e2e results, signer separation, refund/recovery visibility, and proof bundle shape.
91
91
  - **x402 TVM readiness.** For TVM/TON exact-payment offers from emerging x402 examples, use the [x402 TVM readiness note](docs/x402-tvm-readiness.md) to confirm unsupported TVM requirements fail closed until deliberate signing, gas, jetton, and settlement support exists.
92
92
  - **x402 MCP funding UX.** For hosted fund-link and managed-wallet comparisons, use the [x402 MCP funding UX benchmark](docs/x402-mcp-funding-ux-benchmark.md) to keep onboarding speed separate from approval gates, daily caps, auditability, and non-custodial controls.
93
+ - **Directory introspection readiness.** For Glama, Smithery, and other MCP catalogs, use the [directory introspection readiness note](docs/directory-introspection-readiness.md) for verified `npx`, Docker, MCP name, and non-custodial metadata paths.
93
94
  - **WhatsApp and SMB agent controls.** For channel-native paid agents, use the [WhatsApp and SMB paid-agent controls recipe](docs/whatsapp-smb-agent-controls.md).
94
95
  - **Channel-agent affiliate payout controls.** For Axon-style affiliate and referral revenue shares, use the [channel-agent affiliate controls spec](docs/channel-agent-affiliate-controls.md) to keep payout caps, per-contact approval, audit rows, and optional x402 settlement separate from paid tool spend approval.
95
96
  - **x402 chain drift.** AgentPay MCP tracks the x402 Foundation paywall-template baseline with `viem` `^2.47.12` or newer, and fails closed for unmapped chains. For PaymentWrapper and paywall template changes, follow the [x402 chain-drift compatibility note](docs/x402-chain-drift-compatibility.md).
package/dist/index.js CHANGED
@@ -42,7 +42,7 @@ const otel_budget_js_1 = require("./tools/otel-budget.js");
42
42
  // ─── Server configuration ──────────────────────────────────────────────────
43
43
  const SERVER_INFO = {
44
44
  name: 'agentpay-mcp',
45
- version: '4.0.0',
45
+ version: '4.1.6',
46
46
  };
47
47
  const SERVER_CAPABILITIES = {
48
48
  tools: {},
@@ -261,7 +261,7 @@ async function main() {
261
261
  });
262
262
  await server.connect(transport);
263
263
  // Log to stderr (not stdout — stdout is reserved for MCP protocol)
264
- process.stderr.write(`AgentPay MCP v1.1.0 started. ` +
264
+ process.stderr.write(`AgentPay MCP v4.1.6 started. ` +
265
265
  `Wallet: ${process.env['AGENT_WALLET_ADDRESS'] ?? '(not configured)'} | ` +
266
266
  `Chain: ${process.env['CHAIN_ID'] ?? '8453 (Base Mainnet)'} | ` +
267
267
  `Session TTL: ${process.env['SESSION_TTL_SECONDS'] ?? '3600'}s\n`);
@@ -0,0 +1,77 @@
1
+ # AgentPay MCP directory introspection readiness
2
+
3
+ Paid MCP servers are starting to get ranked by catalog proof, not only by README claims. This note records the install paths a directory crawler can verify without changing AgentPay MCP's custody model.
4
+
5
+ ## Machine-readable package identity
6
+
7
+ - npm package: `agentpay-mcp`
8
+ - MCP server name in `package.json`: `io.github.up2itnow0822/agentpay`
9
+ - MCP runtime name from `initialize`: `agentpay-mcp`
10
+ - CLI binary: `agentpay-mcp`
11
+ - Repository: `https://github.com/up2itnow0822/agentpay-mcp`
12
+ - Docker entrypoint: `node dist/index.js`
13
+
14
+ The package does not create or manage a hot wallet by default. Directory installs should require explicit operator-supplied wallet configuration.
15
+
16
+ ## npx path
17
+
18
+ Use this for local MCP clients and catalog recipes that execute npm packages directly:
19
+
20
+ ```json
21
+ {
22
+ "mcpServers": {
23
+ "agentpay": {
24
+ "command": "npx",
25
+ "args": ["-y", "agentpay-mcp"],
26
+ "env": {
27
+ "AGENT_PRIVATE_KEY": "0x...",
28
+ "AGENT_WALLET_ADDRESS": "0x...",
29
+ "CHAIN_ID": "8453",
30
+ "RPC_URL": "https://mainnet.base.org"
31
+ }
32
+ }
33
+ }
34
+ }
35
+ ```
36
+
37
+ AGENT_PRIVATE_KEY stays local to the MCP runtime. AgentPay MCP does not ask a catalog to custody keys, generate first-run wallets, or opt users into a managed-wallet path.
38
+
39
+ ## Docker path for Glama-style introspection
40
+
41
+ Build from the repository root:
42
+
43
+ ```bash
44
+ docker build -t agentpay-mcp:glama-introspection .
45
+ ```
46
+
47
+ Run stdio introspection with a placeholder address. Tool listing does not require a private key because tools are registered before any payment call loads spend policy state:
48
+
49
+ ```bash
50
+ printf '%s\n' \
51
+ '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{},"clientInfo":{"name":"catalog-check","version":"0.0.1"}}}' \
52
+ '{"jsonrpc":"2.0","method":"notifications/initialized","params":{}}' \
53
+ '{"jsonrpc":"2.0","id":2,"method":"tools/list","params":{}}' |
54
+ docker run --rm -i \
55
+ -e AGENT_WALLET_ADDRESS=0x0000000000000000000000000000000000000000 \
56
+ agentpay-mcp:glama-introspection
57
+ ```
58
+
59
+ Expected proof points:
60
+
61
+ - `initialize` returns server name `agentpay-mcp`.
62
+ - `tools/list` returns payment tools such as `x402_pay`, `check_budget`, `set_spend_policy`, and `otel_evaluate_spend`.
63
+ - No default managed wallet is created during introspection.
64
+
65
+ ## Glama metadata
66
+
67
+ `glama.json` is present at the repository root with schema `https://glama.ai/mcp/schemas/server.json` and maintainer `up2itnow0822`. Glama-style crawlers can use this alongside the Dockerfile to identify the server without asking users to move private keys into a hosted catalog.
68
+
69
+ ## Smithery-compatible metadata
70
+
71
+ `smithery.yaml` declares the same stdio start command and wallet environment variables. The schema marks private-key input as a password field and keeps `CHAIN_ID` constrained to supported Base values.
72
+
73
+ This is a catalog metadata file, not a hosting custody model. Hosted directory operators should still treat AgentPay MCP as a user-controlled, non-custodial server.
74
+
75
+ ## Listing status
76
+
77
+ As of 2026-05-01, the Glama listing is live at `https://glama.ai/mcp/servers/up2itnow0822/claw-pay-mcp` and returned HTTP 200 during validation. The current Glama slug still reflects the older `claw-pay-mcp` crawl identity, so keep `glama.json`, the npm package name, and the MCP `mcpName` aligned for the next catalog refresh. Smithery listing URLs checked today returned HTTP 404, so do not claim a live Smithery listing until Smithery verifies it. The verified live paths today are npm, GitHub, Glama, repository metadata (`glama.json`, `smithery.yaml`, `Dockerfile`), and the open AgentPay MCP PR carrying this readiness note.
package/glama.json ADDED
@@ -0,0 +1,4 @@
1
+ {
2
+ "$schema": "https://glama.ai/mcp/schemas/server.json",
3
+ "maintainers": ["up2itnow0822"]
4
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "agentpay-mcp",
3
- "version": "4.1.4",
3
+ "version": "4.1.6",
4
4
  "mcpName": "io.github.up2itnow0822/agentpay",
5
5
  "description": "AgentPay MCP Server - Non-custodial x402 payment layer for AI agents. Multi-chain wallets, spending limits, and machine-to-machine payments. Patent Pending.",
6
6
  "main": "dist/index.js",
@@ -13,7 +13,11 @@
13
13
  "README.md",
14
14
  "claude_desktop_config.json",
15
15
  ".env.example",
16
- "docs/*.md"
16
+ "docs/*.md",
17
+ "Dockerfile",
18
+ "smithery.yaml",
19
+ "glama.json",
20
+ "docs/directory-introspection-readiness.md"
17
21
  ],
18
22
  "scripts": {
19
23
  "build": "tsc",
@@ -46,7 +50,7 @@
46
50
  "license": "MIT",
47
51
  "repository": {
48
52
  "type": "git",
49
- "url": "https://github.com/up2itnow0822/agentpay-mcp"
53
+ "url": "git+https://github.com/up2itnow0822/agentpay-mcp.git"
50
54
  },
51
55
  "author": "AgentNexus",
52
56
  "engines": {
@@ -54,7 +58,7 @@
54
58
  },
55
59
  "dependencies": {
56
60
  "@modelcontextprotocol/sdk": "^1.0.4",
57
- "agentwallet-sdk": "^6.1.0",
61
+ "agentwallet-sdk": "^6.2.1",
58
62
  "viem": "^2.47.12",
59
63
  "zod": "^3.22.4"
60
64
  },
package/smithery.yaml ADDED
@@ -0,0 +1,37 @@
1
+ # Smithery deployment config for AgentPay MCP
2
+ # Catalog metadata only. AgentPay MCP remains non-custodial: users provide their own wallet key and wallet address.
3
+
4
+ runtime: typescript
5
+ startCommand:
6
+ type: stdio
7
+ command: node
8
+ args: ["dist/index.js"]
9
+ configSchema:
10
+ type: object
11
+ required:
12
+ - AGENT_PRIVATE_KEY
13
+ - AGENT_WALLET_ADDRESS
14
+ properties:
15
+ AGENT_PRIVATE_KEY:
16
+ type: string
17
+ title: Agent private key
18
+ description: User-controlled 0x-prefixed agent hot wallet private key. Keep this local to the MCP runtime.
19
+ format: password
20
+ AGENT_WALLET_ADDRESS:
21
+ type: string
22
+ title: Agent wallet address
23
+ description: Deployed AgentAccountV2 contract address controlled by the operator.
24
+ CHAIN_ID:
25
+ type: string
26
+ title: Chain ID
27
+ description: Supported x402 exact-payment chain. Defaults to Base mainnet.
28
+ enum: ["8453", "84532"]
29
+ default: "8453"
30
+ RPC_URL:
31
+ type: string
32
+ title: RPC URL
33
+ description: Optional RPC endpoint. Defaults to public Base RPC when omitted.
34
+ SESSION_TTL_SECONDS:
35
+ type: string
36
+ title: Session TTL seconds
37
+ description: Optional x402 session token TTL. Defaults to 3600 seconds.