@one-source/mcp 5.6.0 → 5.7.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
@@ -87,8 +87,8 @@ RPC only.
87
87
 
88
88
  | Tool | Description |
89
89
  |------|-------------|
90
- | `1s_payment_mode` | View or switch the x402 payment scheme `exact` (per-call) vs `batch` (payment channel: one deposit funds many off-chain calls, settled with a single claim) |
91
- | `1s_refund` | Refund unused `batch` channel balance back to your wallet on demand |
90
+ | `1s_payment_mode` | View or switch the payment rail + scheme across all four modes: `x402-exact` / `x402-batch` (USDC on Base) and `mpp-charge` / `mpp-session` (USDC.e / pathUSD on Tempo). `batch` and `session` open a channel that funds many calls. |
91
+ | `1s_refund` | Reclaim an open payment channel's unspent deposit on demand — works for both an x402 `batch` channel (Base) and an MPP `session` voucher channel (Tempo) |
92
92
 
93
93
  ### Setup & Ops (3 tools)
94
94
 
@@ -96,8 +96,8 @@ No authentication required.
96
96
 
97
97
  | Tool | Purpose | When to use |
98
98
  |------|---------|-------------|
99
- | `1s_setup_check` | Server health, version, auth status, batch-settlement status, and setup instructions | First thing to call — checks if everything is configured |
100
- | `1s_batch_config` | View or change x402 batch-settlement preferences (autonomy, threshold, deposit multiplier, default mode) and persist them across restarts — no config editing required | Configure batch behaviour from the session |
99
+ | `1s_setup_check` | **Interactive setup & health check** — walks the user through every config choice for both rails (auth method, x402, MPP, payment modes, channel prefs) one decision at a time, every run, plus version/auth/channel/connectivity status | First thing to call — to set up, change configuration, or troubleshoot |
100
+ | `1s_batch_config` | View or change payment-channel preferences (autonomy, threshold, x402 deposit multiplier, MPP session deposit cap, default mode) and persist them across restarts — no config editing required | Configure channel behaviour from the session |
101
101
  | `1s_report_bug` | Report bugs to Slack (or GitHub Issues fallback) | When a tool errors or user wants to report an issue |
102
102
 
103
103
  ## Networks
@@ -111,12 +111,15 @@ All blockchain API tools accept an optional `network` parameter:
111
111
 
112
112
  ## Authentication
113
113
 
114
- Blockchain API tools require authentication. Two options are available — if both are set, API key takes priority.
114
+ Blockchain API tools require authentication. Three options are available — if an API key is set alongside a wallet key, the API key takes priority and the wallet is ignored.
115
+
116
+ > **Tip:** the easiest way to configure any of these is the `1s_setup_check` tool — it walks you through every option interactively and hands you a ready-to-run command, so you never have to hand-edit env vars or config files. The manual instructions below are the reference.
115
117
 
116
118
  | Method | Variable | Description |
117
119
  |--------|----------|-------------|
118
120
  | API key | `ONESOURCE_API_KEY` | Unlimited calls, no per-call cost |
119
- | x402 micropayments | `X402_PRIVATE_KEY` | Pay-per-call via USDC on Base, no account required |
121
+ | x402 micropayments | `X402_PRIVATE_KEY` | Pay-per-call via USDC on **Base**, no account required |
122
+ | MPP micropayments | `MPP_PRIVATE_KEY` | Pay-per-call via USDC.e / pathUSD on **Tempo**, no account required |
120
123
 
121
124
  ### Option 1: API Key
122
125
 
