xytara 3.9.6 → 3.9.8
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 +6 -6
- package/RELEASE_NOTES.md +6 -5
- package/START_HERE.md +3 -3
- package/bin/xytara-first-run.js +1 -1
- package/bin/xytara.js +2 -2
- package/client.js +2 -2
- package/package.json +1 -1
- package/scripts/verify_client.js +2 -2
package/README.md
CHANGED
|
@@ -14,8 +14,8 @@ Listed on [Smithery](https://smithery.ai/server/naxytra/xytara-mcp-executor) ·
|
|
|
14
14
|
|
|
15
15
|
| Hosted surface | URL |
|
|
16
16
|
| --- | --- |
|
|
17
|
-
| Runtime (paid command path, credits, catalog, receipts) | `https://
|
|
18
|
-
| Pay-per-call MCP server (Streamable HTTP) | `https://
|
|
17
|
+
| Runtime (paid command path, credits, catalog, receipts) | `https://api.naxytra.com` |
|
|
18
|
+
| Pay-per-call MCP server (Streamable HTTP) | `https://mcp.naxytra.com/mcp` |
|
|
19
19
|
| Website, agent guide, quickstart | `https://www.naxytra.com` · [/agents](https://www.naxytra.com/agents) · [/quickstart](https://www.naxytra.com/quickstart) |
|
|
20
20
|
|
|
21
21
|
This package ships:
|
|
@@ -49,7 +49,7 @@ xytara run --help
|
|
|
49
49
|
Quote first, with no wallet material at all:
|
|
50
50
|
|
|
51
51
|
```bash
|
|
52
|
-
xytara-run --url https://
|
|
52
|
+
xytara-run --url https://api.naxytra.com --account ACCOUNT_REF \
|
|
53
53
|
--task adapter.mcp.invoke --command mcp.invoke:summarize \
|
|
54
54
|
--body-json "{\"tool_name\":\"summarize\",\"arguments\":{\"text\":\"Summarize the naxytra first-run path in one sentence.\"}}" \
|
|
55
55
|
--quote-only --pretty
|
|
@@ -105,7 +105,7 @@ challenge; pay it once and the response carries a spend credential. Then call
|
|
|
105
105
|
## Pay-per-call MCP
|
|
106
106
|
|
|
107
107
|
```
|
|
108
|
-
endpoint: https://
|
|
108
|
+
endpoint: https://mcp.naxytra.com/mcp
|
|
109
109
|
tools/list -> free
|
|
110
110
|
tools/call -> 402 Payment Required with a price
|
|
111
111
|
-> sign ONE gasless USDC authorization (x402 / EIP-3009)
|
|
@@ -175,7 +175,7 @@ the only algorithms in use.
|
|
|
175
175
|
```js
|
|
176
176
|
const { verifyDeliveryReceipt, hashCanonical, verificationRecipe } = require("xytara");
|
|
177
177
|
|
|
178
|
-
const keys = (await fetch("https://
|
|
178
|
+
const keys = (await fetch("https://api.naxytra.com/.well-known/delivery-receipt-keys").then((r) => r.json())).keys;
|
|
179
179
|
const result = verifyDeliveryReceipt(receipt, keys); // { valid, signatures: [{ alg, kid, valid }], ... }
|
|
180
180
|
const outputMatches = hashCanonical(outputYouReceived) === receipt.delivery.output_sha256;
|
|
181
181
|
console.log(verificationRecipe("/.well-known/delivery-receipt-keys").steps);
|
|
@@ -222,7 +222,7 @@ anchor then commits to `attestation_sha256` = SHA-256 of the JCS form of the who
|
|
|
222
222
|
```js
|
|
223
223
|
const { verifyAttestation, hashCanonical, attestationRecipe } = require("xytara");
|
|
224
224
|
|
|
225
|
-
const keys = (await fetch("https://
|
|
225
|
+
const keys = (await fetch("https://mcp.naxytra.com/.well-known/delivery-receipt-keys").then((r) => r.json())).keys;
|
|
226
226
|
const check = verifyAttestation(attestation, keys); // { valid, claim_verified, signatures: [{ alg, kid, valid }], ... }
|
|
227
227
|
const evidenceMatches = hashCanonical({ tool, arguments, output }) === attestation.evidence_sha256;
|
|
228
228
|
console.log(attestationRecipe("/.well-known/delivery-receipt-keys").steps);
|
package/RELEASE_NOTES.md
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
`xytara` 3.9.
|
|
1
|
+
`xytara` 3.9.8 moves the public endpoints to naxytra.com addresses.
|
|
2
2
|
|
|
3
|
-
- **
|
|
4
|
-
- **
|
|
5
|
-
-
|
|
6
|
-
- Client package (thin):
|
|
3
|
+
- **Runtime** — `https://api.naxytra.com` (was `https://xytara.onrender.com`).
|
|
4
|
+
- **Pay-per-call MCP server** — `https://mcp.naxytra.com/mcp` (was `https://xytara-mcp-executor.onrender.com/mcp`); the server card, `/.well-known/x402`, delivery-receipt keys and the MCP registry entry use the new address.
|
|
5
|
+
- The previous addresses still serve the same service, so existing integrations keep working; new integrations should use the naxytra.com addresses.
|
|
6
|
+
- Client package (thin): the default runtime and MCP addresses are the new ones.
|
|
7
|
+
- No change to pricing, payment, routing or the provider ledger.
|
package/START_HERE.md
CHANGED
|
@@ -24,13 +24,13 @@ quote -> pay/credits -> execute -> prove
|
|
|
24
24
|
## 2. Hosted endpoints
|
|
25
25
|
|
|
26
26
|
```text
|
|
27
|
-
runtime: https://
|
|
27
|
+
runtime: https://api.naxytra.com
|
|
28
28
|
POST /x402/commands/execute paid command path (402 challenge -> paid 200)
|
|
29
29
|
POST /x402/credits/topup buy credits once, spend them per call
|
|
30
30
|
GET /v1/catalog discover tasks
|
|
31
31
|
GET /.well-known/delivery-receipt-keys
|
|
32
32
|
POST /v1/delivery-receipts/verify
|
|
33
|
-
mcp: https://
|
|
33
|
+
mcp: https://mcp.naxytra.com/mcp
|
|
34
34
|
website: https://www.naxytra.com (/agents, /quickstart, /v1/first-run-path, /v1/first-run-kit)
|
|
35
35
|
```
|
|
36
36
|
|
|
@@ -54,7 +54,7 @@ xytara first-run --run-quote --account ACCOUNT_REF --pretty
|
|
|
54
54
|
which runs:
|
|
55
55
|
|
|
56
56
|
```bash
|
|
57
|
-
xytara-run --url https://
|
|
57
|
+
xytara-run --url https://api.naxytra.com --account ACCOUNT_REF --task adapter.mcp.invoke --command mcp.invoke:summarize --body-json "{\"tool_name\":\"summarize\",\"arguments\":{\"text\":\"Summarize the naxytra first-run path in one sentence.\"}}" --quote-only --pretty
|
|
58
58
|
```
|
|
59
59
|
|
|
60
60
|
Then execute with a signed x402 payment (see the `CommerceClient` example in README.md) or
|
package/bin/xytara-first-run.js
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
const path = require("path");
|
|
5
5
|
const { spawnSync } = require("child_process");
|
|
6
6
|
|
|
7
|
-
const DEFAULT_SERVICE_URL = "https://
|
|
7
|
+
const DEFAULT_SERVICE_URL = "https://api.naxytra.com";
|
|
8
8
|
const DEFAULT_KIT_URL = "https://www.naxytra.com/v1/first-run-kit";
|
|
9
9
|
const DEFAULT_TEXT = "Summarize the naxytra first-run path in one sentence.";
|
|
10
10
|
const ACCOUNT_PLACEHOLDER = "ACCOUNT_REF";
|
package/bin/xytara.js
CHANGED
|
@@ -24,7 +24,7 @@ function printUsage() {
|
|
|
24
24
|
" xytara first-run --execute-with-credits --account ACCOUNT_REF --pretty",
|
|
25
25
|
" xytara run --help",
|
|
26
26
|
"",
|
|
27
|
-
"The runtime is a hosted service (https://
|
|
27
|
+
"The runtime is a hosted service (https://api.naxytra.com); this package is the client."
|
|
28
28
|
].join("\n"));
|
|
29
29
|
}
|
|
30
30
|
|
|
@@ -43,7 +43,7 @@ function printStartHere() {
|
|
|
43
43
|
"1. Open https://www.naxytra.com/v1/first-run-path",
|
|
44
44
|
"2. Open https://www.naxytra.com/v1/first-run-kit for copyable commands.",
|
|
45
45
|
"3. Quote safely first:",
|
|
46
|
-
" xytara-run --url https://
|
|
46
|
+
" xytara-run --url https://api.naxytra.com --account ACCOUNT_REF --task adapter.mcp.invoke --command mcp.invoke:summarize --body-json \"{\\\"tool_name\\\":\\\"summarize\\\",\\\"arguments\\\":{\\\"text\\\":\\\"Summarize the naxytra first-run path in one sentence.\\\"}}\" --quote-only --pretty",
|
|
47
47
|
"4. Execute with direct signed payment or credits-first on a funded account.",
|
|
48
48
|
"5. Hand the result into xoonya for proof review and verification.",
|
|
49
49
|
"",
|
package/client.js
CHANGED
|
@@ -27,8 +27,8 @@ const { version } = require("./package.json");
|
|
|
27
27
|
// and receipt verification (GET /.well-known/delivery-receipt-keys, POST /v1/delivery-receipts/verify).
|
|
28
28
|
// `mcp` is the pay-per-call MCP server (Streamable HTTP).
|
|
29
29
|
const endpoints = Object.freeze({
|
|
30
|
-
runtime: "https://
|
|
31
|
-
mcp: "https://
|
|
30
|
+
runtime: "https://api.naxytra.com",
|
|
31
|
+
mcp: "https://mcp.naxytra.com/mcp",
|
|
32
32
|
website: "https://www.naxytra.com"
|
|
33
33
|
});
|
|
34
34
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "xytara",
|
|
3
|
-
"version": "3.9.
|
|
3
|
+
"version": "3.9.8",
|
|
4
4
|
"description": "Client for the hosted naxytra runtime: discover a capability, pay per call with x402 (gasless USDC on Base) or credits, get the deliverable and a signed delivery receipt you can verify offline. The runtime is a hosted service; this package is the client.",
|
|
5
5
|
"main": "client.js",
|
|
6
6
|
"exports": {
|
package/scripts/verify_client.js
CHANGED
|
@@ -257,8 +257,8 @@ async function main() {
|
|
|
257
257
|
}
|
|
258
258
|
assert.strictEqual(RECEIPT_VERSION, "naxytra-delivery-receipt/1", "receipt version mismatch");
|
|
259
259
|
assert.strictEqual(ATTESTATION_VERSION, "naxytra-attestation/1", "attestation version mismatch");
|
|
260
|
-
assert.strictEqual(endpoints.runtime, "https://
|
|
261
|
-
assert.strictEqual(endpoints.mcp, "https://
|
|
260
|
+
assert.strictEqual(endpoints.runtime, "https://api.naxytra.com", "runtime endpoint mismatch");
|
|
261
|
+
assert.strictEqual(endpoints.mcp, "https://mcp.naxytra.com/mcp", "mcp endpoint mismatch");
|
|
262
262
|
assert.strictEqual(endpoints.website, "https://www.naxytra.com", "website endpoint mismatch");
|
|
263
263
|
assert.strictEqual(version, packageJson.version, "version export must come from package.json");
|
|
264
264
|
assert.strictEqual(require(path.join(PACKAGE_DIR, "client.js")), client, "client entry is a stable singleton");
|