@1claw/mcp 0.2.4 → 0.3.0

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
@@ -6,10 +6,10 @@ An MCP (Model Context Protocol) server that gives AI agents secure, just-in-time
6
6
 
7
7
  The server supports two transport modes:
8
8
 
9
- | Mode | Use case | Auth |
10
- | ------------------- | ------------------------------ | --------------------------------------------------- |
11
- | **stdio** (default) | Local — Claude Desktop, Cursor | Env vars: `ONECLAW_AGENT_TOKEN`, `ONECLAW_VAULT_ID` |
12
- | **httpStream** | Hosted at `mcp.1claw.xyz` | Per-request headers: `Authorization`, `X-Vault-ID` |
9
+ | Mode | Use case | Auth |
10
+ | ------------------- | ------------------------------ | -------------------------------------------------------------------- |
11
+ | **stdio** (default) | Local — Claude Desktop, Cursor | Env: `ONECLAW_AGENT_ID` + `ONECLAW_AGENT_API_KEY` (recommended) or `ONECLAW_AGENT_TOKEN`; plus `ONECLAW_VAULT_ID` |
12
+ | **httpStream** | Hosted at `mcp.1claw.xyz` | Per-request headers: `Authorization: Bearer <token>`, `X-Vault-ID` |
13
13
 
14
14
  Set `MCP_TRANSPORT=httpStream` and `PORT=8080` to run in hosted mode.
15
15
 
@@ -23,29 +23,35 @@ pnpm run build
23
23
 
24
24
  ## Environment Variables
25
25
 
26
- | Variable | Required | Default | Description |
27
- | --------------------- | ---------- | ----------------------- | --------------------------------------- |
28
- | `ONECLAW_AGENT_TOKEN` | stdio only | — | Bearer token for the 1claw Agent API |
29
- | `ONECLAW_VAULT_ID` | stdio only | — | UUID of the vault to operate on |
30
- | `ONECLAW_BASE_URL` | No | `https://api.1claw.xyz` | API base URL (override for self-hosted) |
31
- | `MCP_TRANSPORT` | No | `stdio` | Transport mode: `stdio` or `httpStream` |
32
- | `PORT` | No | `8080` | HTTP port (httpStream mode only) |
26
+ | Variable | Required | Default | Description |
27
+ | ------------------------- | ---------- | ----------------------- | --------------------------------------------------------------------------- |
28
+ | `ONECLAW_AGENT_ID` | stdio* | — | Agent UUID (from dashboard). Use with `ONECLAW_AGENT_API_KEY` (recommended). |
29
+ | `ONECLAW_AGENT_API_KEY` | stdio* | — | Agent API key (`ocv_...`). Server exchanges this for a JWT and auto-refreshes. |
30
+ | `ONECLAW_AGENT_TOKEN` | stdio* | | Static Bearer JWT (alternative to ID+key; expires in ~1 h). |
31
+ | `ONECLAW_VAULT_ID` | stdio only | | UUID of the vault to operate on. |
32
+ | `ONECLAW_BASE_URL` | No | `https://api.1claw.xyz` | API base URL (override for self-hosted). |
33
+ | `MCP_TRANSPORT` | No | `stdio` | Transport mode: `stdio` or `httpStream`. |
34
+ | `PORT` | No | `8080` | HTTP port (httpStream mode only). |
35
+
36
+ \* For stdio, set either **`ONECLAW_AGENT_ID` + `ONECLAW_AGENT_API_KEY`** (recommended) or **`ONECLAW_AGENT_TOKEN`**.
33
37
 
34
38
  ## Tools
35
39
 