@@ -194,11 +197,55 @@ X402_PRIVATE_KEY=<key> npx -y @one-source/mcp@latest
194
197
  4. **Fund that address with USDC on Base** — send USDC to the address shown, on the [Base](https://base.org) network. A few dollars ($1–5 USDC) is enough for hundreds of calls. Bridge from Ethereum mainnet if needed using the [Base Bridge](https://bridge.base.org).
195
198
  5. **Verify** — call `1s_network_info` for ethereum. If it returns chain data, payments are working.
196
199
 
197
- #### Batch payments (optional)
200
+ ### Option 3: MPP Micropayments (Tempo)
201
+
202
+ Pay-per-call via USDC.e / pathUSD on the [Tempo](https://docs.onesource.io) network — an alternative to x402 on Base. No account required — just a Tempo wallet funded with USDC.e or pathUSD. The server handles payments transparently.
203
+
204
+ 1. **Get an EVM private key** — same format as x402 (64-char hex, `0x` optional).
205
+ 2. **Pass the key to the server:**
206
+
207
+ #### Claude Code
208
+
209
+ ```bash
210
+ claude mcp add onesource -e MPP_PRIVATE_KEY=<key> -- npx -y @one-source/mcp@latest
211
+ ```
212
+
213
+ #### Claude Desktop / Cursor
214
+
215
+ ```json
216
+ {
217
+ "mcpServers": {
218
+ "onesource": {
219
+ "command": "npx",
220
+ "args": ["-y", "@one-source/mcp@latest"],
221
+ "env": {
222
+ "MPP_PRIVATE_KEY": "<key>"
223
+ }
224
+ }
225
+ }
226
+ }
227
+ ```
228
+
229
+ #### Any MCP Client (stdio)
230
+
231
+ ```bash
232
+ MPP_PRIVATE_KEY=<key> npx -y @one-source/mcp@latest
233
+ ```
234
+
235
+ 3. **Reload and find your wallet address** — reload the MCP server, then call `1s_setup_check`. It shows the wallet address derived from your key.
236
+ 4. **Fund that address with USDC.e or pathUSD on Tempo** — a few dollars covers hundreds of calls.
237
+ 5. **Verify** — call `1s_network_info`. If it returns chain data, MPP payments are working.
238
+
239
+ ### Payment channels (optional)
240
+
241
+ By default each paid call signs one payment per call (`x402-exact` on Base, `mpp-charge` on Tempo). For a burst of calls, open a **payment channel** — one on-chain deposit funds many off-chain calls, settled together — which is cheaper than per-call:
242
+
243
+ - **x402 (Base):** `1s_payment_mode { "mode": "x402-batch" }` (or `X402_PAYMENT_MODE=batch`). First call deposits `price × X402_DEPOSIT_MULTIPLIER` (default 10).
244
+ - **MPP (Tempo):** `1s_payment_mode { "mode": "mpp-session" }` (or `MPP_PAYMENT_MODE=session`). First call deposits up to `MPP_MAX_DEPOSIT` (default 1).
198
245
 
199
- By default each paid call signs one USDC payment (`exact`). For a burst of calls, switch to a **batch** payment channel — one on-chain deposit funds many off-chain calls, settled with a single claim — by calling `1s_payment_mode` with `{ "mode": "batch" }` (or setting `X402_PAYMENT_MODE=batch`). The first batch call deposits `price × X402_DEPOSIT_MULTIPLIER` (default 10), so a session usually over-funds the channel. Reclaim the unused balance any time with the `1s_refund` tool; idle channels are also auto-refunded after a few hours. The residual is always recoverable.
246
+ Reclaim the unused balance any time with the `1s_refund` tool (works for both rails); the residual is always recoverable. An idle x402 channel auto-refunds after a few hours; an MPP session settles automatically on clean shutdown.
200
247
 
201
- When paying via x402, the agent is also given batch guidance at startup so it can manage this for you: when it anticipates a burst of calls it offers to switch to batch mode and reminds you to `1s_refund` when done. Tune that behavior with the `1s_batch_config` tool — set whether the agent asks first / switches automatically / only on request (`prompt`), how many calls count as "a burst" (`threshold`), the deposit multiplier, and the default mode, all from your session. Changes are saved to a server-managed config file and persist across restarts, so you never have to edit the MCP config or set env vars by hand. (The matching `X402_BATCH_PROMPT` / `X402_BATCH_THRESHOLD` / `X402_PAYMENT_MODE` / `X402_DEPOSIT_MULTIPLIER` env vars still work as install-time defaults.) Run `1s_setup_check` to see your current mode, whether batch is available, and these settings.
248
+ When paying via a wallet, the agent is also given channel guidance at startup so it can manage this for you: when it anticipates a burst of calls it offers to switch to the active rail's channel mode and reminds you to `1s_refund` when done. Tune that behavior with the `1s_batch_config` tool — set whether the agent asks first / switches automatically / only on request (`prompt`), how many calls count as "a burst" (`threshold`, shared across rails), the x402 deposit multiplier, the MPP session deposit cap, and the default mode, all from your session. Changes are saved to a server-managed config file and persist across restarts, so you never have to edit the MCP config or set env vars by hand. (The matching `X402_*` / `MPP_*` env vars still work as install-time defaults.) Run `1s_setup_check` to see your current mode, whether the channel is available, and these settings.
202
249
 
203
250
  ### Security
204
251
 
@@ -210,16 +257,17 @@ Never commit keys to source control. Use environment variables, a `.env` file (e
210
257
 
211
258
  ### Required
212
259
 
213
- Set one to access the blockchain API tools. Without either, only the no-auth Setup & Ops tools work. API key takes priority when both are set.
260
+ Set one to access the blockchain API tools. Without any, only the no-auth Setup & Ops tools work. The API key takes priority when set alongside a wallet key.
214
261
 
215
262
  | Variable | Default | Description |
216
263
  |----------|---------|-------------|
217
- | `ONESOURCE_API_KEY` | — | OneSource API key for Bearer token auth. Takes priority over x402. |
218
- | `X402_PRIVATE_KEY` | — | EVM private key (64-char hex, `0x` prefix optional) for automatic x402 USDC payments on Base. |
264
+ | `ONESOURCE_API_KEY` | — | OneSource API key for Bearer token auth. Takes priority over the wallet rails. |
265
+ | `X402_PRIVATE_KEY` | — | EVM private key (64-char hex, `0x` prefix optional) for automatic x402 USDC payments on **Base**. |
266
+ | `MPP_PRIVATE_KEY` | — | EVM private key for automatic MPP payments (USDC.e / pathUSD) on **Tempo**. |
219
267
 
220
268
  ### Optional / Advanced
221
269
 
222
- All have sensible defaults — batch mode runs out of the box. Set these only to tune how `batch` mode behaves or how proactively the agent reaches for it. Payment modes can also be switched at runtime with the `1s_payment_mode` tool.
270
+ All have sensible defaults — channel modes run out of the box. Set these only to tune how channel modes behave or how proactively the agent reaches for them. Payment modes can also be switched at runtime with the `1s_payment_mode` tool.
223
271
 
224
272
  | Variable | Default | Description |
225
273
  |----------|---------|-------------|
@@ -227,12 +275,15 @@ All have sensible defaults — batch mode runs out of the box. Set these only to
227
275
  | `X402_DEPOSIT_MULTIPLIER` | `10` | Batch mode: deposit = price × this multiplier, funding that many calls per channel. Unused balance is reclaimable via `1s_refund`. |
228
276
  | `X402_RPC_URL` | Base default | Base RPC endpoint used to submit channel deposits in batch mode. |
229
277
  | `X402_CHANNEL_DIR` | — | Directory to persist batch channel state across restarts. Unset = in-memory (channel lost on restart). |
230
- | `X402_BATCH_PROMPT` | `ask` | How the agent handles switching to batch mode: `ask` (confirm first), `auto` (switch on its own), or `off` (only when explicitly asked). |
231
- | `X402_BATCH_THRESHOLD` | `5` | Number of anticipated calls in a session at/above which the agent considers batch mode. Advisory the agent estimates the count; not a hard runtime counter. |
278
+ | `MPP_PAYMENT_MODE` | `charge` | Initial MPP scheme: `charge` (per-call) or `session` (Tempo voucher channel). Switch in-session with `1s_payment_mode`. |
279
+ | `MPP_MAX_DEPOSIT` | `1` | Session mode: max USDC.e / pathUSD locked per Tempo voucher channel. Unused balance is reclaimable via `1s_refund`. |
280
+ | `MPP_RPC_URL` | Tempo default | Tempo RPC endpoint used to submit channel deposits in session mode. |
281
+ | `X402_BATCH_PROMPT` | `ask` | How the agent handles switching to a channel mode (both rails): `ask` (confirm first), `auto` (switch on its own), or `off` (only when explicitly asked). |
282
+ | `X402_BATCH_THRESHOLD` | `5` | Number of anticipated calls in a session at/above which the agent considers a channel mode (both rails). Advisory — the agent estimates the count; not a hard runtime counter. |
232
283
 
233
284
  ## Troubleshooting
234
285
 
235
- **`1s_setup_check` shows "Not configured"** — Set either `ONESOURCE_API_KEY` or `X402_PRIVATE_KEY`. Reload the MCP server after setting either variable. If the key still isn't reaching the server, set it as a shell environment variable directly.
286
+ **`1s_setup_check` shows "Not configured"** — Set one of `ONESOURCE_API_KEY` (API key), `X402_PRIVATE_KEY` (x402 on Base), or `MPP_PRIVATE_KEY` (MPP on Tempo) — or just run `1s_setup_check` and let it walk you through it. Reload the MCP server after setting any variable. If the key still isn't reaching the server, set it as a shell environment variable directly.
236
287
 
237
288
  **Getting 403 / wrong key active despite correct setup** — A key set in your shell profile (e.g. `~/.zshrc`, `~/.bash_profile`) is picked up by the MCP server process even if it isn't in your Claude MCP config. Run `echo $ONESOURCE_API_KEY` in your terminal to check. If it prints a value you didn't intend, unset it (`unset ONESOURCE_API_KEY`) or explicitly clear it when adding the server: `claude mcp add onesource -e ONESOURCE_API_KEY= -e X402_PRIVATE_KEY=<key> -- npx -y @one-source/mcp@latest`. `1s_setup_check` shows the first 6 characters of whichever key is active so you can confirm which one the server is using.
238
289
 
package/README.npm.md CHANGED
@@ -87,8 +87,8 @@ RPC only.
87
87
 
88
88
  | Tool | Description |
89
89
  |------|-------------|
90
- | `1s_payment_mode` | View or switch the x402 payment scheme `exact` (per-call) vs `batch` (payment channel: one deposit funds many off-chain calls, settled with a single claim) |
91
- | `1s_refund` | Refund unused `batch` channel balance back to your wallet on demand |
90
+ | `1s_payment_mode` | View or switch the payment rail + scheme across all four modes: `x402-exact` / `x402-batch` (USDC on Base) and `mpp-charge` / `mpp-session` (USDC.e / pathUSD on Tempo). `batch` and `session` open a channel that funds many calls. |
91
+ | `1s_refund` | Reclaim an open payment channel's unspent deposit on demand — works for both an x402 `batch` channel (Base) and an MPP `session` voucher channel (Tempo) |
92
92
 
93
93
  ### Setup & Ops (3 tools)
94
94
 
@@ -96,8 +96,8 @@ No authentication required.
96
96
 
97
97
  | Tool | Purpose | When to use |
98
98
  |------|---------|-------------|
99
- | `1s_setup_check` | Server health, version, auth status, batch-settlement status, and setup instructions | First thing to call — checks if everything is configured |
100
- | `1s_batch_config` | View or change x402 batch-settlement preferences (autonomy, threshold, deposit multiplier, default mode) and persist them across restarts — no config editing required | Configure batch behaviour from the session |
99
+ | `1s_setup_check` | **Interactive setup & health check** — walks the user through every config choice for both rails (auth method, x402, MPP, payment modes, channel prefs) one decision at a time, every run, plus version/auth/channel/connectivity status | First thing to call — to set up, change configuration, or troubleshoot |
100
+ | `1s_batch_config` | View or change payment-channel preferences (autonomy, threshold, x402 deposit multiplier, MPP session deposit cap, default mode) and persist them across restarts — no config editing required | Configure channel behaviour from the session |
101
101
  | `1s_report_bug` | Report bugs to Slack (or GitHub Issues fallback) | When a tool errors or user wants to report an issue |
102
102
 
103
103
  ## Networks
@@ -111,12 +111,15 @@ All blockchain API tools accept an optional `network` parameter:
111
111
 
112
112
  ## Authentication
113
113
 
114
- Blockchain API tools require authentication. Two options are available — if both are set, API key takes priority.
114
+ Blockchain API tools require authentication. Three options are available — if an API key is set alongside a wallet key, the API key takes priority and the wallet is ignored.
115
+
116
+ > **Tip:** the easiest way to configure any of these is the `1s_setup_check` tool — it walks you through every option interactively and hands you a ready-to-run command, so you never have to hand-edit env vars or config files. The manual instructions below are the reference.
115
117
 
116
118
  | Method | Variable | Description |
117
119
  |--------|----------|-------------|
118
120
  | API key | `ONESOURCE_API_KEY` | Unlimited calls, no per-call cost |
119
- | x402 micropayments | `X402_PRIVATE_KEY` | Pay-per-call via USDC on Base, no account required |
121
+ | x402 micropayments | `X402_PRIVATE_KEY` | Pay-per-call via USDC on **Base**, no account required |
122
+ | MPP micropayments | `MPP_PRIVATE_KEY` | Pay-per-call via USDC.e / pathUSD on **Tempo**, no account required |
120
123
 
121
124
  ### Option 1: API Key
122
125
 
@@ -194,11 +197,55 @@ X402_PRIVATE_KEY=<key> npx -y @one-source/mcp@latest
194
197
  4. **Fund that address with USDC on Base** — send USDC to the address shown, on the [Base](https://base.org) network. A few dollars ($1–5 USDC) is enough for hundreds of calls. Bridge from Ethereum mainnet if needed using the [Base Bridge](https://bridge.base.org).
195
198
  5. **Verify** — call `1s_network_info` for ethereum. If it returns chain data, payments are working.
196
199
 
197
- #### Batch payments (optional)
200
+ ### Option 3: MPP Micropayments (Tempo)
201
+
202
+ Pay-per-call via USDC.e / pathUSD on the [Tempo](https://docs.onesource.io) network — an alternative to x402 on Base. No account required — just a Tempo wallet funded with USDC.e or pathUSD. The server handles payments transparently.
203
+
204
+ 1. **Get an EVM private key** — same format as x402 (64-char hex, `0x` optional).
205
+ 2. **Pass the key to the server:**
206
+
207
+ #### Claude Code
208
+
209
+ ```bash
210
+ claude mcp add onesource -e MPP_PRIVATE_KEY=<key> -- npx -y @one-source/mcp@latest
211
+ ```
212
+
213
+ #### Claude Desktop / Cursor
214
+
215
+ ```json
216
+ {
217
+ "mcpServers": {
218
+ "onesource": {
219
+ "command": "npx",
220
+ "args": ["-y", "@one-source/mcp@latest"],
221
+ "env": {
222
+ "MPP_PRIVATE_KEY": "<key>"
223
+ }
224
+ }
225
+ }
226
+ }
227
+ ```
228
+
229
+ #### Any MCP Client (stdio)
230
+
231
+ ```bash
232
+ MPP_PRIVATE_KEY=<key> npx -y @one-source/mcp@latest
233
+ ```
234
+
235
+ 3. **Reload and find your wallet address** — reload the MCP server, then call `1s_setup_check`. It shows the wallet address derived from your key.
236
+ 4. **Fund that address with USDC.e or pathUSD on Tempo** — a few dollars covers hundreds of calls.
237
+ 5. **Verify** — call `1s_network_info`. If it returns chain data, MPP payments are working.
238
+
239
+ ### Payment channels (optional)
240
+
241
+ By default each paid call signs one payment per call (`x402-exact` on Base, `mpp-charge` on Tempo). For a burst of calls, open a **payment channel** — one on-chain deposit funds many off-chain calls, settled together — which is cheaper than per-call:
242
+
243
+ - **x402 (Base):** `1s_payment_mode { "mode": "x402-batch" }` (or `X402_PAYMENT_MODE=batch`). First call deposits `price × X402_DEPOSIT_MULTIPLIER` (default 10).
244
+ - **MPP (Tempo):** `1s_payment_mode { "mode": "mpp-session" }` (or `MPP_PAYMENT_MODE=session`). First call deposits up to `MPP_MAX_DEPOSIT` (default 1).
198
245
 
199
- By default each paid call signs one USDC payment (`exact`). For a burst of calls, switch to a **batch** payment channel — one on-chain deposit funds many off-chain calls, settled with a single claim — by calling `1s_payment_mode` with `{ "mode": "batch" }` (or setting `X402_PAYMENT_MODE=batch`). The first batch call deposits `price × X402_DEPOSIT_MULTIPLIER` (default 10), so a session usually over-funds the channel. Reclaim the unused balance any time with the `1s_refund` tool; idle channels are also auto-refunded after a few hours. The residual is always recoverable.
246
+ Reclaim the unused balance any time with the `1s_refund` tool (works for both rails); the residual is always recoverable. An idle x402 channel auto-refunds after a few hours; an MPP session settles automatically on clean shutdown.
200
247
 
201
- When paying via x402, the agent is also given batch guidance at startup so it can manage this for you: when it anticipates a burst of calls it offers to switch to batch mode and reminds you to `1s_refund` when done. Tune that behavior with the `1s_batch_config` tool — set whether the agent asks first / switches automatically / only on request (`prompt`), how many calls count as "a burst" (`threshold`), the deposit multiplier, and the default mode, all from your session. Changes are saved to a server-managed config file and persist across restarts, so you never have to edit the MCP config or set env vars by hand. (The matching `X402_BATCH_PROMPT` / `X402_BATCH_THRESHOLD` / `X402_PAYMENT_MODE` / `X402_DEPOSIT_MULTIPLIER` env vars still work as install-time defaults.) Run `1s_setup_check` to see your current mode, whether batch is available, and these settings.
248
+ When paying via a wallet, the agent is also given channel guidance at startup so it can manage this for you: when it anticipates a burst of calls it offers to switch to the active rail's channel mode and reminds you to `1s_refund` when done. Tune that behavior with the `1s_batch_config` tool — set whether the agent asks first / switches automatically / only on request (`prompt`), how many calls count as "a burst" (`threshold`, shared across rails), the x402 deposit multiplier, the MPP session deposit cap, and the default mode, all from your session. Changes are saved to a server-managed config file and persist across restarts, so you never have to edit the MCP config or set env vars by hand. (The matching `X402_*` / `MPP_*` env vars still work as install-time defaults.) Run `1s_setup_check` to see your current mode, whether the channel is available, and these settings.
202
249
 
203
250
  ### Security
204
251
 
@@ -210,16 +257,17 @@ Never commit keys to source control. Use environment variables, a `.env` file (e
210
257
 
211
258
  ### Required
212
259
 
213
- Set one to access the blockchain API tools. Without either, only the no-auth Setup & Ops tools work. API key takes priority when both are set.
260
+ Set one to access the blockchain API tools. Without any, only the no-auth Setup & Ops tools work. The API key takes priority when set alongside a wallet key.
214
261
 
215
262
  | Variable | Default | Description |
216
263
  |----------|---------|-------------|
217
- | `ONESOURCE_API_KEY` | — | OneSource API key for Bearer token auth. Takes priority over x402. |
218
- | `X402_PRIVATE_KEY` | — | EVM private key (64-char hex, `0x` prefix optional) for automatic x402 USDC payments on Base. |
264
+ | `ONESOURCE_API_KEY` | — | OneSource API key for Bearer token auth. Takes priority over the wallet rails. |
265
+ | `X402_PRIVATE_KEY` | — | EVM private key (64-char hex, `0x` prefix optional) for automatic x402 USDC payments on **Base**. |
266
+ | `MPP_PRIVATE_KEY` | — | EVM private key for automatic MPP payments (USDC.e / pathUSD) on **Tempo**. |
219
267
 
220
268
  ### Optional / Advanced
221
269
 
222
- All have sensible defaults — batch mode runs out of the box. Set these only to tune how `batch` mode behaves or how proactively the agent reaches for it. Payment modes can also be switched at runtime with the `1s_payment_mode` tool.
270
+ All have sensible defaults — channel modes run out of the box. Set these only to tune how channel modes behave or how proactively the agent reaches for them. Payment modes can also be switched at runtime with the `1s_payment_mode` tool.
223
271
 
224
272
  | Variable | Default | Description |
225
273
  |----------|---------|-------------|
@@ -227,12 +275,15 @@ All have sensible defaults — batch mode runs out of the box. Set these only to
227
275
  | `X402_DEPOSIT_MULTIPLIER` | `10` | Batch mode: deposit = price × this multiplier, funding that many calls per channel. Unused balance is reclaimable via `1s_refund`. |
228
276
  | `X402_RPC_URL` | Base default | Base RPC endpoint used to submit channel deposits in batch mode. |
229
277
  | `X402_CHANNEL_DIR` | — | Directory to persist batch channel state across restarts. Unset = in-memory (channel lost on restart). |
230
- | `X402_BATCH_PROMPT` | `ask` | How the agent handles switching to batch mode: `ask` (confirm first), `auto` (switch on its own), or `off` (only when explicitly asked). |
231
- | `X402_BATCH_THRESHOLD` | `5` | Number of anticipated calls in a session at/above which the agent considers batch mode. Advisory the agent estimates the count; not a hard runtime counter. |
278
+ | `MPP_PAYMENT_MODE` | `charge` | Initial MPP scheme: `charge` (per-call) or `session` (Tempo voucher channel). Switch in-session with `1s_payment_mode`. |
279
+ | `MPP_MAX_DEPOSIT` | `1` | Session mode: max USDC.e / pathUSD locked per Tempo voucher channel. Unused balance is reclaimable via `1s_refund`. |
280
+ | `MPP_RPC_URL` | Tempo default | Tempo RPC endpoint used to submit channel deposits in session mode. |
281
+ | `X402_BATCH_PROMPT` | `ask` | How the agent handles switching to a channel mode (both rails): `ask` (confirm first), `auto` (switch on its own), or `off` (only when explicitly asked). |
282
+ | `X402_BATCH_THRESHOLD` | `5` | Number of anticipated calls in a session at/above which the agent considers a channel mode (both rails). Advisory — the agent estimates the count; not a hard runtime counter. |
232
283
 
233
284
  ## Troubleshooting
234
285
 
235
- **`1s_setup_check` shows "Not configured"** — Set either `ONESOURCE_API_KEY` or `X402_PRIVATE_KEY`. Reload the MCP server after setting either variable. If the key still isn't reaching the server, set it as a shell environment variable directly.
286
+ **`1s_setup_check` shows "Not configured"** — Set one of `ONESOURCE_API_KEY` (API key), `X402_PRIVATE_KEY` (x402 on Base), or `MPP_PRIVATE_KEY` (MPP on Tempo) — or just run `1s_setup_check` and let it walk you through it. Reload the MCP server after setting any variable. If the key still isn't reaching the server, set it as a shell environment variable directly.
236
287
 
237
288
  **Getting 403 / wrong key active despite correct setup** — A key set in your shell profile (e.g. `~/.zshrc`, `~/.bash_profile`) is picked up by the MCP server process even if it isn't in your Claude MCP config. Run `echo $ONESOURCE_API_KEY` in your terminal to check. If it prints a value you didn't intend, unset it (`unset ONESOURCE_API_KEY`) or explicitly clear it when adding the server: `claude mcp add onesource -e ONESOURCE_API_KEY= -e X402_PRIVATE_KEY=<key> -- npx -y @one-source/mcp@latest`. `1s_setup_check` shows the first 6 characters of whichever key is active so you can confirm which one the server is using.
238
289
 
package/README.repo.md CHANGED
@@ -90,10 +90,10 @@ RPC only.
90
90
  ### Payments (2 tools)
91
91
 
92
92
 
93
- | Tool | Description |
94
- | ----------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------- |
95
- | `1s_payment_mode` | View or switch the x402 payment scheme `exact` (per-call) vs `batch` (payment channel: one deposit funds many off-chain calls, settled with a single claim) |
96
- | `1s_refund` | Refund unused `batch` channel balance back to your wallet on demand |
93
+ | Tool | Description |
94
+ | ----------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
95
+ | `1s_payment_mode` | View or switch the payment rail + scheme across all four modes: `x402-exact` / `x402-batch` (USDC on Base) and `mpp-charge` / `mpp-session` (USDC.e / pathUSD on Tempo). `batch` and `session` open a channel that funds many calls. |
96
+ | `1s_refund` | Reclaim an open payment channel's unspent deposit on demand — works for both an x402 `batch` channel (Base) and an MPP `session` voucher channel (Tempo) |
97
97
 
98
98
 
99
99
  ### Setup & Ops (3 tools)
@@ -103,8 +103,8 @@ No authentication required.
103
103
 
104
104
  | Tool | Purpose | When to use |
105
105
  | ----------------- | ------------------------------------------------------- | -------------------------------------------------------- |
106
- | `1s_setup_check` | Server health, version, auth status, batch-settlement status, and setup instructions | First thing to call — checks if everything is configured |
107
- | `1s_batch_config` | View or change x402 batch-settlement preferences (autonomy, threshold, deposit multiplier, default mode) and persist them across restarts — no config editing required | Configure batch behaviour from the session |
106
+ | `1s_setup_check` | **Interactive setup & health check.** Walks the user through every configuration choice for both rails (auth method, x402, MPP, payment modes, channel prefs) one decision at a time — every run, even when already configured — plus version, auth status, channel status, and connectivity | First thing to call — to set up, change configuration, or troubleshoot |
107
+ | `1s_batch_config` | View or change payment-channel preferences (autonomy, threshold, x402 deposit multiplier, MPP session deposit cap, default mode) and persist them across restarts — no config editing required | Configure channel behaviour from the session |
108
108
  | `1s_report_bug` | Report bugs to Slack (or GitHub Issues fallback) | When a tool errors or user wants to report an issue |
109
109
 
110
110
 
@@ -121,13 +121,16 @@ All blockchain API tools accept an optional `network` parameter:
121
121
 
122
122
  ## Authentication
123
123
 
124
- Blockchain API tools require authentication. Two options are available — if both are set, API key takes priority.
124
+ Blockchain API tools require authentication. Three options are available — if an API key is set alongside a wallet key, the API key takes priority and the wallet is ignored.
125
125
 
126
+ > **Tip:** the fastest way to configure any of these is the `1s_setup_check` tool — it walks you through every option interactively and hands you a ready-to-run command, so you never have to hand-edit env vars or config files. The manual instructions below are the reference.
126
127
 
127
- | Method | Variable | Description |
128
- | ------------------ | ------------------- | -------------------------------------------------- |
129
- | API key | `ONESOURCE_API_KEY` | Unlimited calls, no per-call cost |
130
- | x402 micropayments | `X402_PRIVATE_KEY` | Pay-per-call via USDC on Base, no account required |
128
+
129
+ | Method | Variable | Description |
130
+ | ------------------ | ------------------- | ---------------------------------------------------------------- |
131
+ | API key | `ONESOURCE_API_KEY` | Unlimited calls, no per-call cost |
132
+ | x402 micropayments | `X402_PRIVATE_KEY` | Pay-per-call via USDC on **Base**, no account required |
133
+ | MPP micropayments | `MPP_PRIVATE_KEY` | Pay-per-call via USDC.e / pathUSD on **Tempo**, no account required |
131
134
 
132
135
 
133
136
  ### Option 1: API Key
@@ -209,6 +212,46 @@ Add the `env` block to your MCP config:
209
212
  X402_PRIVATE_KEY=<key> npx -y @one-source/mcp@latest
210
213
  ```
211
214
 
215
+ ### Option 3: MPP Micropayments (Tempo)
216
+
217
+ Blockchain API endpoints can also be paid on the [Tempo](https://docs.onesource.io) network via MPP — an alternative to x402 on Base. When you set `MPP_PRIVATE_KEY`, the server handles payments automatically; tool calls are paid and retried transparently.
218
+
219
+ 1. **Get an EVM private key** — same format as x402 (64-char hex, `0x` optional). Export one or generate a fresh key.
220
+ 2. **Pass the key to the server** using one of the methods below.
221
+ 3. **Reload and find your wallet address** — reload the MCP server, then call `1s_setup_check`. It shows the wallet address derived from your key.
222
+ 4. **Fund that address with USDC.e or pathUSD on Tempo** — a few dollars covers hundreds of calls.
223
+ 5. **Verify** — call `1s_network_info`. If it returns chain data, MPP payments are working end-to-end.
224
+
225
+ #### Claude Code
226
+
227
+ ```bash
228
+ claude mcp add onesource -e MPP_PRIVATE_KEY=<key> -- npx -y @one-source/mcp@latest
229
+ ```
230
+
231
+ #### Claude Desktop / Cursor
232
+
233
+ ```json
234
+ {
235
+ "mcpServers": {
236
+ "onesource": {
237
+ "command": "npx",
238
+ "args": ["-y", "@one-source/mcp@latest"],
239
+ "env": {
240
+ "MPP_PRIVATE_KEY": "<key>"
241
+ }
242
+ }
243
+ }
244
+ }
245
+ ```
246
+
247
+ #### Any MCP Client (stdio)
248
+
249
+ ```bash
250
+ MPP_PRIVATE_KEY=<key> npx -y @one-source/mcp@latest
251
+ ```
252
+
253
+ By default MPP pays per call (`mpp-charge`). For a burst of calls, switch to a Tempo voucher channel with `1s_payment_mode { "mode": "mpp-session" }` (or set `MPP_PAYMENT_MODE=session`) — one deposit funds many off-chain calls; reclaim the unspent balance any time with `1s_refund`, or it settles automatically on clean shutdown.
254
+
212
255
  ### Config File Locations
213
256
 
214
257
  If you prefer editing the config file directly instead of using CLI commands:
@@ -227,13 +270,18 @@ Add the `onesource` entry inside `"mcpServers"` using the JSON block shown above
227
270
 
228
271
  ### Alternative: Set as an Environment Variable
229
272
 
230
- Instead of the `env` config block, you can set either variable as a shell or system environment variable: `export ONESOURCE_API_KEY=<key>` (bash/zsh) or `$env:ONESOURCE_API_KEY = "<key>"` (PowerShell). Set it at the OS level for persistence across sessions.
273
+ Instead of the `env` config block, you can set any of these variables as a shell or system environment variable: `export ONESOURCE_API_KEY=<key>` (bash/zsh) or `$env:ONESOURCE_API_KEY = "<key>"` (PowerShell). Set it at the OS level for persistence across sessions.
274
+
275
+ ### Payment channels (optional)
276
+
277
+ By default each paid call signs one payment per call (`x402-exact` on Base, `mpp-charge` on Tempo). For a burst of calls, open a **payment channel** — one on-chain deposit funds many off-chain calls, settled together — which is cheaper than paying per call:
231
278
 
232
- ### Batch payments (optional)
279
+ - **x402 (Base):** switch to `x402-batch` with `1s_payment_mode { "mode": "x402-batch" }` (or `X402_PAYMENT_MODE=batch`). The first call deposits `price × X402_DEPOSIT_MULTIPLIER` (default 10).
280
+ - **MPP (Tempo):** switch to `mpp-session` with `1s_payment_mode { "mode": "mpp-session" }` (or `MPP_PAYMENT_MODE=session`). The first call deposits up to `MPP_MAX_DEPOSIT` (default 1).
233
281
 
234
- By default each paid call signs one USDC payment (`exact`). For a burst of calls, switch to a **batch** payment channel — one on-chain deposit funds many off-chain calls, settled with a single claim — by calling `1s_payment_mode` with `{ "mode": "batch" }` (or setting `X402_PAYMENT_MODE=batch`). The first batch call deposits `price × X402_DEPOSIT_MULTIPLIER` (default 10), so a session usually over-funds the channel. Reclaim the unused balance any time with the `1s_refund` tool; idle channels are also auto-refunded after a few hours. The residual is always recoverable.
282
+ Reclaim the unused balance any time with the `1s_refund` tool (works for both rails); the residual is always recoverable on-chain. An idle x402 channel also auto-refunds after a few hours, and an MPP session settles automatically on clean shutdown.
235
283
 
236
- When paying via x402, the agent receives batch guidance in its system prompt at startup, so it can manage this for you rather than leaving batching as a manual step: when it anticipates a burst of calls it offers to switch to batch mode and reminds you to `1s_refund` when finished. Control how proactive it is with `X402_BATCH_PROMPT` (`ask` / `auto` / `off`) and `X402_BATCH_THRESHOLD` (how many anticipated calls count as a burst) — see [Environment Variables](#optional--advanced). `1s_setup_check` reports your current mode, whether batch is available, and both settings.
284
+ When paying via a wallet, the agent receives channel guidance in its system prompt at startup, so it can manage this for you rather than leaving it as a manual step: when it anticipates a burst of calls it offers to switch to the channel mode for the active rail and reminds you to `1s_refund` when finished. Control how proactive it is with `X402_BATCH_PROMPT` (`ask` / `auto` / `off`) and `X402_BATCH_THRESHOLD` (how many anticipated calls count as a burst — shared across both rails) — see [Environment Variables](#optional--advanced). `1s_setup_check` reports your current mode, whether the channel is available, and all settings.
237
285
 
238
286
  ### Security
239
287
 
@@ -245,16 +293,17 @@ Never commit keys to source control. Use environment variables, a `.env` file (e
245
293
 
246
294
  ### Required
247
295
 
248
- Set one to access the blockchain API tools. Without either, only the no-auth Setup & Ops tools work. API key takes priority when both are set.
296
+ Set one to access the blockchain API tools. Without any, only the no-auth Setup & Ops tools work. The API key takes priority when set alongside a wallet key.
249
297
 
250
298
  | Variable | Default | Description |
251
299
  | --- | --- | --- |
252
- | `ONESOURCE_API_KEY` | — | OneSource API key for Bearer token auth. Takes priority over x402. |
253
- | `X402_PRIVATE_KEY` | — | EVM private key (64-char hex, `0x` prefix optional) for automatic x402 USDC payments on Base. |
300
+ | `ONESOURCE_API_KEY` | — | OneSource API key for Bearer token auth. Takes priority over the wallet rails. |
301
+ | `X402_PRIVATE_KEY` | — | EVM private key (64-char hex, `0x` prefix optional) for automatic x402 USDC payments on **Base**. |
302
+ | `MPP_PRIVATE_KEY` | — | EVM private key for automatic MPP payments (USDC.e / pathUSD) on **Tempo**. |
254
303
 
255
304
  ### Optional / Advanced
256
305
 
257
- All have sensible defaults — batch mode runs out of the box. Set these only to override an endpoint, tune how `batch` mode behaves, or adjust analytics. Payment modes can also be switched at runtime with the `1s_payment_mode` tool. The batch knobs below (`X402_PAYMENT_MODE`, `X402_DEPOSIT_MULTIPLIER`, `X402_BATCH_PROMPT`, `X402_BATCH_THRESHOLD`) can be set and persisted from a session with the `1s_batch_config` tool — no config editing or restart required; a saved config takes priority over these env vars.
306
+ All have sensible defaults — channel modes run out of the box. Set these only to override an endpoint, tune how channel modes behave, or adjust analytics. Payment modes can also be switched at runtime with the `1s_payment_mode` tool. The channel knobs below (`X402_PAYMENT_MODE`, `X402_DEPOSIT_MULTIPLIER`, `MPP_PAYMENT_MODE`, `MPP_MAX_DEPOSIT`, `X402_BATCH_PROMPT`, `X402_BATCH_THRESHOLD`) can be set and persisted from a session with the `1s_batch_config` tool — no config editing or restart required; a saved config takes priority over these env vars.
258
307
 
259
308
  | Variable | Default | Description |
260
309
  | --- | --- | --- |
@@ -264,9 +313,12 @@ All have sensible defaults — batch mode runs out of the box. Set these only to
264
313
  | `X402_DEPOSIT_MULTIPLIER` | `10` | Batch mode: deposit = price × this multiplier, funding that many calls per channel. Unused balance is reclaimable via `1s_refund`. |
265
314
  | `X402_CHANNEL_DIR` | — | Directory to persist batch channel state across restarts. Unset = in-memory (channel lost on restart). |
266
315
  | `X402_CHANNEL_SALT` | zero | Batch mode: 32-byte hex salt to derive the starting channel id. The client auto-rotates to the next salt when a channel is exhausted or refunded. |
267
- | `X402_BATCH_PROMPT` | `ask` | How the agent handles switching to batch mode: `ask` (confirm before switching), `auto` (switch on its own), or `off` (only switch when explicitly asked). |
268
- | `X402_BATCH_THRESHOLD` | `5` | Number of anticipated calls in a session at/above which the agent considers batch mode. Advisory the agent estimates the call count; it is not a hard runtime counter. |
269
- | `ONESOURCE_CONFIG_DIR` | `~/.onesource` | Directory holding the server-managed batch config (`batch-config.json`) written by `1s_batch_config`. |
316
+ | `MPP_PAYMENT_MODE` | `charge` | Initial MPP scheme: `charge` (per-call) or `session` (Tempo voucher channel). Switch in-session with `1s_payment_mode`. |
317
+ | `MPP_MAX_DEPOSIT` | `1` | Session mode: max USDC.e / pathUSD locked per Tempo voucher channel. Unused balance is reclaimable via `1s_refund`. |
318
+ | `MPP_RPC_URL` | Tempo default | Tempo RPC endpoint used to submit channel deposits in session mode. |
319
+ | `X402_BATCH_PROMPT` | `ask` | How the agent handles switching to a channel mode (both rails): `ask` (confirm before switching), `auto` (switch on its own), or `off` (only switch when explicitly asked). |
320
+ | `X402_BATCH_THRESHOLD` | `5` | Number of anticipated calls in a session at/above which the agent considers a channel mode (both rails). Advisory — the agent estimates the call count; it is not a hard runtime counter. |
321
+ | `ONESOURCE_CONFIG_DIR` | `~/.onesource` | Directory holding the server-managed channel config (`batch-config.json`) written by `1s_batch_config`. |
270
322
  | `ONESOURCE_ANALYTICS` | `true` | Set to `false` to disable analytics. |
271
323
  | `ONESOURCE_ANALYTICS_URL` | `https://1s-analytics.vercel.app` | Dashboard endpoint for analytics. |
272
324
  | `X402_ANALYTICS_KEY` | `onesource-mcp` | API key for dashboard analytics. |
@@ -275,7 +327,7 @@ All have sensible defaults — batch mode runs out of the box. Set these only to
275
327
  ## Troubleshooting
276
328
 
277
329
  `**1s_setup_check` shows "Not configured"**
278
- Set either `ONESOURCE_API_KEY` or `X402_PRIVATE_KEY`. Reload the MCP server after setting either variable (see note above). If the key still isn't reaching the server, set it as a shell environment variable directly.
330
+ Set one of `ONESOURCE_API_KEY` (API key), `X402_PRIVATE_KEY` (x402 on Base), or `MPP_PRIVATE_KEY` (MPP on Tempo) — or just run `1s_setup_check` and let it walk you through it. Reload the MCP server after setting any variable (see note above). If the key still isn't reaching the server, set it as a shell environment variable directly.
279
331
 
280
332
  **Getting 403 / wrong key active despite correct setup**
281
333
  A key set in your shell profile (e.g. `~/.zshrc`, `~/.bash_profile`) is picked up by the MCP server process even if it isn't in your Claude MCP config. Run `echo $ONESOURCE_API_KEY` in your terminal to check. If it prints a value you didn't intend, unset it (`unset ONESOURCE_API_KEY`) or explicitly clear it when adding the server: `claude mcp add onesource -e ONESOURCE_API_KEY= -e X402_PRIVATE_KEY=<key> -- npx -y @one-source/mcp@latest`. `1s_setup_check` shows the first 6 characters of whichever key is active so you can confirm which one the server is using.
package/dist/cli.js CHANGED
@@ -57,12 +57,12 @@ function buildBatchGuidance(authMethod, prompt, threshold) {
57
57
  /** Build the MCP instructions string based on version comparison and active auth method. */
58
58
  function buildInstructions(currentVersion, latestVersion, authMethod, batchPrompt, batchThreshold) {
59
59
  const authLine = authMethod === 'api_key'
60
- ? 'Blockchain API tools are authenticated via API key. If a tool returns a 402 error, the API key may be invalid or inactive — tell the user to verify their key at app.onesource.io. If a tool returns a 403 error, the account does not have a developer plan — tell the user to upgrade at app.onesource.io.'
60
+ ? 'Blockchain API tools are authenticated via API key. If a tool returns a 402 error, the API key may be invalid or inactive — tell the user to verify their key at app.onesource.io. If a tool returns a 403 error, the account does not have a developer plan — tell the user to upgrade at app.onesource.io. To review or change configuration (auth method or either payment rail), run 1s_setup_check — it walks the user through every option interactively.'
61
61
  : authMethod === 'x402'
62
- ? 'Blockchain API tools require x402 payment (USDC on Base). If a tool returns a 402 error, the user needs to configure X402_PRIVATE_KEY. Call 1s_setup_check for diagnostics and setup instructions.'
62
+ ? 'Blockchain API tools are paid via x402 (USDC on Base). If a tool returns a 402 error, the wallet (X402_PRIVATE_KEY) may be unfunded — it must hold USDC on Base. To set up, switch payment rail (x402 on Base or MPP on Tempo), or change any setting, run 1s_setup_check it walks the user through every option interactively, with no manual config editing.'
63
63
  : authMethod === 'mpp'
64
- ? 'Blockchain API tools are paid via MPP (Tempo USDC.e / pathUSD). If a tool returns a 402 error, the MPP wallet (MPP_PRIVATE_KEY) may be unfunded — it must hold USDC.e or pathUSD on Tempo. Call 1s_setup_check for diagnostics.'
65
- : 'Blockchain API tools require authentication. Set ONESOURCE_API_KEY (API key), X402_PRIVATE_KEY (x402 on Base), or MPP_PRIVATE_KEY (MPP on Tempo) to access them. Call 1s_setup_check for setup instructions.';
64
+ ? 'Blockchain API tools are paid via MPP (Tempo USDC.e / pathUSD). If a tool returns a 402 error, the MPP wallet (MPP_PRIVATE_KEY) may be unfunded — it must hold USDC.e or pathUSD on Tempo. To set up, switch payment rail (MPP on Tempo or x402 on Base), or change any setting, run 1s_setup_check it walks the user through every option interactively, with no manual config editing.'
65
+ : 'Blockchain API tools require authentication and are LOCKED until it is configured. The moment the user wants to use a blockchain tool — or asks to set up, configure, or connect OneSource — call 1s_setup_check: it is an interactive setup that walks the user through choosing an auth method (API key) or payment rail (x402 on Base / MPP on Tempo) and every related option, then hands them a ready-to-run command. Do not ask the user to hand-edit env vars or config files; run 1s_setup_check and follow its agent instructions.';
66
66
  const batchGuidance = buildBatchGuidance(authMethod, batchPrompt, batchThreshold);
67
67
  const baseline = [
68
68
  'OneSource MCP — 30 tools for blockchain data.',
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"register-docs-tools.d.ts","sourceRoot":"","sources":["../src/register-docs-tools.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAiCzE,OAAO,KAAK,EAAE,SAAS,EAAiB,MAAM,gBAAgB,CAAC;AAwF/D,MAAM,WAAW,wBAAwB;IACvC,MAAM,EAAE,SAAS,CAAC;IAClB,SAAS,EAAE,SAAS,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IAG7B,2DAA2D;IAC3D,UAAU,CAAC,EAAE,SAAS,GAAG,MAAM,GAAG,KAAK,GAAG,MAAM,CAAC;IACjD,qFAAqF;IACrF,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,wBAAwB,GAAG,MAAM,CAsYxE"}
1
+ {"version":3,"file":"register-docs-tools.d.ts","sourceRoot":"","sources":["../src/register-docs-tools.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAiCzE,OAAO,KAAK,EAAE,SAAS,EAAiB,MAAM,gBAAgB,CAAC;AAwF/D,MAAM,WAAW,wBAAwB;IACvC,MAAM,EAAE,SAAS,CAAC;IAClB,SAAS,EAAE,SAAS,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IAG7B,2DAA2D;IAC3D,UAAU,CAAC,EAAE,SAAS,GAAG,MAAM,GAAG,KAAK,GAAG,MAAM,CAAC;IACjD,qFAAqF;IACrF,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,wBAAwB,GAAG,MAAM,CAkTxE"}
@@ -149,11 +149,9 @@ export function registerDocsTools(opts) {
149
149
  let count = 0;
150
150
  const authMethod = opts.authMethod;
151
151
  const x402Address = opts.x402Address;
152
- instrumentedTool(server, analytics, transport, '1s_setup_check', 'Check OneSource MCP server health version (current vs latest), authentication status (API key, x402, or MPP), payment-channel status for each enabled rail, API connectivity, and setup instructions if anything is missing. Free, no authentication required. Call this first when troubleshooting.', {}, async () => {
152
+ instrumentedTool(server, analytics, transport, '1s_setup_check', 'Interactive setup & health check for the OneSource MCP server. Returns a step-by-step setup script that the AGENT must run by consulting the user: it walks through EVERY configuration choice for BOTH payment rails (auth method, API key, x402 on Base, MPP on Tempo, payment modes, channel preferences) one decision at a time, every time it is run — even when everything is already configured, so the user can review and adjust without touching env vars or config files directly. Also reports version, auth status, channel status, and connectivity. Free, no authentication required. Call this first to set up, to change configuration, or to troubleshoot.', {}, async () => {
153
153
  const parts = [];
154
- // 1. Server version
155
- parts.push('## Server Version\n');
156
- parts.push(`Current: ${VERSION}`);
154
+ // ---- Gather current state -------------------------------------------
157
155
  let latestVersion = 'unknown';
158
156
  try {
159
157
  const res = await fetch('https://registry.npmjs.org/@one-source/mcp/latest', {
@@ -165,238 +163,164 @@ export function registerDocsTools(opts) {
165
163
  }
166
164
  }
167
165
  catch { /* network error — skip */ }
168
- parts.push(`Latest: ${latestVersion}`);
169
- if (latestVersion !== 'unknown' && latestVersion !== VERSION) {
170
- parts.push('\n**Update available!** Run: `npx -y @one-source/mcp@latest`');
171
- }
172
- else if (latestVersion === VERSION) {
173
- parts.push('\nYou are on the latest version.');
174
- }
175
- // 2. Authentication status
176
- parts.push('\n## Authentication\n');
177
- const runtimeApiKey = process.env.ONESOURCE_API_KEY;
166
+ const updateAvailable = latestVersion !== 'unknown' && latestVersion !== VERSION;
167
+ const runtimeApiKey = process.env.ONESOURCE_API_KEY?.trim();
178
168
  const runtimeX402Key = process.env.X402_PRIVATE_KEY;
179
169
  const runtimeMppKey = process.env.MPP_PRIVATE_KEY;
180
170
  const bothSet = !!(runtimeApiKey && (runtimeX402Key || runtimeMppKey));
181
171
  // Use authMethod from startup; fall back to runtime env check for robustness
182
172
  const activeMethod = authMethod ?? (runtimeApiKey ? 'api_key' : runtimeX402Key ? 'x402' : runtimeMppKey ? 'mpp' : 'none');
183
173
  const payInfo = getPaymentModeInfo();
184
- // Both rails are reported at equal depth, independent of which is primary.
185
- // (When an API key is active, setupPayments is skipped so both read false —
186
- // the wallet keys are intentionally ignored; see the bothSet warning.)
187
174
  const x402Enabled = payInfo.x402.enabled;
188
175
  const mppEnabled = payInfo.mpp.enabled;
189
- if (activeMethod === 'api_key') {
190
- parts.push('Status: **Configured (API key)**');
191
- const keyPreview = runtimeApiKey?.trim().slice(0, 6);
192
- if (keyPreview) {
193
- parts.push(`Key: \`${keyPreview}••••••\``);
194
- }
195
- if (bothSet) {
196
- parts.push('\n⚠️ Both `ONESOURCE_API_KEY` and `X402_PRIVATE_KEY` are set. API key takes priority; x402 is not used.');
197
- }
198
- parts.push('\nAPI key authentication is active. Blockchain API tools are ready to use.');
199
- parts.push('\n> **If this key was not explicitly set in your Claude MCP config**, it may be inherited from your shell environment. Run `echo $ONESOURCE_API_KEY` in your terminal to check.');
200
- }
201
- else if (activeMethod === 'x402') {
202
- parts.push('Status: **Configured (x402)**');
203
- const addr = x402Address ?? payInfo.x402.address;
204
- if (addr) {
205
- parts.push(`Wallet: \`${addr}\``);
206
- }
207
- parts.push('\nThis wallet must hold USDC on the **Base** network to pay for API calls.');
208
- parts.push('\n> **If this key was not explicitly set in your Claude MCP config**, it may be inherited from your shell environment. Run `echo $X402_PRIVATE_KEY` in your terminal to check.');
209
- if (mppEnabled) {
210
- const mppAddr = payInfo.mpp.address;
211
- parts.push(`\nAlso available: **MPP (Tempo)**${mppAddr ? ` wallet \`${mppAddr}\`` : ''} (must hold USDC.e or pathUSD on Tempo). Switch with \`1s_payment_mode { "mode": "mpp-charge" }\` or \`{ "mode": "mpp-session" }\`.`);
212
- }
213
- }
214
- else if (activeMethod === 'mpp') {
215
- parts.push('Status: **Configured (MPP / Tempo)**');
216
- const addr = payInfo.mpp.address ?? x402Address;
217
- if (addr) {
218
- parts.push(`Wallet: \`${addr}\``);
219
- }
220
- parts.push('\nThis wallet must hold **USDC.e or pathUSD on the Tempo network** to pay for API calls.');
221
- parts.push('Two modes are available via `1s_payment_mode`: `mpp-charge` (per-call) and `mpp-session` (a voucher channel — cheaper for a burst of calls; reclaim the unspent deposit with `1s_refund`, or it settles automatically on shutdown).');
222
- parts.push('\n> **If this key was not explicitly set in your Claude MCP config**, it may be inherited from your shell environment. Run `echo $MPP_PRIVATE_KEY` in your terminal to check.');
223
- if (x402Enabled) {
224
- const x402Addr = payInfo.x402.address;
225
- parts.push(`\nAlso available: **x402 (Base)**${x402Addr ? ` — wallet \`${x402Addr}\`` : ''} (must hold USDC on Base). Switch with \`1s_payment_mode { "mode": "x402-exact" }\` or \`{ "mode": "x402-batch" }\`.`);
226
- }
227
- }
228
- else {
229
- parts.push('Status: **Not configured**');
230
- parts.push('\nBlockchain API tools require authentication. Choose one of the options below.\n');
231
- parts.push('### Option 1: API Key (recommended)\n');
232
- parts.push('Set `ONESOURCE_API_KEY` with your OneSource API key.\n');
233
- parts.push('**Claude Code:**');
234
- parts.push('```');
235
- parts.push('claude mcp remove onesource');
236
- parts.push('claude mcp add onesource -e ONESOURCE_API_KEY=<key> -- npx -y @one-source/mcp@latest');
237
- parts.push('```\n');
238
- parts.push('**Claude Desktop / Cursor:**');
239
- parts.push('```json');
240
- parts.push('{');
241
- parts.push(' "mcpServers": {');
242
- parts.push(' "onesource": {');
243
- parts.push(' "command": "npx",');
244
- parts.push(' "args": ["-y", "@one-source/mcp@latest"],');
245
- parts.push(' "env": { "ONESOURCE_API_KEY": "<key>" }');
246
- parts.push(' }');
247
- parts.push(' }');
248
- parts.push('}');
249
- parts.push('```\n');
250
- parts.push('**Any MCP client (stdio):**');
251
- parts.push('```');
252
- parts.push('ONESOURCE_API_KEY=<key> npx -y @one-source/mcp@latest');
253
- parts.push('```\n');
254
- parts.push('### Option 2: x402 Micropayments\n');
255
- parts.push('Set `X402_PRIVATE_KEY` with an EVM private key (64-char hex, `0x` prefix optional) funded with USDC on Base.\n');
256
- parts.push('1. **Get an EVM private key** export from MetaMask, Coinbase Wallet, or generate one.');
257
- parts.push(' ```');
258
- parts.push(' # macOS/Linux or Git Bash on Windows');
259
- parts.push(' echo "0x$(openssl rand -hex 32)"');
260
- parts.push(' ```\n');
261
- parts.push('2. **Fund the wallet** with USDC on the **Base** network (not Ethereum mainnet).\n');
262
- parts.push('3. **Set the key:**\n');
263
- parts.push(' **Claude Code:**');
264
- parts.push(' ```');
265
- parts.push(' claude mcp remove onesource');
266
- parts.push(' claude mcp add onesource -e X402_PRIVATE_KEY=0x... -- npx -y @one-source/mcp@latest');
267
- parts.push(' ```\n');
268
- parts.push(' **Claude Desktop / Cursor:**');
269
- parts.push(' ```json');
270
- parts.push(' {');
271
- parts.push(' "mcpServers": {');
272
- parts.push(' "onesource": {');
273
- parts.push(' "command": "npx",');
274
- parts.push(' "args": ["-y", "@one-source/mcp@latest"],');
275
- parts.push(' "env": { "X402_PRIVATE_KEY": "0x..." }');
276
- parts.push(' }');
277
- parts.push(' }');
278
- parts.push(' }');
279
- parts.push(' ```\n');
280
- parts.push(' **Any MCP client (stdio):**');
281
- parts.push(' ```');
282
- parts.push(' X402_PRIVATE_KEY=0x... npx -y @one-source/mcp@latest');
283
- parts.push(' ```\n');
284
- parts.push('4. **Reload the MCP server** — run `/reload-plugins` in Claude Code, or restart Claude Desktop / Cursor.\n');
285
- parts.push('### Option 3: MPP Micropayments (Tempo)\n');
286
- parts.push('Set `MPP_PRIVATE_KEY` with an EVM private key funded with **USDC.e or pathUSD on the Tempo network**. Pays per call on Tempo rails (an alternative to x402 on Base).\n');
287
- parts.push('```');
288
- parts.push('MPP_PRIVATE_KEY=0x... npx -y @one-source/mcp@latest');
289
- parts.push('```');
290
- parts.push('Optional: `MPP_PAYMENT_MODE` (`charge` default | `session`), `MPP_MAX_DEPOSIT` (session deposit cap, default `1`). Switch modes in-session with `1s_payment_mode { "mode": "mpp-session" }`.\n');
291
- parts.push('**Security:** Never commit keys to source control. Use environment variables or a secrets manager.\n');
292
- }
293
- // 2b. Payment channelsboth rails reported at equal depth: x402 batch
294
- // settlement (Base) and MPP session channels (Tempo). Each subsection is
295
- // rendered whenever its rail is enabled, regardless of which is primary.
296
- parts.push('\n## Payment Channels\n');
297
- if (x402Enabled || mppEnabled) {
298
- // prompt/threshold are rail-agnostic (anticipated-call autonomy); shared
299
- // by both subsections. mppMaxDeposit/depositMultiplier are rail-specific.
300
- const prefs = getBatchPrefs();
301
- const persisted = hasPersistedConfig();
302
- parts.push(`Active payment mode: **${payInfo.mode}**.`);
303
- if (x402Enabled) {
304
- parts.push('\n### Batch Settlement (x402 on Base)\n');
305
- if (payInfo.x402.batchAvailable) {
306
- parts.push('Batch channel available: **Yes**');
307
- }
308
- else {
309
- parts.push('Batch channel available: **No** — the channel scheme failed to initialise (usually an RPC issue). Check `X402_RPC_URL` and restart the server.');
310
- }
311
- parts.push('\n**Current batch settings:**');
312
- parts.push(`- Autonomy: \`${prefs.prompt}\` (ask / auto / off whether the agent confirms before switching to a channel mode)`);
313
- parts.push(`- "Many" threshold: \`${prefs.threshold}\` (anticipated calls at/above which a channel is considered)`);
314
- parts.push(`- Deposit multiplier: \`${prefs.depositMultiplier}\` (channel deposit = call price × this)`);
315
- parts.push(`- Default mode: \`${prefs.mode}\` (scheme the session starts in)`);
316
- parts.push(`- Saved to: ${persisted ? `\`${batchConfigPath()}\`` : `*(not yet saved — using ${process.env.X402_BATCH_PROMPT || process.env.X402_BATCH_THRESHOLD ? 'env vars / ' : ''}defaults)*`}`);
317
- parts.push('\nBatch settlement opens a USDC payment channel: the first paid call deposits `price × deposit multiplier` on-chain, then subsequent calls are signed off-chain and settled together with a single claim. Best for a **burst of calls** — cheaper than paying per call. Switching back to `x402-exact` leaves any unspent channel balance locked until the on-chain withdraw delay (~1 day on mainnet), so reclaim it with `1s_refund` when done.');
318
- parts.push('\n**Switch / configure from this session — no config editing, no restart:**');
319
- parts.push('- Switch mode: `1s_payment_mode { "mode": "x402-batch" }` (or `"x402-exact"` for per-call).');
320
- parts.push('- Change autonomy / threshold: `1s_batch_config { "prompt": "auto", "threshold": 8 }`.');
321
- parts.push('- Change the deposit multiplier: `1s_batch_config { "deposit_multiplier": 20 }` (min ' + MIN_DEPOSIT_MULTIPLIER + '; applies to the next channel opened).');
322
- parts.push('- Set the default mode and switch now: `1s_batch_config { "mode": "x402-batch" }` (applies immediately and on future restarts).');
323
- parts.push('- Reclaim unspent channel deposit when finished: `1s_refund` (idle channels also auto-refund after a few hours).');
324
- parts.push('\n#### Advanced: install-time env vars');
325
- parts.push('Setting these in the MCP config seeds the defaults at startup (the saved config file, when present, takes priority). Most users should use `1s_batch_config` instead.');
326
- parts.push('- `X402_BATCH_PROMPT` (default `ask`), `X402_BATCH_THRESHOLD` (default `5`), `X402_PAYMENT_MODE` (default `exact`), `X402_DEPOSIT_MULTIPLIER` (default `10`).');
327
- parts.push('- `X402_RPC_URL` (default Base public RPC) — set your own Base RPC if channel deposits rate-limit.');
328
- parts.push('- `X402_CHANNEL_DIR` (default unset = in-memory) — directory to persist the channel across restarts.');
329
- parts.push('- `ONESOURCE_CONFIG_DIR` (default `~/.onesource`) — directory holding the saved payment config.');
330
- }
331
- if (mppEnabled) {
332
- parts.push('\n### Session Channels (MPP on Tempo)\n');
333
- if (payInfo.mpp.sessionAvailable) {
334
- parts.push('Session channel available: **Yes**');
335
- }
336
- else {
337
- parts.push('Session channel available: **No** — the Tempo channel failed to initialise (usually an RPC issue). Check `MPP_RPC_URL` and restart the server.');
338
- }
339
- parts.push('\n**Current session settings:**');
340
- parts.push(`- Autonomy: \`${prefs.prompt}\` (ask / auto / off — shared with x402; whether the agent confirms before switching to a channel mode)`);
341
- parts.push(`- "Many" threshold: \`${prefs.threshold}\` (anticipated calls at/above which a channel is considered)`);
342
- parts.push(`- Deposit cap: \`${prefs.mppMaxDeposit}\` (\`MPP_MAX_DEPOSIT\` — max USDC.e/pathUSD locked per channel)`);
343
- parts.push(`- Default mode: \`${prefs.mode}\` (scheme the session starts in)`);
344
- parts.push(`- Saved to: ${persisted ? `\`${batchConfigPath()}\`` : '*(not yet saved — using defaults)*'}`);
345
- parts.push('\n`mpp-session` opens a TIP-1034 voucher channel: the first paid call deposits up to the cap on-chain, then subsequent calls are signed off-chain as cumulative vouchers and settled together. Best for a **burst of calls** — cheaper than per-call `mpp-charge`. Reclaim the unspent deposit with `1s_refund` when done; it also settles automatically on clean shutdown (a hard kill leaves it locked until reclaimed on-chain later).');
346
- parts.push('\n**Switch / configure from this session — no config editing, no restart:**');
347
- parts.push('- Switch mode: `1s_payment_mode { "mode": "mpp-session" }` (or `"mpp-charge"` for per-call).');
348
- parts.push('- Change the deposit cap: `1s_batch_config { "mpp_max_deposit": "1" }` (persists across restarts; applies to the next channel opened).');
349
- parts.push('- Reclaim unspent channel deposit when finished: `1s_refund`.');
350
- parts.push('\n#### Advanced: install-time env vars');
351
- parts.push('Setting these in the MCP config seeds the defaults at startup (the saved config file, when present, takes priority).');
352
- parts.push('- `MPP_PRIVATE_KEY` (funded Tempo wallet), `MPP_PAYMENT_MODE` (`charge` default | `session`), `MPP_MAX_DEPOSIT` (session deposit cap, default `1`), `MPP_RPC_URL` (default Tempo public RPC).');
353
- }
354
- parts.push('\n### Your preference\n');
355
- parts.push(`> **Agent:** ask the user how they want channel payments handled — (1) **how many calls** in a session should make a channel worth it (currently ${prefs.threshold}), and (2) whether you should **ask first** (current: \`${prefs.prompt}\`), **switch automatically**, or **only act on request**. When they answer, apply it immediately with \`1s_batch_config\` (e.g. \`{ "threshold": 8, "prompt": "auto" }\`) — it persists automatically, so there is no config file to edit and no restart needed.`);
356
- }
357
- else {
358
- parts.push('Payment channels apply only to wallet payments. ' + (activeMethod === 'api_key'
359
- ? 'Your calls are covered by your API key, so there is no per-call payment to batch.'
360
- : 'You have no payment wallet configured, so there is nothing to batch yet — set `X402_PRIVATE_KEY` (Base) or `MPP_PRIVATE_KEY` (Tempo).'));
176
+ const prefs = getBatchPrefs();
177
+ const persisted = hasPersistedConfig();
178
+ const authLabel = activeMethod === 'api_key'
179
+ ? `API key (\`${runtimeApiKey?.slice(0, 6)}••••••\`)`
180
+ : activeMethod === 'x402' ? 'x402 (Base)'
181
+ : activeMethod === 'mpp' ? 'MPP (Tempo)'
182
+ : '*none — blockchain tools are locked until you pick one below*';
183
+ // OS-aware command/config hints for the "apply" section.
184
+ const platform = process.platform; // 'win32' | 'darwin' | 'linux' | ...
185
+ const osName = platform === 'win32' ? 'Windows' : platform === 'darwin' ? 'macOS' : 'Linux';
186
+ const desktopCfg = platform === 'win32'
187
+ ? '%APPDATA%\\Claude\\claude_desktop_config.json'
188
+ : platform === 'darwin'
189
+ ? '~/Library/Application Support/Claude/claude_desktop_config.json'
190
+ : '~/.config/Claude/claude_desktop_config.json';
191
+ const cursorCfg = platform === 'win32' ? '%USERPROFILE%\\.cursor\\mcp.json' : '~/.cursor/mcp.json';
192
+ // Per-shell example for setting a key as an OS env var (the "any client" path).
193
+ const shellExample = platform === 'win32'
194
+ ? 'PowerShell: `$env:X402_PRIVATE_KEY = "<key>"` · cmd: `set X402_PRIVATE_KEY=<key>`'
195
+ : 'bash/zsh: `export X402_PRIVATE_KEY=<key>`';
196
+ // =====================================================================
197
+ // AGENT DIRECTIVE — this is the load-bearing part. The user invoked
198
+ // setup because they want to configure something; the agent must now
199
+ // run the interactive script below by consulting the user.
200
+ // =====================================================================
201
+ parts.push('# OneSource MCP Interactive Setup');
202
+ parts.push('');
203
+ parts.push('> ⚠️ **AGENT: ACT ON THIS NOW. This tool changed nothing by itself** — it handed you a setup script that *you* run by talking to the user. The user called `1s_setup_check` because they want to set up or adjust their configuration. Your job is to walk them through **every decision below, one at a time**, using your client\'s interactive prompt UI (in Claude Code / Desktop that is the **AskUserQuestion** prompt; in any other client, ask in plain text and wait for the reply).');
204
+ parts.push('>');
205
+ parts.push('> **Non-negotiable rules:**');
206
+ parts.push('> 1. Offer **every** decision below, in order — including ones that already have a value. For a value that is already set, show it and ask whether to **keep or change** it. Never silently leave a setting as-is without offering it.');
207
+ parts.push('> 2. **Do not assume a default on the user\'s behalf.** Present the options and let them choose.');
208
+ parts.push('> 3. Ask **one decision at a time** and wait for the answer before moving to the next.');
209
+ parts.push('> 4. Do not jump to "you\'re all set" you are not finished until you have offered the user every applicable decision.');
210
+ parts.push('> 5. **Apply answers as you go.** Settings tagged _(live)_ take effect immediately via the noted tool — call it, no restart. Settings tagged _(restart)_ are read at startup, so collect them and, at the end, hand the user **one ready-to-run command tailored to their OS + MCP client** (see "Applying restart settings"). Ask which client/shell they use if you don\'t already know.');
211
+ parts.push('> 6. **Security:** never print, repeat, or store a private key the user gives you. It goes only into the command you hand them to run themselves.');
212
+ parts.push('>');
213
+ parts.push('> Begin: tell the user you\'ll walk them through OneSource setup, then ask **Decision 1**.');
214
+ parts.push('');
215
+ // ---- Current configuration (reference) ------------------------------
216
+ parts.push('## Current configuration (for your reference — still offer every decision)');
217
+ parts.push('');
218
+ parts.push(`- **Server version:** ${VERSION}${latestVersion === 'unknown' ? '' : updateAvailable ? ` — ⚠️ update available: **${latestVersion}** (\`npx -y @one-source/mcp@latest\`)` : ' (latest)'}`);
219
+ parts.push(`- **Detected OS:** ${osName} (\`process.platform = ${platform}\`)`);
220
+ parts.push(`- **Active auth method:** ${authLabel}`);
221
+ const x402Wallet = payInfo.x402.address ?? (activeMethod === 'x402' ? x402Address : undefined);
222
+ const mppWallet = payInfo.mpp.address ?? (activeMethod === 'mpp' ? x402Address : undefined);
223
+ parts.push(`- **x402 (Base) wallet:** ${x402Enabled ? `\`${x402Wallet ?? 'enabled'}\` must hold USDC on Base` : '*not set*'}`);
224
+ parts.push(`- **MPP (Tempo) wallet:** ${mppEnabled ? `\`${mppWallet ?? 'enabled'}\` — must hold USDC.e / pathUSD on Tempo` : '*not set*'}`);
225
+ parts.push(`- **Active payment mode:** \`${payInfo.mode}\``);
226
+ if (x402Enabled)
227
+ parts.push(`- **x402 batch channel:** ${payInfo.x402.batchAvailable ? 'available' : '**unavailable** — channel scheme failed to init (check `X402_RPC_URL`, then restart)'}`);
228
+ if (mppEnabled)
229
+ parts.push(`- **MPP session channel:** ${payInfo.mpp.sessionAvailable ? 'available' : '**unavailable** — Tempo channel failed to init (check `MPP_RPC_URL`, then restart)'}`);
230
+ parts.push(`- **Channel preferences:** autonomy \`${prefs.prompt}\`, threshold \`${prefs.threshold}\`, x402 deposit ×\`${prefs.depositMultiplier}\`, MPP max deposit \`${prefs.mppMaxDeposit}\` ${persisted ? `— saved to \`${batchConfigPath()}\`` : '— defaults (not yet saved)'}`);
231
+ if (bothSet)
232
+ parts.push('- ⚠️ **Both an API key and a wallet key are set.** The API key wins; the wallet key is ignored. Resolve this in Decision 1.');
233
+ parts.push('');
234
+ // =====================================================================
235
+ // DECISIONS
236
+ // =====================================================================
237
+ parts.push('---');
238
+ parts.push('');
239
+ parts.push('## Decision 1 — Authentication / payment method _(restart)_');
240
+ parts.push(`How blockchain API tools get paid for. Current: **${authLabel}**. The user may pick **one or more** rails (e.g. an API key, or x402, or MPP, or both wallet rails).`);
241
+ parts.push('');
242
+ parts.push('- **A) API key** (`ONESOURCE_API_KEY`) unlimited calls, no per-call cost; requires a developer plan at app.onesource.io. Best if they have an account.');
243
+ parts.push('- **B) x402 micropayments** (`X402_PRIVATE_KEY`) — pay per call in USDC on **Base**. No account; just a funded EVM wallet. also do Decision 3.');
244
+ parts.push('- **C) MPP micropayments** (`MPP_PRIVATE_KEY`) — pay per call in USDC.e / pathUSD on **Tempo**. No account; just a funded Tempo wallet. → also do Decision 4.');
245
+ parts.push(`- **D) Keep current** (${activeMethod === 'none' ? 'not configured' : authLabel}).`);
246
+ parts.push('');
247
+ parts.push('> Ask the user which method(s) they want. Note: if an API key is set, any wallet key is ignored — so if they want to pay by wallet, make sure no API key is set in the final command (and vice-versa). Then proceed to the decisions for each rail they chose, then to the shared Decision 5.');
248
+ parts.push('');
249
+ parts.push('## Decision 2 — API key value _(restart, secret — only if they chose API key)_');
250
+ parts.push('Ask the user to paste their OneSource API key (starts with `sk_`; create one at app.onesource.io → API Keys). Hold it for the `ONESOURCE_API_KEY` entry in the startup command (Applying restart settings). **Do not echo it back to them.**');
251
+ parts.push('');
252
+ parts.push('## Decision 3 — x402 (Base) settings _(only if using x402)_');
253
+ parts.push('Offer each of these to the user:');
254
+ parts.push('- **`X402_PRIVATE_KEY`** _(restart, secret)_ — an EVM private key (64-char hex, `0x` optional) funded with USDC on **Base**. Ask them to provide one, or to generate a fresh one (e.g. `0x` + 32 random bytes). After setup, `1s_setup_check` shows the derived wallet address to fund. Goes in the startup command.');
255
+ parts.push('- **Payment scheme** _(live)_ — `x402-exact` (pay per call) or `x402-batch` (one on-chain deposit funds many off-chain calls; cheaper for a burst). Apply now with `1s_payment_mode { "mode": "x402-exact" | "x402-batch" }`, or set it as the saved default with `1s_batch_config { "mode": ... }`.');
256
+ parts.push(`- **Deposit multiplier** _(live)_ — x402-batch deposits price × this (currently \`${prefs.depositMultiplier}\`, min ${MIN_DEPOSIT_MULTIPLIER}). Change with \`1s_batch_config { "deposit_multiplier": N }\` (applies to the next channel opened).`);
257
+ parts.push('- **`X402_RPC_URL`** _(restart)_ — custom Base RPC for channel deposits (default public RPC). Only add to the command if they want to override it.');
258
+ parts.push('- **`X402_CHANNEL_DIR`** _(restart)_ — directory to persist the batch channel across restarts (default in-memory). Optional.');
259
+ parts.push('');
260
+ parts.push('## Decision 4 — MPP (Tempo) settings _(only if using MPP)_');
261
+ parts.push('Offer each of these:');
262
+ parts.push('- **`MPP_PRIVATE_KEY`** _(restart, secret)_ — an EVM private key funded with **USDC.e or pathUSD on Tempo**. Ask them to provide one. Goes in the startup command. **Do not echo it back.**');
263
+ parts.push('- **Payment scheme** _(live)_ — `mpp-charge` (per call) or `mpp-session` (a TIP-1034 Tempo voucher channel — cheaper for a burst; reclaim the unspent deposit with `1s_refund`, or it settles on clean shutdown). Apply with `1s_payment_mode { "mode": "mpp-charge" | "mpp-session" }`, or save as default with `1s_batch_config { "mode": ... }`.');
264
+ parts.push(`- **Session deposit cap (\`MPP_MAX_DEPOSIT\`)** _(live)_ — max USDC.e / pathUSD locked per session channel (currently \`${prefs.mppMaxDeposit}\`). Change with \`1s_batch_config { "mpp_max_deposit": "1" }\` (persists; applies to the next channel).`);
265
+ parts.push('- **`MPP_RPC_URL`** _(restart)_ — custom Tempo RPC (default public RPC). Only add to the command to override.');
266
+ parts.push('');
267
+ parts.push('## Decision 5 — Channel autonomy & threshold (shared by both rails) _(live)_');
268
+ parts.push('Relevant whenever a wallet rail (x402 or MPP) is in use. These persist automatically — **no command or restart needed.** Ask the user:');
269
+ parts.push(`- **Autonomy** (currently \`${prefs.prompt}\`): should the agent **ask** before opening a cheaper payment channel, switch **auto**matically, or stay **off** (only on explicit request)? Apply with \`1s_batch_config { "prompt": "ask" | "auto" | "off" }\`.`);
270
+ parts.push(`- **"Many" threshold** (currently \`${prefs.threshold}\`): how many anticipated calls in one session make a channel worth opening? Apply with \`1s_batch_config { "threshold": N }\`.`);
271
+ parts.push('');
272
+ parts.push('## Decision 6 Analytics (optional) _(restart)_');
273
+ parts.push('Anonymous usage analytics are **on** by default. Ask whether the user wants them off; if so, add `ONESOURCE_ANALYTICS=false` to the startup command.');
274
+ parts.push('');
275
+ // =====================================================================
276
+ // APPLYING RESTART SETTINGS — OS/client-tailored command
277
+ // =====================================================================
278
+ parts.push('---');
279
+ parts.push('');
280
+ parts.push('## Applying restart settings build ONE command for the user');
281
+ parts.push(`Detected OS: **${osName}**. After collecting the answers, combine **every chosen _(restart)_ env var** into a single command for the user's MCP client, replacing \`<...>\` with their values. Include **only** the \`-e\`/\`env\` entries for vars they actually chose. Ask which client + shell they use if you don't know, then give them exactly one command/snippet to run. They run it — you never store the keys.`);
282
+ parts.push('');
283
+ parts.push('**Claude Code** (any OS/shell) — re-add the server in one go:');
284
+ parts.push('```');
285
+ parts.push('claude mcp remove onesource');
286
+ parts.push('claude mcp add onesource -e <VAR>=<value> [-e <VAR>=<value> ...] -- npx -y @one-source/mcp@latest');
287
+ parts.push('```');
288
+ parts.push('Example with x402 + MPP: `claude mcp add onesource -e X402_PRIVATE_KEY=<key> -e MPP_PRIVATE_KEY=<key> -- npx -y @one-source/mcp@latest`');
289
+ parts.push('');
290
+ parts.push(`**Claude Desktop / Cursor** — edit the MCP config file and set the \`env\` block (only the chosen vars):`);
291
+ parts.push('```json');
292
+ parts.push('{ "mcpServers": { "onesource": {');
293
+ parts.push(' "command": "npx", "args": ["-y", "@one-source/mcp@latest"],');
294
+ parts.push(' "env": { "X402_PRIVATE_KEY": "<key>" }');
295
+ parts.push('} } }');
296
+ parts.push('```');
297
+ parts.push(`Config file on ${osName} — Claude Desktop: \`${desktopCfg}\` · Cursor: \`${cursorCfg}\`. (Claude Code: run \`claude mcp get onesource\` to find its path.)`);
298
+ if (platform === 'win32') {
299
+ parts.push('> **Windows note:** if `/doctor` warns about `npx`, set `"command": "cmd"` and `"args": ["/c", "npx", "-y", "@one-source/mcp@latest"]`.');
361
300
  }
362
- // 3. API connectivity
363
- parts.push('\n## API Connectivity\n');
301
+ parts.push('');
302
+ parts.push(`**Any MCP client (stdio)** — or set the key as an OS environment variable, then launch: ${shellExample}, then \`npx -y @one-source/mcp@latest\`.`);
303
+ parts.push('');
304
+ parts.push('After they run/save the command, tell them to reload: `/reload-plugins` in Claude Code (do a **full restart** if they switched auth method, so the LLM instructions refresh), or restart Claude Desktop / Cursor. Then call `1s_setup_check` again to confirm and continue tuning.');
305
+ parts.push('');
306
+ // =====================================================================
307
+ // DIAGNOSTICS
308
+ // =====================================================================
309
+ parts.push('---');
310
+ parts.push('');
311
+ parts.push('## Diagnostics');
312
+ parts.push(`- **Transport:** ${transport ?? 'unknown'}`);
364
313
  const baseUrl = process.env.ONESOURCE_BASE_URL ?? 'https://api.onesource.io';
365
314
  try {
366
315
  await fetch(baseUrl, { method: 'HEAD', signal: AbortSignal.timeout(5000) });
367
- parts.push(`Backend: **Reachable** (${baseUrl})`);
316
+ parts.push(`- **Backend:** reachable (${baseUrl})`);
368
317
  }
369
318
  catch (err) {
370
319
  const msg = err instanceof Error ? err.message : String(err);
371
- parts.push(`Backend: **Unreachable** — ${msg}`);
372
- }
373
- // 4. Transport
374
- parts.push('\n## Transport\n');
375
- parts.push(`Mode: ${transport ?? 'unknown'}`);
376
- parts.push('\n> **Note:** If you recently changed auth method (e.g. API key → x402), restart Claude Code fully to refresh the LLM instructions. `/reload-plugins` reconnects tools but may not update the system prompt the LLM sees.');
377
- // 5. Bug reporting
378
- parts.push('\n## Bug Reporting\n');
379
- parts.push('Status: **Enabled** — call `1s_report_bug` to report issues to the OneSource team.');
380
- // 6. Next steps
381
- parts.push('\n## Next Steps\n');
382
- if (activeMethod === 'none') {
383
- parts.push('- Configure authentication to use blockchain API tools (see instructions above)');
384
- }
385
- if (latestVersion !== 'unknown' && latestVersion !== VERSION) {
386
- parts.push('- Update to the latest version: `npx -y @one-source/mcp@latest`');
387
- }
388
- if (activeMethod !== 'none') {
389
- parts.push('- Try an API tool: `1s_network_info` (returns chain ID, block number, gas price)');
390
- }
391
- if (x402Enabled || mppEnabled) {
392
- parts.push('- Review your channel-payment preferences and adjust them with `1s_batch_config` (see Payment Channels above) — no config editing or restart needed.');
393
- }
394
- if (x402Enabled && payInfo.mode === 'x402-exact') {
395
- parts.push('- Making many calls this session? Open a Base payment channel (`1s_payment_mode { "mode": "x402-batch" }`) to pay once for the whole burst, then reclaim with `1s_refund`.');
396
- }
397
- if (mppEnabled && payInfo.mode === 'mpp-charge') {
398
- parts.push('- Making many calls this session? Switch to a Tempo voucher channel (`1s_payment_mode { "mode": "mpp-session" }`) — cheaper than per-call, reclaim with `1s_refund`.');
320
+ parts.push(`- **Backend:** ⚠️ unreachable — ${msg} (${baseUrl})`);
399
321
  }
322
+ parts.push('- **Bug reporting:** enabled — call `1s_report_bug` to report issues to the OneSource team.');
323
+ parts.push('- **Key not reaching the server?** A key set in your shell profile is inherited by the MCP process even when it isn\'t in your MCP config. Check with `echo $ONESOURCE_API_KEY` / `$X402_PRIVATE_KEY` / `$MPP_PRIVATE_KEY` (PowerShell: `$env:NAME`).');
400
324
  return parts.join('\n');
401
325
  }, 'ops', { title: 'Setup Check', readOnlyHint: true, destructiveHint: false });
402
326
  count++;
@@ -1 +1 @@
1
- {"version":3,"file":"register-docs-tools.js","sourceRoot":"","sources":["../src/register-docs-tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"register-docs-tools.js","sourceRoot":"","sources":["../src/register-docs-tools.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@one-source/mcp",
3
3
  "mcpName": "io.onesource/mcp",
4
- "version": "5.6.0",
4
+ "version": "5.7.0",
5
5
  "type": "module",
6
6
  "description": "Unified MCP server for OneSource — 30 tools for blockchain data, with x402 (USDC on Base) and MPP (Tempo) pay-per-call payment rails",
7
7
  "bin": {
@@ -33,7 +33,7 @@
33
33
  },
34
34
  "dependencies": {
35
35
  "@modelcontextprotocol/sdk": "^1.27.1",
36
- "@one-source/api-mcp": "^5.6.0",
36
+ "@one-source/api-mcp": "^5.7.0",
37
37
  "@one-source/docs-mcp": "^4.0.3",
38
38
  "zod": "^3.24.0"
39
39
  },