@openclawcash/mcp-server 0.1.21 → 0.1.23

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 CHANGED
@@ -13,6 +13,8 @@ Wallet and profile tools:
13
13
  - `skill_latest` (public install metadata; no API key required)
14
14
  - `wallets_list`
15
15
  - `wallet_get`
16
+ - `policies_list`
17
+ - `policy_get`
16
18
  - `transactions_list`
17
19
  - `balances_get`
18
20
  - `supported_tokens_list`
@@ -7,7 +7,7 @@ import { fileURLToPath } from "node:url";
7
7
  import { z } from "zod";
8
8
 
9
9
  const SERVER_NAME = "openclawcash";
10
- const SERVER_VERSION = "0.1.21";
10
+ const SERVER_VERSION = "0.1.23";
11
11
  const PROTOCOL_VERSION = "2024-11-05";
12
12
  const DEFAULT_BASE_URL = "https://openclawcash.com";
13
13
 
@@ -102,6 +102,7 @@ const walletSelectorSchema = walletSelectorBaseSchema.refine(
102
102
  const walletsListArgsSchema = z.object({
103
103
  includeBalances: z.boolean().optional(),
104
104
  });
105
+ const policiesListArgsSchema = z.object({}).strict();
105
106
  const skillLatestArgsSchema = z.object({}).strict();
106
107
 
107
108
  const tokenlistArgsSchema = z.object({
@@ -248,8 +249,8 @@ const userTagSetArgsSchema = z.object({
248
249
  .trim()
249
250
  .toLowerCase()
250
251
  .min(3)
251
- .max(64)
252
- .regex(/^[a-z0-9][a-z0-9._-]{2,63}$/),
252
+ .max(8)
253
+ .regex(/^[a-z0-9][a-z0-9._-]{2,7}$/),
253
254
  });
254
255
 
255
256
  const polymarketLimitArgsSchema = z
@@ -649,6 +650,44 @@ const tools = [
649
650
  query: args,
650
651
  }),
651
652
  },
653
+ {
654
+ name: "policies_list",
655
+ description:
656
+ "List active governance policies (spending limits, allowlists, testnet-only, etc.) for every managed wallet accessible to this agent key. Call this before suggesting or executing transfers/swaps so requests stay inside configured limits.",
657
+ inputSchema: {
658
+ type: "object",
659
+ properties: {},
660
+ additionalProperties: false,
661
+ },
662
+ parse: (args) => policiesListArgsSchema.parse(args ?? {}),
663
+ execute: async () =>
664
+ callAgentApi({
665
+ method: "GET",
666
+ pathName: "/api/agent/policies",
667
+ }),
668
+ },
669
+ {
670
+ name: "policy_get",
671
+ description:
672
+ "Get active governance policies for one managed wallet (whitelist, spending_limit, daily/weekly/monthly_spending_limit, disallow_live_transactions, wallet_purpose, checkout_access, venue_access, max_open_escrows, trusted_counterparty_tags). Call this before suggesting or executing a transfer/swap on the wallet so the request stays inside configured limits.",
673
+ inputSchema: {
674
+ type: "object",
675
+ properties: {
676
+ walletId: { oneOf: [{ type: "integer" }, { type: "string" }], description: selectorDescription() },
677
+ walletLabel: { type: "string", description: selectorDescription() },
678
+ walletAddress: { type: "string", description: selectorDescription() },
679
+ chain: { type: "string", enum: ["evm", "solana"] },
680
+ },
681
+ additionalProperties: false,
682
+ },
683
+ parse: (args) => walletSelectorSchema.parse(args ?? {}),
684
+ execute: async (args) =>
685
+ callAgentApi({
686
+ method: "GET",
687
+ pathName: "/api/agent/policy",
688
+ query: args,
689
+ }),
690
+ },
652
691
  {
653
692
  name: "transactions_list",
654
693
  description: "List merged transaction history for one managed wallet. EVM wallets accept optional `network` to scope to a single EVM chain (e.g. \"base-mainnet\") or `\"all\"` to merge activity across every supported EVM chain into one history. Solana wallets stay scoped to their cluster.",
@@ -1004,11 +1043,11 @@ const tools = [
1004
1043
  },
1005
1044
  {
1006
1045
  name: "user_tag_set",
1007
- description: withWriteSafety("Set global checkout user tag once (immutable after set)."),
1046
+ description: withWriteSafety("Set global checkout user tag once (immutable after set). 3-8 lowercase characters: a-z, 0-9, '.', '_', '-'."),
1008
1047
  inputSchema: {
1009
1048
  type: "object",
1010
1049
  properties: {
1011
- userTag: { type: "string" },
1050
+ userTag: { type: "string", minLength: 3, maxLength: 8, pattern: "^[a-z0-9][a-z0-9._-]{2,7}$" },
1012
1051
  },
1013
1052
  required: ["userTag"],
1014
1053
  additionalProperties: false,
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@openclawcash/mcp-server",
3
- "version": "0.1.21",
4
- "description": "OpenClawCash MCP server for managed agent wallets, balances, transfers, swaps, approvals, cross-chain bridges, Get Paid checkout escrow flows, Polymarket market resolution/order tools, and YieldWolf Casino link/unlink/proxy tools.",
3
+ "version": "0.1.23",
4
+ "description": "OpenClawCash MCP server for managed agent wallets, balances, transfers, swaps, approvals, governance policy checks, cross-chain bridges, Get Paid checkout escrow flows, Polymarket market resolution/order tools, and YieldWolf Casino link/unlink/proxy tools.",
5
5
  "type": "module",
6
6
  "license": "Proprietary",
7
7
  "homepage": "https://openclawcash.com/mcp",