36
- | Tool | Description |
37
- | ------------------ | ---------------------------------------------------------------------------- |
38
- | `list_secrets` | List all secrets (metadata only — never values) |
39
- | `get_secret` | Fetch the decrypted value of a secret by path |
40
- | `put_secret` | Create or update a secret (creates a new version) |
41
- | `delete_secret` | Soft-delete a secret at a path |
42
- | `describe_secret` | Get metadata without fetching the value |
43
- | `rotate_and_store` | Store a new value for an existing secret and return the version |
44
- | `get_env_bundle` | Fetch an env_bundle secret and parse it as KEY=VALUE JSON |
45
- | `create_vault` | Create a new vault (auto-shared with the agent's human creator) |
46
- | `list_vaults` | List all vaults the agent can access (own + shared) |
47
- | `grant_access` | Share a vault with a user or agent (own vaults only) |
48
- | `share_secret` | Share a secret with your creator, a user/agent by ID, or create an open link |
40
+ | Tool | Description |
41
+ | ---------------------- | ---------------------------------------------------------------------------- |
42
+ | `list_secrets` | List all secrets (metadata only — never values) |
43
+ | `get_secret` | Fetch the decrypted value of a secret by path |
44
+ | `put_secret` | Create or update a secret (creates a new version) |
45
+ | `delete_secret` | Soft-delete a secret at a path |
46
+ | `describe_secret` | Get metadata without fetching the value |
47
+ | `rotate_and_store` | Store a new value for an existing secret and return the version |
48
+ | `get_env_bundle` | Fetch an env_bundle secret and parse it as KEY=VALUE JSON |
49
+ | `create_vault` | Create a new vault (auto-shared with the agent's human creator) |
50
+ | `list_vaults` | List all vaults the agent can access (own + shared) |
51
+ | `grant_access` | Share a vault with a user or agent (own vaults only) |
52
+ | `share_secret` | Share a secret with your creator, a user/agent by ID, or create an open link |
53
+ | `simulate_transaction` | Simulate a transaction via Tenderly without signing or broadcasting |
54
+ | `submit_transaction` | Submit a transaction intent to be signed and optionally broadcast |
49
55
 
50
56
  ## Resources
51
57
 
@@ -57,7 +63,7 @@ pnpm run build
57
63
 
58
64
  ### Hosted (mcp.1claw.xyz)
59
65
 
60
- For MCP clients that support remote servers with HTTP streaming:
66
+ For MCP clients that support remote servers with HTTP streaming. The server expects a **Bearer token** (JWT). You can get one by calling `POST https://api.1claw.xyz/v1/auth/agent-token` with `{"agent_id": "<uuid>", "api_key": "<ocv_...>"}` — use your agent ID and API key from the 1claw dashboard.
61
67
 
62
68
  ```json
63
69
  {
@@ -65,7 +71,7 @@ For MCP clients that support remote servers with HTTP streaming:
65
71
  "1claw": {
66
72
  "url": "https://mcp.1claw.xyz/mcp",
67
73
  "headers": {
68
- "Authorization": "Bearer <your-agent-token>",
74
+ "Authorization": "Bearer <agent-jwt-or-token>",
69
75
  "X-Vault-ID": "<your-vault-id>"
70
76
  }
71
77
  }
@@ -75,7 +81,7 @@ For MCP clients that support remote servers with HTTP streaming:
75
81
 
76
82
  ### Claude Desktop (local stdio)
77
83
 
78
- Add to `~/Library/Application Support/Claude/claude_desktop_config.json`:
84
+ Add to `~/Library/Application Support/Claude/claude_desktop_config.json`. Prefer **agent ID + API key** (the server exchanges them for a JWT and refreshes automatically); alternatively use a static `ONECLAW_AGENT_TOKEN` (expires in ~1 hour).
79
85
 
80
86
  ```json
81
87
  {
@@ -84,8 +90,9 @@ Add to `~/Library/Application Support/Claude/claude_desktop_config.json`:
84
90
  "command": "node",
85
91
  "args": ["/absolute/path/to/packages/mcp/dist/index.js"],
86
92
  "env": {
87
- "ONECLAW_AGENT_TOKEN": "your-agent-token-here",
88
- "ONECLAW_VAULT_ID": "your-vault-id-here"
93
+ "ONECLAW_AGENT_ID": "your-agent-uuid",
94
+ "ONECLAW_AGENT_API_KEY": "ocv_your_agent_api_key",
95
+ "ONECLAW_VAULT_ID": "your-vault-id"
89
96
  }
90
97
  }
91
98
  }
@@ -94,7 +101,7 @@ Add to `~/Library/Application Support/Claude/claude_desktop_config.json`:
94
101
 
95
102
  ### Cursor (local stdio)
96
103
 
97
- Add to `.cursor/mcp.json` in your project root:
104
+ Add to `.cursor/mcp.json` in your project root. Use **agent ID + API key** so the server can refresh the token; or use `ONECLAW_AGENT_TOKEN` if you prefer a static JWT.
98
105
 
99
106
  ```json
100
107
  {
@@ -103,7 +110,8 @@ Add to `.cursor/mcp.json` in your project root:
103
110
  "command": "node",
104
111
  "args": ["./packages/mcp/dist/index.js"],
105
112
  "env": {
106
- "ONECLAW_AGENT_TOKEN": "${env:ONECLAW_AGENT_TOKEN}",
113
+ "ONECLAW_AGENT_ID": "${env:ONECLAW_AGENT_ID}",
114
+ "ONECLAW_AGENT_API_KEY": "${env:ONECLAW_AGENT_API_KEY}",
107
115
  "ONECLAW_VAULT_ID": "${env:ONECLAW_VAULT_ID}"
108
116
  }
109
117
  }
package/dist/client.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import type { SecretMetadata, SecretWithValue, SecretListResponse, VaultResponse, VaultListResponse, PolicyResponse, ShareLinkResponse } from "./types.js";
1
+ import type { SecretMetadata, SecretWithValue, SecretListResponse, VaultResponse, VaultListResponse, PolicyResponse, ShareLinkResponse, SimulationResponse, BundleSimulationResponse, TransactionResponse } from "./types.js";
2
2
  export declare class OneClawApiError extends Error {
3
3
  status: number;
4
4
  detail: string;
@@ -46,5 +46,35 @@ export declare class OneClawClient {
46
46
  max_access_count?: number;
47
47
  }): Promise<ShareLinkResponse>;
48
48
  createPolicy(vaultId: string, principalType: string, principalId: string, permissions: string[], secretPathPattern?: string): Promise<PolicyResponse>;
49
+ get agentId(): string | undefined;
50
+ simulateTransaction(agentId: string, tx: {
51
+ to: string;
52
+ value: string;
53
+ chain: string;
54
+ data?: string;
55
+ signing_key_path?: string;
56
+ gas_limit?: number;
57
+ }): Promise<SimulationResponse>;
58
+ simulateBundle(agentId: string, transactions: Array<{
59
+ to: string;
60
+ value: string;
61
+ chain: string;
62
+ data?: string;
63
+ signing_key_path?: string;
64
+ gas_limit?: number;
65
+ }>): Promise<BundleSimulationResponse>;
66
+ submitTransaction(agentId: string, tx: {
67
+ to: string;
68
+ value: string;
69
+ chain: string;
70
+ data?: string;
71
+ signing_key_path?: string;
72
+ nonce?: number;
73
+ gas_price?: string;
74
+ gas_limit?: number;
75
+ max_fee_per_gas?: string;
76
+ max_priority_fee_per_gas?: string;
77
+ simulate_first?: boolean;
78
+ }): Promise<TransactionResponse>;
49
79
  }
50
80
  //# sourceMappingURL=client.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EACd,eAAe,EACf,kBAAkB,EAClB,aAAa,EACb,iBAAiB,EACjB,cAAc,EACd,iBAAiB,EAElB,MAAM,YAAY,CAAC;AAEpB,qBAAa,eAAgB,SAAQ,KAAK;IAE/B,MAAM,EAAE,MAAM;IACd,MAAM,EAAE,MAAM;gBADd,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM;CAKxB;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;CACjB;AAWD,qBAAa,aAAa;IACxB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,OAAO,CAAS;IAExB,OAAO,CAAC,gBAAgB,CAAC,CAAsC;IAC/D,OAAO,CAAC,cAAc,CAAK;gBAEf,MAAM,EAAE,YAAY,GAAG,gBAAgB;YAYrC,WAAW;YA2BX,OAAO;IAQrB,OAAO,CAAC,QAAQ;YAIF,OAAO;IA4Bf,WAAW,IAAI,OAAO,CAAC,kBAAkB,CAAC;IAI1C,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC;IAMjD,SAAS,CACb,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE;QACJ,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACnC,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC;KAC3B,GACA,OAAO,CAAC,cAAc,CAAC;IAOpB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAOzC,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAOvE,UAAU,IAAI,OAAO,CAAC,iBAAiB,CAAC;IAIxC,WAAW,CACf,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE;QACP,cAAc,EAAE,MAAM,CAAC;QACvB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,UAAU,EAAE,MAAM,CAAC;QACnB,gBAAgB,CAAC,EAAE,MAAM,CAAC;KAC3B,GACA,OAAO,CAAC,iBAAiB,CAAC;IAOvB,YAAY,CAChB,OAAO,EAAE,MAAM,EACf,aAAa,EAAE,MAAM,EACrB,WAAW,EAAE,MAAM,EACnB,WAAW,EAAE,MAAM,EAAE,EACrB,iBAAiB,SAAO,GACvB,OAAO,CAAC,cAAc,CAAC;CAc3B"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
package/dist/client.js CHANGED
@@ -25,7 +25,10 @@ export class OneClawClient {
25
25
  this.baseUrl = config.baseUrl.replace(/\/$/, "");
26
26
  this.vaultId = config.vaultId;
27
27
  if ("agentId" in config) {
28
- this.agentCredentials = { agentId: config.agentId, apiKey: config.apiKey };
28
+ this.agentCredentials = {
29
+ agentId: config.agentId,
30
+ apiKey: config.apiKey,
31
+ };
29
32
  this.token = "";
30
33
  }
31
34
  else {
@@ -52,7 +55,9 @@ export class OneClawClient {
52
55
  if (body.detail)
53
56
  detail = body.detail;
54
57
  }
55
- catch { /* use default */ }
58
+ catch {
59
+ /* use default */
60
+ }
56
61
  throw new OneClawApiError(res.status, `Agent auth failed: ${detail}`);
57
62
  }
58
63
  const data = (await res.json());
@@ -76,18 +81,25 @@ export class OneClawClient {
76
81
  headers: { ...hdrs, ...init?.headers },
77
82
  });
78
83
  if (!res.ok) {
79
- if (res.status === 402) {
80
- throw new OneClawApiError(402, "Free tier quota exhausted. Upgrade your plan or add payment at https://1claw.xyz/settings/billing");
81
- }
82
84
  let detail = `HTTP ${res.status}`;
85
+ let errorType = "";
83
86
  try {
84
87
  const body = (await res.json());
85
88
  if (body.detail)
86
89
  detail = body.detail;
90
+ if (body.type)
91
+ errorType = body.type;
87
92
  }
88
93
  catch {
89
94
  // use default detail
90
95
  }
96
+ if (res.status === 402) {
97
+ throw new OneClawApiError(402, "Quota exhausted. Ask your human to upgrade the plan, add prepaid credits, or enable x402 micropayments at https://1claw.xyz/settings/billing");
98
+ }
99
+ if (res.status === 403 &&
100
+ errorType === "resource_limit_exceeded") {
101
+ throw new OneClawApiError(403, `Resource limit reached: ${detail}. Ask your human to upgrade the plan at https://1claw.xyz/settings/billing`);
102
+ }
91
103
  throw new OneClawApiError(res.status, detail);
92
104
  }
93
105
  if (res.status === 204)
@@ -107,7 +119,10 @@ export class OneClawClient {
107
119
  await this.request(this.vaultUrl(`/secrets/${encodePath(path)}`), { method: "DELETE" });
108
120
  }
109
121
  async createVault(name, description) {
110
- return this.request(`${this.baseUrl}/v1/vaults`, { method: "POST", body: JSON.stringify({ name, description: description ?? "" }) });
122
+ return this.request(`${this.baseUrl}/v1/vaults`, {
123
+ method: "POST",
124
+ body: JSON.stringify({ name, description: description ?? "" }),
125
+ });
111
126
  }
112
127
  async listVaults() {
113
128
  return this.request(`${this.baseUrl}/v1/vaults`);
@@ -126,5 +141,18 @@ export class OneClawClient {
126
141
  }),
127
142
  });
128
143
  }
144
+ // ── Transaction Simulation & Submission ──────────────
145
+ get agentId() {
146
+ return this.agentCredentials?.agentId;
147
+ }
148
+ async simulateTransaction(agentId, tx) {
149
+ return this.request(`${this.baseUrl}/v1/agents/${agentId}/transactions/simulate`, { method: "POST", body: JSON.stringify(tx) });
150
+ }
151
+ async simulateBundle(agentId, transactions) {
152
+ return this.request(`${this.baseUrl}/v1/agents/${agentId}/transactions/simulate-bundle`, { method: "POST", body: JSON.stringify({ transactions }) });
153
+ }
154
+ async submitTransaction(agentId, tx) {
155
+ return this.request(`${this.baseUrl}/v1/agents/${agentId}/transactions`, { method: "POST", body: JSON.stringify(tx) });
156
+ }
129
157
  }
130
158
  //# sourceMappingURL=client.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAWA,MAAM,OAAO,eAAgB,SAAQ,KAAK;IAE/B;IACA;IAFT,YACS,MAAc,EACd,MAAc;QAErB,KAAK,CAAC,MAAM,CAAC,CAAC;QAHP,WAAM,GAAN,MAAM,CAAQ;QACd,WAAM,GAAN,MAAM,CAAQ;QAGrB,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAC;IAChC,CAAC;CACF;AAeD,SAAS,UAAU,CAAC,IAAY;IAC9B,OAAO,IAAI;SACR,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC;SACjC,IAAI,CAAC,GAAG,CAAC,CAAC;AACf,CAAC;AAED,MAAM,iBAAiB,GAAG,MAAM,CAAC;AAEjC,MAAM,OAAO,aAAa;IAChB,OAAO,CAAS;IAChB,KAAK,CAAS;IACd,OAAO,CAAS;IAEhB,gBAAgB,CAAuC;IACvD,cAAc,GAAG,CAAC,CAAC;IAE3B,YAAY,MAAuC;QACjD,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QACjD,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;QAE9B,IAAI,SAAS,IAAI,MAAM,EAAE,CAAC;YACxB,IAAI,CAAC,gBAAgB,GAAG,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC;YAC3E,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;QAClB,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC5B,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,WAAW;QACvB,IAAI,CAAC,IAAI,CAAC,gBAAgB;YAAE,OAAO;QACnC,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,cAAc,GAAG,iBAAiB;YAAE,OAAO;QAE/E,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,sBAAsB,EAAE;YAC7D,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;YAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,QAAQ,EAAE,IAAI,CAAC,gBAAgB,CAAC,OAAO;gBACvC,OAAO,EAAE,IAAI,CAAC,gBAAgB,CAAC,MAAM;aACtC,CAAC;SACH,CAAC,CAAC;QAEH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;YACZ,IAAI,MAAM,GAAG,QAAQ,GAAG,CAAC,MAAM,EAAE,CAAC;YAClC,IAAI,CAAC;gBACH,MAAM,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAiB,CAAC;gBAChD,IAAI,IAAI,CAAC,MAAM;oBAAE,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;YACxC,CAAC;YAAC,MAAM,CAAC,CAAC,iBAAiB,CAAC,CAAC;YAC7B,MAAM,IAAI,eAAe,CAAC,GAAG,CAAC,MAAM,EAAE,sBAAsB,MAAM,EAAE,CAAC,CAAC;QACxE,CAAC;QAED,MAAM,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAiD,CAAC;QAChF,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC;QAC/B,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;IAC5D,CAAC;IAEO,KAAK,CAAC,OAAO;QACnB,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QACzB,OAAO;YACL,aAAa,EAAE,UAAU,IAAI,CAAC,KAAK,EAAE;YACrC,cAAc,EAAE,kBAAkB;SACnC,CAAC;IACJ,CAAC;IAEO,QAAQ,CAAC,MAAM,GAAG,EAAE;QAC1B,OAAO,GAAG,IAAI,CAAC,OAAO,cAAc,IAAI,CAAC,OAAO,GAAG,MAAM,EAAE,CAAC;IAC9D,CAAC;IAEO,KAAK,CAAC,OAAO,CAAI,GAAW,EAAE,IAAkB;QACtD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;QAClC,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;YAC3B,GAAG,IAAI;YACP,OAAO,EAAE,EAAE,GAAG,IAAI,EAAE,GAAI,IAAI,EAAE,OAAkC,EAAE;SACnE,CAAC,CAAC;QAEH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;YACZ,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;gBACvB,MAAM,IAAI,eAAe,CACvB,GAAG,EACH,mGAAmG,CACpG,CAAC;YACJ,CAAC;YACD,IAAI,MAAM,GAAG,QAAQ,GAAG,CAAC,MAAM,EAAE,CAAC;YAClC,IAAI,CAAC;gBACH,MAAM,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAiB,CAAC;gBAChD,IAAI,IAAI,CAAC,MAAM;oBAAE,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;YACxC,CAAC;YAAC,MAAM,CAAC;gBACP,qBAAqB;YACvB,CAAC;YACD,MAAM,IAAI,eAAe,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAChD,CAAC;QAED,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG;YAAE,OAAO,SAAc,CAAC;QAC9C,OAAO,GAAG,CAAC,IAAI,EAAgB,CAAC;IAClC,CAAC;IAED,KAAK,CAAC,WAAW;QACf,OAAO,IAAI,CAAC,OAAO,CAAqB,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC;IACrE,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,IAAY;QAC1B,OAAO,IAAI,CAAC,OAAO,CACjB,IAAI,CAAC,QAAQ,CAAC,YAAY,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAC9C,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,SAAS,CACb,IAAY,EACZ,IAMC;QAED,OAAO,IAAI,CAAC,OAAO,CACjB,IAAI,CAAC,QAAQ,CAAC,YAAY,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,EAC7C,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAC9C,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,IAAY;QAC7B,MAAM,IAAI,CAAC,OAAO,CAChB,IAAI,CAAC,QAAQ,CAAC,YAAY,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,EAC7C,EAAE,MAAM,EAAE,QAAQ,EAAE,CACrB,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,IAAY,EAAE,WAAoB;QAClD,OAAO,IAAI,CAAC,OAAO,CACjB,GAAG,IAAI,CAAC,OAAO,YAAY,EAC3B,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,IAAI,EAAE,EAAE,CAAC,EAAE,CACnF,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,UAAU;QACd,OAAO,IAAI,CAAC,OAAO,CAAoB,GAAG,IAAI,CAAC,OAAO,YAAY,CAAC,CAAC;IACtE,CAAC;IAED,KAAK,CAAC,WAAW,CACf,QAAgB,EAChB,OAMC;QAED,OAAO,IAAI,CAAC,OAAO,CACjB,GAAG,IAAI,CAAC,OAAO,eAAe,QAAQ,QAAQ,EAC9C,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAClD,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,YAAY,CAChB,OAAe,EACf,aAAqB,EACrB,WAAmB,EACnB,WAAqB,EACrB,iBAAiB,GAAG,IAAI;QAExB,OAAO,IAAI,CAAC,OAAO,CACjB,GAAG,IAAI,CAAC,OAAO,cAAc,OAAO,WAAW,EAC/C;YACE,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gBACnB,mBAAmB,EAAE,iBAAiB;gBACtC,cAAc,EAAE,aAAa;gBAC7B,YAAY,EAAE,WAAW;gBACzB,WAAW;aACZ,CAAC;SACH,CACF,CAAC;IACJ,CAAC;CACF"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -11,6 +11,8 @@ import { createVaultTool } from "./tools/create_vault.js";
11
11
  import { listVaultsTool } from "./tools/list_vaults.js";
12
12
  import { grantAccessTool } from "./tools/grant_access.js";
13
13
  import { shareSecretTool } from "./tools/share_secret.js";
14
+ import { simulateTransactionTool } from "./tools/simulate_transaction.js";
15
+ import { submitTransactionTool } from "./tools/submit_transaction.js";
14
16
  const baseUrl = process.env.ONECLAW_BASE_URL ?? "https://api.1claw.xyz";
15
17
  const transport = process.env.MCP_TRANSPORT ?? "stdio";
16
18
  const port = parseInt(process.env.PORT ?? "8080", 10);
@@ -26,7 +28,12 @@ if (transport === "stdio") {
26
28
  const agentApiKey = process.env.ONECLAW_AGENT_API_KEY;
27
29
  const token = process.env.ONECLAW_AGENT_TOKEN;
28
30
  if (agentId && agentApiKey) {
29
- sharedClient = new OneClawClient({ baseUrl, agentId, apiKey: agentApiKey, vaultId });
31
+ sharedClient = new OneClawClient({
32
+ baseUrl,
33
+ agentId,
34
+ apiKey: agentApiKey,
35
+ vaultId,
36
+ });
30
37
  }
31
38
  else if (token) {
32
39
  sharedClient = new OneClawClient({ baseUrl, token, vaultId });
@@ -40,7 +47,11 @@ if (transport === "stdio") {
40
47
  }
41
48
  function resolveClient(session) {
42
49
  if (session) {
43
- return new OneClawClient({ baseUrl, token: session.token, vaultId: session.vaultId });
50
+ return new OneClawClient({
51
+ baseUrl,
52
+ token: session.token,
53
+ vaultId: session.vaultId,
54
+ });
44
55
  }
45
56
  if (sharedClient)
46
57
  return sharedClient;
@@ -86,6 +97,8 @@ registerTool(createVaultTool);
86
97
  registerTool(listVaultsTool);
87
98
  registerTool(grantAccessTool);
88
99
  registerTool(shareSecretTool);
100
+ registerTool(simulateTransactionTool);
101
+ registerTool(submitTransactionTool);
89
102
  // ── Stretch: rotate_and_store ────────────────────────
90
103
  server.addTool({
91
104
  name: "rotate_and_store",
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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"}
@@ -0,0 +1,41 @@
1
+ import { z } from "zod";
2
+ import { OneClawClient } from "../client.js";
3
+ export declare function simulateTransactionTool(client: OneClawClient): {
4
+ name: "simulate_transaction";
5
+ description: string;
6
+ parameters: z.ZodObject<{
7
+ to: z.ZodString;
8
+ value: z.ZodString;
9
+ chain: z.ZodString;
10
+ data: z.ZodOptional<z.ZodString>;
11
+ signing_key_path: z.ZodOptional<z.ZodString>;
12
+ gas_limit: z.ZodOptional<z.ZodNumber>;
13
+ }, "strip", z.ZodTypeAny, {
14
+ value: string;
15
+ to: string;
16
+ chain: string;
17
+ data?: string | undefined;
18
+ signing_key_path?: string | undefined;
19
+ gas_limit?: number | undefined;
20
+ }, {
21
+ value: string;
22
+ to: string;
23
+ chain: string;
24
+ data?: string | undefined;
25
+ signing_key_path?: string | undefined;
26
+ gas_limit?: number | undefined;
27
+ }>;
28
+ execute: (args: {
29
+ to: string;
30
+ value: string;
31
+ chain: string;
32
+ data?: string;
33
+ signing_key_path?: string;
34
+ gas_limit?: number;
35
+ }, { log }: {
36
+ log: {
37
+ info: (msg: string) => void;
38
+ };
39
+ }) => Promise<string>;
40
+ };
41
+ //# sourceMappingURL=simulate_transaction.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"simulate_transaction.d.ts","sourceRoot":"","sources":["../../src/tools/simulate_transaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,aAAa,EAAmB,MAAM,cAAc,CAAC;AAE9D,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;oBAcjD;QACJ,EAAE,EAAE,MAAM,CAAC;QACX,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,WACQ;QAAE,GAAG,EAAE;YAAE,IAAI,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAA;SAAE,CAAA;KAAE;EAiDtD"}
@@ -0,0 +1,63 @@
1
+ import { z } from "zod";
2
+ import { UserError } from "fastmcp";
3
+ import { OneClawApiError } from "../client.js";
4
+ export function simulateTransactionTool(client) {
5
+ return {
6
+ name: "simulate_transaction",
7
+ description: "Simulate an EVM transaction via Tenderly without signing or broadcasting. Returns balance changes, gas estimates, and success/revert status. Use this to preview what a transaction will do before committing real funds.",
8
+ parameters: z.object({
9
+ to: z.string().describe("Destination address (0x-prefixed)"),
10
+ value: z.string().describe("Value in ETH as decimal string (e.g. '0.01')"),
11
+ chain: z.string().describe("Chain name ('base', 'ethereum', etc.) or numeric chain ID"),
12
+ data: z.string().optional().describe("Hex-encoded calldata for contract interactions"),
13
+ signing_key_path: z.string().optional().describe("Vault path to the signing key. Defaults to keys/{chain}-signer"),
14
+ gas_limit: z.number().int().optional().describe("Gas limit. Defaults to 21000"),
15
+ }),
16
+ execute: async (args, { log }) => {
17
+ const agentId = client.agentId;
18
+ if (!agentId) {
19
+ throw new UserError("simulate_transaction requires agent authentication (ONECLAW_AGENT_ID).");
20
+ }
21
+ try {
22
+ const result = await client.simulateTransaction(agentId, args);
23
+ log.info(`simulation: ${result.status} (gas: ${result.gas_used})`);
24
+ const lines = [
25
+ `Simulation ${result.status.toUpperCase()}`,
26
+ `Gas used: ${result.gas_used}`,
27
+ ];
28
+ if (result.gas_estimate_usd) {
29
+ lines.push(`Gas estimate: ${result.gas_estimate_usd}`);
30
+ }
31
+ if (result.balance_changes.length > 0) {
32
+ lines.push("", "Balance changes:");
33
+ for (const bc of result.balance_changes) {
34
+ const token = bc.token_symbol ?? bc.token ?? "ETH";
35
+ lines.push(` ${bc.address}: ${bc.change ?? "?"} ${token}`);
36
+ }
37
+ }
38
+ if (result.error) {
39
+ lines.push("", `Error: ${result.error}`);
40
+ }
41
+ if (result.error_human_readable) {
42
+ lines.push(`Reason: ${result.error_human_readable}`);
43
+ }
44
+ if (result.tenderly_dashboard_url) {
45
+ lines.push("", `Tenderly: ${result.tenderly_dashboard_url}`);
46
+ }
47
+ return lines.join("\n");
48
+ }
49
+ catch (err) {
50
+ if (err instanceof OneClawApiError) {
51
+ if (err.status === 400)
52
+ throw new UserError(err.detail);
53
+ if (err.status === 403)
54
+ throw new UserError(`Access denied: ${err.detail}`);
55
+ if (err.status === 422)
56
+ throw new UserError(`Simulation failed: ${err.detail}`);
57
+ }
58
+ throw err;
59
+ }
60
+ },
61
+ };
62
+ }
63
+ //# sourceMappingURL=simulate_transaction.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"simulate_transaction.js","sourceRoot":"","sources":["../../src/tools/simulate_transaction.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,61 @@
1
+ import { z } from "zod";
2
+ import { OneClawClient } from "../client.js";
3
+ export declare function submitTransactionTool(client: OneClawClient): {
4
+ name: "submit_transaction";
5
+ description: string;
6
+ parameters: z.ZodObject<{
7
+ to: z.ZodString;
8
+ value: z.ZodString;
9
+ chain: z.ZodString;
10
+ data: z.ZodOptional<z.ZodString>;
11
+ signing_key_path: z.ZodOptional<z.ZodString>;
12
+ nonce: z.ZodOptional<z.ZodNumber>;
13
+ gas_price: z.ZodOptional<z.ZodString>;
14
+ gas_limit: z.ZodOptional<z.ZodNumber>;
15
+ max_fee_per_gas: z.ZodOptional<z.ZodString>;
16
+ max_priority_fee_per_gas: z.ZodOptional<z.ZodString>;
17
+ simulate_first: z.ZodDefault<z.ZodBoolean>;
18
+ }, "strip", z.ZodTypeAny, {
19
+ value: string;
20
+ to: string;
21
+ chain: string;
22
+ simulate_first: boolean;
23
+ data?: string | undefined;
24
+ signing_key_path?: string | undefined;
25
+ gas_limit?: number | undefined;
26
+ nonce?: number | undefined;
27
+ gas_price?: string | undefined;
28
+ max_fee_per_gas?: string | undefined;
29
+ max_priority_fee_per_gas?: string | undefined;
30
+ }, {
31
+ value: string;
32
+ to: string;
33
+ chain: string;
34
+ data?: string | undefined;
35
+ signing_key_path?: string | undefined;
36
+ gas_limit?: number | undefined;
37
+ nonce?: number | undefined;
38
+ gas_price?: string | undefined;
39
+ max_fee_per_gas?: string | undefined;
40
+ max_priority_fee_per_gas?: string | undefined;
41
+ simulate_first?: boolean | undefined;
42
+ }>;
43
+ execute: (args: {
44
+ to: string;
45
+ value: string;
46
+ chain: string;
47
+ data?: string;
48
+ signing_key_path?: string;
49
+ nonce?: number;
50
+ gas_price?: string;
51
+ gas_limit?: number;
52
+ max_fee_per_gas?: string;
53
+ max_priority_fee_per_gas?: string;
54
+ simulate_first?: boolean;
55
+ }, { log }: {
56
+ log: {
57
+ info: (msg: string) => void;
58
+ };
59
+ }) => Promise<string>;
60
+ };
61
+ //# sourceMappingURL=submit_transaction.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"submit_transaction.d.ts","sourceRoot":"","sources":["../../src/tools/submit_transaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,aAAa,EAAmB,MAAM,cAAc,CAAC;AAE9D,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oBAmB/C;QACJ,EAAE,EAAE,MAAM,CAAC;QACX,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,wBAAwB,CAAC,EAAE,MAAM,CAAC;QAClC,cAAc,CAAC,EAAE,OAAO,CAAC;KAC1B,WACQ;QAAE,GAAG,EAAE;YAAE,IAAI,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAA;SAAE,CAAA;KAAE;EAkCtD"}
@@ -0,0 +1,58 @@
1
+ import { z } from "zod";
2
+ import { UserError } from "fastmcp";
3
+ import { OneClawApiError } from "../client.js";
4
+ export function submitTransactionTool(client) {
5
+ return {
6
+ name: "submit_transaction",
7
+ description: "Submit an EVM transaction to be signed by 1claw's crypto proxy and optionally broadcast. Supports legacy and EIP-1559 fee modes. Set simulate_first=true to run a Tenderly simulation before signing (recommended).",
8
+ parameters: z.object({
9
+ to: z.string().describe("Destination address (0x-prefixed)"),
10
+ value: z.string().describe("Value in ETH as decimal string (e.g. '0.01')"),
11
+ chain: z.string().describe("Chain name ('base', 'ethereum', etc.) or numeric chain ID"),
12
+ data: z.string().optional().describe("Hex-encoded calldata for contract interactions"),
13
+ signing_key_path: z.string().optional().describe("Vault path to the signing key. Defaults to keys/{chain}-signer"),
14
+ nonce: z.number().int().optional().describe("Transaction nonce (auto-resolved if omitted)"),
15
+ gas_price: z.string().optional().describe("Gas price in wei (legacy mode)"),
16
+ gas_limit: z.number().int().optional().describe("Gas limit. Defaults to 21000"),
17
+ max_fee_per_gas: z.string().optional().describe("EIP-1559 max fee per gas in wei"),
18
+ max_priority_fee_per_gas: z.string().optional().describe("EIP-1559 max priority fee per gas in wei"),
19
+ simulate_first: z.boolean().default(true).describe("Run Tenderly simulation before signing. Defaults to true."),
20
+ }),
21
+ execute: async (args, { log }) => {
22
+ const agentId = client.agentId;
23
+ if (!agentId) {
24
+ throw new UserError("submit_transaction requires agent authentication (ONECLAW_AGENT_ID).");
25
+ }
26
+ try {
27
+ const result = await client.submitTransaction(agentId, args);
28
+ log.info(`transaction: ${result.status} (${result.id})`);
29
+ const lines = [
30
+ `Transaction ${result.status.toUpperCase()}`,
31
+ `ID: ${result.id}`,
32
+ `Chain: ${result.chain} (${result.chain_id})`,
33
+ `To: ${result.to}`,
34
+ `Value: ${result.value_wei} wei`,
35
+ ];
36
+ if (result.tx_hash)
37
+ lines.push(`Tx hash: ${result.tx_hash}`);
38
+ if (result.simulation_id)
39
+ lines.push(`Simulation: ${result.simulation_id} (${result.simulation_status})`);
40
+ if (result.error_message)
41
+ lines.push(`Error: ${result.error_message}`);
42
+ return lines.join("\n");
43
+ }
44
+ catch (err) {
45
+ if (err instanceof OneClawApiError) {
46
+ if (err.status === 400)
47
+ throw new UserError(err.detail);
48
+ if (err.status === 403)
49
+ throw new UserError(`Access denied: ${err.detail}`);
50
+ if (err.status === 422)
51
+ throw new UserError(`Transaction rejected: ${err.detail}`);
52
+ }
53
+ throw err;
54
+ }
55
+ },
56
+ };
57
+ }
58
+ //# sourceMappingURL=submit_transaction.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"submit_transaction.js","sourceRoot":"","sources":["../../src/tools/submit_transaction.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -47,6 +47,46 @@ export interface ShareLinkResponse {
47
47
  expires_at: string;
48
48
  max_access_count: number;
49
49
  }
50
+ export interface BalanceChange {
51
+ address: string;
52
+ token?: string;
53
+ token_symbol?: string;
54
+ before?: string;
55
+ after?: string;
56
+ change?: string;
57
+ }
58
+ export interface SimulationResponse {
59
+ simulation_id: string;
60
+ status: "success" | "reverted" | "error";
61
+ gas_used: number;
62
+ gas_estimate_usd?: string;
63
+ balance_changes: BalanceChange[];
64
+ error?: string;
65
+ error_code?: string;
66
+ error_human_readable?: string;
67
+ revert_reason?: string;
68
+ tenderly_dashboard_url?: string;
69
+ simulated_at: string;
70
+ }
71
+ export interface BundleSimulationResponse {
72
+ simulations: SimulationResponse[];
73
+ }
74
+ export interface TransactionResponse {
75
+ id: string;
76
+ agent_id: string;
77
+ chain: string;
78
+ chain_id: number;
79
+ to: string;
80
+ value_wei: string;
81
+ status: string;
82
+ signed_tx?: string;
83
+ tx_hash?: string;
84
+ error_message?: string;
85
+ created_at: string;
86
+ signed_at?: string;
87
+ simulation_id?: string;
88
+ simulation_status?: string;
89
+ }
50
90
  export interface ApiErrorBody {
51
91
  type: string;
52
92
  title: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,YAAY,yGASf,CAAC;AAEX,MAAM,MAAM,UAAU,GAAG,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC;AAEvD,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,UAAU,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAED,MAAM,WAAW,eAAgB,SAAQ,cAAc;IACrD,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,cAAc,EAAE,CAAC;CAC3B;AAED,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,aAAa,EAAE,CAAC;CACzB;AAED,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACpC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,48 +1,56 @@
1
1
  {
2
- "name": "@1claw/mcp",
3
- "version": "0.2.4",
4
- "description": "MCP server for the 1claw secrets vault — lets AI agents fetch, store, and manage secrets at runtime",
5
- "type": "module",
6
- "main": "dist/index.js",
7
- "types": "dist/index.d.ts",
8
- "bin": {
9
- "1claw-mcp": "dist/index.js"
10
- },
11
- "files": [
12
- "dist",
13
- "README.md",
14
- "LICENSE"
15
- ],
16
- "scripts": {
17
- "build": "tsc",
18
- "prepublishOnly": "npm run build",
19
- "dev": "npx fastmcp dev src/index.ts",
20
- "inspect": "npx fastmcp inspect src/index.ts",
21
- "start": "node dist/index.js"
22
- },
23
- "keywords": [
24
- "mcp",
25
- "secrets",
26
- "vault",
27
- "ai-agents",
28
- "hsm",
29
- "1claw"
30
- ],
31
- "repository": {
32
- "type": "git",
33
- "url": "https://github.com/1clawAI/1claw-mcp.git"
34
- },
35
- "homepage": "https://1claw.xyz",
36
- "license": "PolyForm-Noncommercial-1.0.0",
37
- "dependencies": {
38
- "fastmcp": "^3.33.0",
39
- "zod": "^3.24.0"
40
- },
41
- "devDependencies": {
42
- "@types/node": "^20.19.33",
43
- "typescript": "^5.5.0"
44
- },
45
- "engines": {
46
- "node": ">=20.0.0"
47
- }
2
+ "name": "@1claw/mcp",
3
+ "version": "0.3.0",
4
+ "description": "MCP server for the 1claw secrets vault — lets AI agents fetch, store, and manage secrets at runtime",
5
+ "type": "module",
6
+ "main": "dist/index.js",
7
+ "types": "dist/index.d.ts",
8
+ "bin": {
9
+ "1claw-mcp": "dist/index.js"
10
+ },
11
+ "files": [
12
+ "dist",
13
+ "README.md",
14
+ "LICENSE"
15
+ ],
16
+ "scripts": {
17
+ "build": "tsc",
18
+ "prepublishOnly": "npm run build",
19
+ "dev": "npx fastmcp dev src/index.ts",
20
+ "inspect": "npx fastmcp inspect src/index.ts",
21
+ "start": "node dist/index.js"
22
+ },
23
+ "keywords": [
24
+ "1claw",
25
+ "mcp",
26
+ "model-context-protocol",
27
+ "secrets",
28
+ "vault",
29
+ "ai-agents",
30
+ "hsm",
31
+ "claude",
32
+ "cursor",
33
+ "fastmcp",
34
+ "agent-tools"
35
+ ],
36
+ "publishConfig": {
37
+ "access": "public"
38
+ },
39
+ "repository": {
40
+ "type": "git",
41
+ "url": "https://github.com/1clawAI/1claw-mcp.git"
42
+ },
43
+ "homepage": "https://1claw.xyz",
44
+ "license": "PolyForm-Noncommercial-1.0.0",
45
+ "dependencies": {
46
+ "fastmcp": "^3.33.0",
47
+ "zod": "^3.24.0"
48
+ },
49
+ "devDependencies": {
50
+ "@types/node": "^20.19.33",
51
+ "typescript": "^5.5.0"
52
+ },
53
+ "engines": {
54
+ "node": ">=20.0.0"
55
+ }
48
56
  }