@agenttrust-sdk/mcp 0.2.1 → 0.2.2
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/dist/embedded-data/devnet-attestor-trace.json +32 -0
- package/dist/embedded-data/devnet-chained-validation.json +52 -0
- package/dist/embedded-data/devnet-counterparties.json +53 -0
- package/dist/embedded-data/devnet-demo-policies.json +46 -0
- package/dist/embedded-data/devnet-namespaces.json +107 -0
- package/dist/embedded-data/devnet-smoke.json +24 -0
- package/dist/embedded-docs/getting-started/architecture-overview.mdx +85 -0
- package/dist/embedded-docs/getting-started/quickstart.mdx +100 -0
- package/dist/embedded-docs/index.mdx +64 -0
- package/dist/embedded-docs/integration-guides/capability-namespaces.mdx +15 -0
- package/dist/embedded-docs/integration-guides/custom-attestor.mdx +15 -0
- package/dist/embedded-docs/integration-guides/facilitator-adapters.mdx +85 -0
- package/dist/embedded-docs/integration-guides/pay-sh-adapter.mdx +110 -0
- package/dist/embedded-docs/integration-guides/x402-facilitator.mdx +79 -0
- package/dist/embedded-docs/programs/policy-vault/counterparty-tier-policy.mdx +15 -0
- package/dist/embedded-docs/programs/policy-vault/index.mdx +68 -0
- package/dist/embedded-docs/programs/policy-vault/kill-switch-policy.mdx +15 -0
- package/dist/embedded-docs/programs/policy-vault/require-validation-policy.mdx +15 -0
- package/dist/embedded-docs/programs/policy-vault/spending-policy.mdx +15 -0
- package/dist/embedded-docs/programs/policy-vault/velocity-policy.mdx +15 -0
- package/dist/embedded-docs/programs/trustgate.mdx +53 -0
- package/dist/embedded-docs/programs/validation-registry.mdx +49 -0
- package/dist/embedded-docs/reference/byte-offset-reference.mdx +20 -0
- package/dist/embedded-docs/reference/changelog.mdx +19 -0
- package/dist/embedded-docs/reference/devnet-program-ids.mdx +24 -0
- package/dist/embedded-docs/reference/discriminator-constants.mdx +16 -0
- package/dist/embedded-docs/reference/formal-verification.mdx +19 -0
- package/dist/embedded-docs/reference/mainnet-program-ids.mdx +16 -0
- package/dist/embedded-docs/reference/quantu-agent-registry.mdx +15 -0
- package/dist/embedded-docs/sdk/atomic-tx-invariant.mdx +37 -0
- package/dist/embedded-docs/sdk/gate-payment.mdx +22 -0
- package/dist/embedded-docs/sdk/index.mdx +73 -0
- package/dist/embedded-docs/sdk/mount-trustgate.mdx +15 -0
- package/dist/embedded-examples/attestor-demo/README.md +100 -0
- package/dist/embedded-examples/pay-sh-demo/README.md +136 -0
- package/dist/embedded-examples/pay-sh-demo/src/deps-real.ts +150 -0
- package/dist/embedded-examples/pay-sh-demo/src/deps.ts +150 -0
- package/dist/embedded-examples/pay-sh-demo/src/index.ts +471 -0
- package/dist/embedded-examples/pay-sh-demo/src/middleware.ts +198 -0
- package/dist/embedded-examples/pay-sh-demo/src/policy.ts +247 -0
- package/dist/embedded-examples/pay-sh-demo/src/x402.ts +140 -0
- package/dist/index.js +73 -18
- package/dist/index.js.map +1 -1
- package/dist/resources/docs.js +68 -46
- package/dist/resources/docs.js.map +1 -1
- package/dist/server.js +6 -1
- package/dist/server.js.map +1 -1
- package/dist/tools/discovery/docs.js +6 -0
- package/dist/tools/discovery/docs.js.map +1 -1
- package/dist/tools/discovery/facilitator-walkthrough.js +43 -18
- package/dist/tools/discovery/facilitator-walkthrough.js.map +1 -1
- package/dist/tools/read/demo-state.js +7 -4
- package/dist/tools/read/demo-state.js.map +1 -1
- package/dist/trustgate/server/src/facilitators/README.md +241 -0
- package/package.json +2 -2
package/dist/index.js
CHANGED
|
@@ -59,7 +59,6 @@ async function main() {
|
|
|
59
59
|
return;
|
|
60
60
|
}
|
|
61
61
|
const cfg = (0, config_1.loadConfig)();
|
|
62
|
-
const server = (0, server_1.createMcpServer)(cfg);
|
|
63
62
|
if (cfg.transport === "http") {
|
|
64
63
|
// Lazy-import the streamable-HTTP transport so the stdio path
|
|
65
64
|
// doesn't pay the cost of pulling Node's http module on cold start.
|
|
@@ -68,18 +67,43 @@ async function main() {
|
|
|
68
67
|
// eslint-disable-next-line @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires
|
|
69
68
|
const http = require("http");
|
|
70
69
|
// eslint-disable-next-line @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires
|
|
70
|
+
const crypto = require("crypto");
|
|
71
|
+
// eslint-disable-next-line @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires
|
|
71
72
|
const pkg = require("../package.json");
|
|
72
73
|
const startedAt = Date.now();
|
|
73
|
-
const
|
|
74
|
-
|
|
75
|
-
|
|
74
|
+
const sessions = new Map();
|
|
75
|
+
const IDLE_MS = 30 * 60 * 1000;
|
|
76
|
+
setInterval(() => {
|
|
77
|
+
const now = Date.now();
|
|
78
|
+
for (const [sid, s] of sessions) {
|
|
79
|
+
if (now - s.lastTouched > IDLE_MS) {
|
|
80
|
+
try {
|
|
81
|
+
s.transport.close?.();
|
|
82
|
+
}
|
|
83
|
+
catch { /* ignore */ }
|
|
84
|
+
sessions.delete(sid);
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
}, 5 * 60 * 1000).unref();
|
|
88
|
+
async function makeSession() {
|
|
89
|
+
const sessionServer = (0, server_1.createMcpServer)(cfg);
|
|
90
|
+
const sessionTransport = new StreamableHTTPServerTransport({
|
|
91
|
+
sessionIdGenerator: () => crypto.randomUUID(),
|
|
92
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
93
|
+
onsessioninitialized: (sid) => {
|
|
94
|
+
sessions.set(sid, { server: sessionServer, transport: sessionTransport, lastTouched: Date.now() });
|
|
95
|
+
},
|
|
96
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
97
|
+
onsessionclosed: (sid) => { sessions.delete(sid); },
|
|
98
|
+
});
|
|
99
|
+
await sessionServer.connect(sessionTransport);
|
|
100
|
+
return { server: sessionServer, transport: sessionTransport, lastTouched: Date.now() };
|
|
101
|
+
}
|
|
102
|
+
const httpServer = http.createServer(async (req, res) => {
|
|
76
103
|
// /healthz: lightweight Fly.io / status-page probe. NOT part
|
|
77
104
|
// of MCP protocol — handled before the transport sees it.
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
// uniformly (ok, network, version, uptimeSeconds).
|
|
81
|
-
const path = (req.url ?? "").split("?")[0];
|
|
82
|
-
if (req.method === "GET" && (path === "/healthz" || path === "/")) {
|
|
105
|
+
const url = (req.url ?? "").split("?")[0];
|
|
106
|
+
if (req.method === "GET" && (url === "/healthz" || url === "/")) {
|
|
83
107
|
res.writeHead(200, { "content-type": "application/json" });
|
|
84
108
|
res.end(JSON.stringify({
|
|
85
109
|
ok: true,
|
|
@@ -88,21 +112,51 @@ async function main() {
|
|
|
88
112
|
network: cfg.network,
|
|
89
113
|
rpcUrl: cfg.rpcUrl,
|
|
90
114
|
uptimeSeconds: Math.round((Date.now() - startedAt) / 1000),
|
|
115
|
+
activeSessions: sessions.size,
|
|
91
116
|
// Tools count is the load-bearing surface signal — if
|
|
92
|
-
// an upstream regression dropped a tool, the status
|
|
93
|
-
//
|
|
94
|
-
//
|
|
95
|
-
// pinned expected count here so monitors can alert on
|
|
96
|
-
// mismatch without parsing JSON-RPC.
|
|
117
|
+
// an upstream regression dropped a tool, the status page
|
|
118
|
+
// would show the count drop. Pinned expected so monitors
|
|
119
|
+
// can alert on mismatch without parsing JSON-RPC.
|
|
97
120
|
toolCount: 18,
|
|
98
121
|
}) + "\n");
|
|
99
122
|
return;
|
|
100
123
|
}
|
|
101
|
-
|
|
124
|
+
// Resolve session: existing mcp-session-id wins; otherwise mint
|
|
125
|
+
// a new one (the SDK will only accept the request if it's an
|
|
126
|
+
// initialize call when no session exists).
|
|
127
|
+
const sid = req.headers["mcp-session-id"];
|
|
128
|
+
const sessionId = Array.isArray(sid) ? sid[0] : sid;
|
|
129
|
+
let session;
|
|
130
|
+
if (sessionId && sessions.has(sessionId)) {
|
|
131
|
+
session = sessions.get(sessionId);
|
|
132
|
+
if (session)
|
|
133
|
+
session.lastTouched = Date.now();
|
|
134
|
+
}
|
|
135
|
+
else {
|
|
136
|
+
// No / unknown session id — start a fresh server+transport pair.
|
|
137
|
+
// The transport's onsessioninitialized hook puts it into
|
|
138
|
+
// `sessions` once the SDK assigns a session id. Pre-init
|
|
139
|
+
// requests (initialize itself) reach handleRequest and the
|
|
140
|
+
// transport routes them.
|
|
141
|
+
try {
|
|
142
|
+
session = await makeSession();
|
|
143
|
+
}
|
|
144
|
+
catch (err) {
|
|
145
|
+
// eslint-disable-next-line no-console
|
|
146
|
+
console.error("session create failed:", err);
|
|
147
|
+
res.writeHead(500).end();
|
|
148
|
+
return;
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
try {
|
|
152
|
+
await session.transport.handleRequest(req, res);
|
|
153
|
+
}
|
|
154
|
+
catch (err) {
|
|
102
155
|
// eslint-disable-next-line no-console
|
|
103
156
|
console.error("transport error:", err);
|
|
104
|
-
res.
|
|
105
|
-
|
|
157
|
+
if (!res.headersSent)
|
|
158
|
+
res.writeHead(500).end();
|
|
159
|
+
}
|
|
106
160
|
});
|
|
107
161
|
httpServer.listen(cfg.httpPort, () => {
|
|
108
162
|
// eslint-disable-next-line no-console
|
|
@@ -110,7 +164,8 @@ async function main() {
|
|
|
110
164
|
});
|
|
111
165
|
return;
|
|
112
166
|
}
|
|
113
|
-
// stdio (default)
|
|
167
|
+
// stdio (default) — single transport, single server.
|
|
168
|
+
const server = (0, server_1.createMcpServer)(cfg);
|
|
114
169
|
const transport = new stdio_js_1.StdioServerTransport();
|
|
115
170
|
await server.connect(transport);
|
|
116
171
|
// Stay alive — stdio's stdin close terminates us cleanly via the SDK.
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;AACA;;;;;;;GAOG;;AAEH,wEAAiF;AAEjF,qCAAsC;AACtC,qCAA2C;AAE3C,MAAM,SAAS,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8BjB,CAAC;AAEF,KAAK,UAAU,IAAI;IACjB,mEAAmE;IACnE,gEAAgE;IAChE,8BAA8B;IAC9B,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,CAAC,EAAE,CAAC;QAC1E,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAChC,OAAO;IACT,CAAC;IACD,kDAAkD;IAClD,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,KAAK,WAAW,IAAI,GAAG,KAAK,IAAI,CAAC,EAAE,CAAC;QAC7E,qGAAqG;QACrG,MAAM,GAAG,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;QACvC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,OAAO,IAAI,CAAC,CAAC;QACrD,OAAO;IACT,CAAC;IAED,MAAM,GAAG,GAAG,IAAA,mBAAU,GAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/resources/docs.js
CHANGED
|
@@ -50,19 +50,29 @@ const docs_1 = require("../tools/discovery/docs");
|
|
|
50
50
|
Object.defineProperty(exports, "findDocsRoot", { enumerable: true, get: function () { return docs_1.findDocsRoot; } });
|
|
51
51
|
const DOCS_PROTOCOL = "agenttrust://docs/";
|
|
52
52
|
const EXAMPLES_PROT = "agenttrust://examples/";
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
53
|
+
/**
|
|
54
|
+
* Resolve the examples root. Phase N1+N2 fix:
|
|
55
|
+
* `dist/embedded-examples/` is preferred (npm-install path) and the
|
|
56
|
+
* live `examples/` tree under the repo root is the local-clone fallback.
|
|
57
|
+
*
|
|
58
|
+
* Returns one or more candidate roots so callers can try each in order.
|
|
59
|
+
*/
|
|
60
|
+
function findExamplesRoots() {
|
|
61
|
+
const out = [];
|
|
62
|
+
const distExamples = path.resolve(__dirname, "../../embedded-examples");
|
|
63
|
+
if (fs.existsSync(distExamples))
|
|
64
|
+
out.push(distExamples);
|
|
65
|
+
const repoCandidates = [path.resolve(__dirname, "../../.."), process.cwd()];
|
|
66
|
+
for (const c of repoCandidates) {
|
|
59
67
|
try {
|
|
60
|
-
if (fs.existsSync(path.join(c, "Anchor.toml")))
|
|
61
|
-
|
|
68
|
+
if (fs.existsSync(path.join(c, "Anchor.toml"))) {
|
|
69
|
+
out.push(path.join(c, "examples"));
|
|
70
|
+
break;
|
|
71
|
+
}
|
|
62
72
|
}
|
|
63
73
|
catch { /* ignore */ }
|
|
64
74
|
}
|
|
65
|
-
return
|
|
75
|
+
return out;
|
|
66
76
|
}
|
|
67
77
|
function listDocsResources() {
|
|
68
78
|
const corpus = (0, docs_1.loadDocsCorpus)();
|
|
@@ -88,34 +98,45 @@ function readDocsResource(uri) {
|
|
|
88
98
|
}
|
|
89
99
|
const EXAMPLE_DEMOS = ["pay-sh-demo", "attestor-demo"];
|
|
90
100
|
function listExampleResources() {
|
|
91
|
-
const
|
|
101
|
+
const roots = findExamplesRoots();
|
|
102
|
+
const seen = new Set();
|
|
92
103
|
const out = [];
|
|
93
|
-
for (const
|
|
94
|
-
const
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
mimeType: "text/markdown",
|
|
102
|
-
});
|
|
103
|
-
// List the source files non-recursively (one level deep keeps the
|
|
104
|
-
// resource list compact; clients fetch full content via read).
|
|
105
|
-
const srcDir = path.join(demoDir, "src");
|
|
106
|
-
if (fs.existsSync(srcDir)) {
|
|
107
|
-
for (const ent of fs.readdirSync(srcDir, { withFileTypes: true })) {
|
|
108
|
-
if (!ent.isFile())
|
|
109
|
-
continue;
|
|
110
|
-
if (!ent.name.endsWith(".ts"))
|
|
111
|
-
continue;
|
|
104
|
+
for (const root of roots) {
|
|
105
|
+
for (const demo of EXAMPLE_DEMOS) {
|
|
106
|
+
const demoDir = path.join(root, demo);
|
|
107
|
+
if (!fs.existsSync(demoDir))
|
|
108
|
+
continue;
|
|
109
|
+
const readmeUri = `${EXAMPLES_PROT}${demo}/README.md`;
|
|
110
|
+
if (!seen.has(readmeUri) && fs.existsSync(path.join(demoDir, "README.md"))) {
|
|
111
|
+
seen.add(readmeUri);
|
|
112
112
|
out.push({
|
|
113
|
-
uri:
|
|
114
|
-
name: `examples/${demo}/
|
|
115
|
-
description: `${demo}
|
|
116
|
-
mimeType: "text/
|
|
113
|
+
uri: readmeUri,
|
|
114
|
+
name: `examples/${demo}/README.md`,
|
|
115
|
+
description: `${demo} README — install + smoke walkthrough`,
|
|
116
|
+
mimeType: "text/markdown",
|
|
117
117
|
});
|
|
118
118
|
}
|
|
119
|
+
// List the source files non-recursively (one level deep keeps
|
|
120
|
+
// the resource list compact; clients fetch full content via read).
|
|
121
|
+
const srcDir = path.join(demoDir, "src");
|
|
122
|
+
if (fs.existsSync(srcDir)) {
|
|
123
|
+
for (const ent of fs.readdirSync(srcDir, { withFileTypes: true })) {
|
|
124
|
+
if (!ent.isFile())
|
|
125
|
+
continue;
|
|
126
|
+
if (!ent.name.endsWith(".ts"))
|
|
127
|
+
continue;
|
|
128
|
+
const uri = `${EXAMPLES_PROT}${demo}/src/${ent.name}`;
|
|
129
|
+
if (seen.has(uri))
|
|
130
|
+
continue;
|
|
131
|
+
seen.add(uri);
|
|
132
|
+
out.push({
|
|
133
|
+
uri,
|
|
134
|
+
name: `examples/${demo}/src/${ent.name}`,
|
|
135
|
+
description: `${demo} source: ${ent.name}`,
|
|
136
|
+
mimeType: "text/x-typescript",
|
|
137
|
+
});
|
|
138
|
+
}
|
|
139
|
+
}
|
|
119
140
|
}
|
|
120
141
|
}
|
|
121
142
|
return out;
|
|
@@ -124,24 +145,25 @@ function readExampleResource(uri) {
|
|
|
124
145
|
if (!uri.startsWith(EXAMPLES_PROT))
|
|
125
146
|
return null;
|
|
126
147
|
const rest = uri.slice(EXAMPLES_PROT.length);
|
|
127
|
-
// Validate: only allow accessing files inside examples/<demo>/
|
|
128
148
|
const parts = rest.split("/");
|
|
129
149
|
if (parts.length < 2)
|
|
130
150
|
return null;
|
|
131
151
|
const demo = parts[0];
|
|
132
152
|
if (!EXAMPLE_DEMOS.includes(demo))
|
|
133
153
|
return null;
|
|
134
|
-
const root
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
154
|
+
for (const root of findExamplesRoots()) {
|
|
155
|
+
const fullPath = path.resolve(root, demo, ...parts.slice(1));
|
|
156
|
+
// Path-traversal guard: resolve must remain within the demo dir.
|
|
157
|
+
const allowed = path.resolve(root, demo);
|
|
158
|
+
if (!fullPath.startsWith(allowed + path.sep) && fullPath !== allowed)
|
|
159
|
+
continue;
|
|
160
|
+
if (!fs.existsSync(fullPath) || !fs.statSync(fullPath).isFile())
|
|
161
|
+
continue;
|
|
162
|
+
const mime = fullPath.endsWith(".ts") ? "text/x-typescript"
|
|
163
|
+
: fullPath.endsWith(".md") ? "text/markdown"
|
|
164
|
+
: "text/plain";
|
|
165
|
+
return { uri, mimeType: mime, text: fs.readFileSync(fullPath, "utf-8") };
|
|
166
|
+
}
|
|
167
|
+
return null;
|
|
146
168
|
}
|
|
147
169
|
//# sourceMappingURL=docs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"docs.js","sourceRoot":"","sources":["../../src/resources/docs.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"docs.js","sourceRoot":"","sources":["../../src/resources/docs.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0CH,8CAQC;AAED,4CAUC;AAID,oDAuCC;AAED,kDAmBC;AA5HD,uCAAyB;AACzB,2CAA6B;AAE7B,kDAAuE;AA4H9D,6FA5HA,mBAAY,OA4HA;AA7GrB,MAAM,aAAa,GAAM,oBAAoB,CAAC;AAC9C,MAAM,aAAa,GAAM,wBAAwB,CAAC;AAElD;;;;;;GAMG;AACH,SAAS,iBAAiB;IACxB,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,yBAAyB,CAAC,CAAC;IACxE,IAAI,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC;QAAE,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IACxD,MAAM,cAAc,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,UAAU,CAAC,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IAC5E,KAAK,MAAM,CAAC,IAAI,cAAc,EAAE,CAAC;QAC/B,IAAI,CAAC;YAAC,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC;gBAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC;gBAAC,MAAM;YAAC,CAAC;QAAC,CAAC;QACtG,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;IACxB,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAgB,iBAAiB;IAC/B,MAAM,MAAM,GAAG,IAAA,qBAAc,GAAE,CAAC;IAChC,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACxB,GAAG,EAAU,CAAC,CAAC,GAAG;QAClB,IAAI,EAAS,CAAC,CAAC,KAAK;QACpB,WAAW,EAAE,CAAC,CAAC,WAAW,IAAI,YAAY,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC,EAAE;QAC5E,QAAQ,EAAK,eAAe;KAC7B,CAAC,CAAC,CAAC;AACN,CAAC;AAED,SAAgB,gBAAgB,CAAC,GAAW;IAC1C,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,aAAa,CAAC;QAAE,OAAO,IAAI,CAAC;IAChD,MAAM,MAAM,GAAG,IAAA,qBAAc,GAAE,CAAC;IAChC,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC;IAC/C,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IACvB,OAAO;QACL,GAAG;QACH,QAAQ,EAAE,eAAe;QACzB,IAAI,EAAM,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC;KAClD,CAAC;AACJ,CAAC;AAED,MAAM,aAAa,GAAG,CAAC,aAAa,EAAE,eAAe,CAAU,CAAC;AAEhE,SAAgB,oBAAoB;IAClC,MAAM,KAAK,GAAG,iBAAiB,EAAE,CAAC;IAClC,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,MAAM,GAAG,GAAyB,EAAE,CAAC;IACrC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,KAAK,MAAM,IAAI,IAAI,aAAa,EAAE,CAAC;YACjC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YACtC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC;gBAAE,SAAS;YACtC,MAAM,SAAS,GAAG,GAAG,aAAa,GAAG,IAAI,YAAY,CAAC;YACtD,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC,EAAE,CAAC;gBAC3E,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;gBACpB,GAAG,CAAC,IAAI,CAAC;oBACP,GAAG,EAAU,SAAS;oBACtB,IAAI,EAAS,YAAY,IAAI,YAAY;oBACzC,WAAW,EAAE,GAAG,IAAI,uCAAuC;oBAC3D,QAAQ,EAAK,eAAe;iBAC7B,CAAC,CAAC;YACL,CAAC;YACD,8DAA8D;YAC9D,mEAAmE;YACnE,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YACzC,IAAI,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC1B,KAAK,MAAM,GAAG,IAAI,EAAE,CAAC,WAAW,CAAC,MAAM,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;oBAClE,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE;wBAAE,SAAS;oBAC5B,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;wBAAE,SAAS;oBACxC,MAAM,GAAG,GAAG,GAAG,aAAa,GAAG,IAAI,QAAQ,GAAG,CAAC,IAAI,EAAE,CAAC;oBACtD,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;wBAAE,SAAS;oBAC5B,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;oBACd,GAAG,CAAC,IAAI,CAAC;wBACP,GAAG;wBACH,IAAI,EAAS,YAAY,IAAI,QAAQ,GAAG,CAAC,IAAI,EAAE;wBAC/C,WAAW,EAAE,GAAG,IAAI,YAAY,GAAG,CAAC,IAAI,EAAE;wBAC1C,QAAQ,EAAK,mBAAmB;qBACjC,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAgB,mBAAmB,CAAC,GAAW;IAC7C,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,aAAa,CAAC;QAAE,OAAO,IAAI,CAAC;IAChD,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IAC7C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC9B,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IAClC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IACtB,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAoC,CAAC;QAAE,OAAO,IAAI,CAAC;IAC/E,KAAK,MAAM,IAAI,IAAI,iBAAiB,EAAE,EAAE,CAAC;QACvC,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7D,iEAAiE;QACjE,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACzC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,QAAQ,KAAK,OAAO;YAAE,SAAS;QAC/E,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,MAAM,EAAE;YAAE,SAAS;QAC1E,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,mBAAmB;YAChD,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,eAAe;gBAC5C,CAAC,CAAC,YAAY,CAAC;QAC1B,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,EAAE,CAAC;IAC3E,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
|
package/dist/server.js
CHANGED
|
@@ -25,8 +25,13 @@ const prompts_1 = require("./prompts");
|
|
|
25
25
|
const programs_1 = require("./resources/programs");
|
|
26
26
|
const docs_1 = require("./resources/docs");
|
|
27
27
|
const tools_1 = require("./tools");
|
|
28
|
+
// Read SERVER_VERSION from package.json so MCP clients see the same
|
|
29
|
+
// version that npm reports. Hardcoding drifted in 0.2.x (Phase M E2E
|
|
30
|
+
// found serverInfo.version=0.1.0 while package.json was 0.2.1).
|
|
31
|
+
// eslint-disable-next-line @typescript-eslint/no-require-imports, @typescript-eslint/no-var-requires
|
|
32
|
+
const PKG_VERSION = require("../package.json").version;
|
|
28
33
|
const SERVER_NAME = "agenttrust";
|
|
29
|
-
const SERVER_VERSION =
|
|
34
|
+
const SERVER_VERSION = PKG_VERSION;
|
|
30
35
|
const SERVER_INSTRUCTIONS = "AgentTrust MCP server. Read tools work without auth (devnet by default). " +
|
|
31
36
|
"Write tools require KEYPAIR_B58 in env. Resources expose the AgentTrust " +
|
|
32
37
|
"docs corpus, deployed program manifest, and example demo source. Prompts " +
|
package/dist/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;GAeG;;
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
|
@@ -58,8 +58,14 @@ const InputSchema = zod_1.z.object({
|
|
|
58
58
|
let cache = null;
|
|
59
59
|
function findDocsRoot() {
|
|
60
60
|
const candidates = [
|
|
61
|
+
// Env override wins (tests + power-users)
|
|
61
62
|
process.env.MCP_DOCS_DIR ?? "",
|
|
63
|
+
// npm-install path: full MDX corpus copied into dist/embedded-docs
|
|
64
|
+
// by scripts/copy-embedded-assets.js (Phase N2 fix).
|
|
65
|
+
path.resolve(__dirname, "../../../embedded-docs"),
|
|
66
|
+
// Local-clone path: read directly from the source-of-truth tree.
|
|
62
67
|
path.resolve(__dirname, "../../../../docs-site/content/docs"),
|
|
68
|
+
// Process cwd fallback (tests, custom layouts).
|
|
63
69
|
path.resolve(process.cwd(), "docs-site/content/docs"),
|
|
64
70
|
].filter(Boolean);
|
|
65
71
|
for (const c of candidates) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"docs.js","sourceRoot":"","sources":["../../../src/tools/discovery/docs.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;GAWG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAuCH,
|
|
1
|
+
{"version":3,"file":"docs.js","sourceRoot":"","sources":["../../../src/tools/discovery/docs.ts"],"names":[],"mappings":"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"}
|
|
@@ -61,19 +61,38 @@ const ADAPTER_DOCS = {
|
|
|
61
61
|
};
|
|
62
62
|
const GENERIC_FALLBACK = "integration-guides/facilitator-adapters.mdx";
|
|
63
63
|
const SERVICES_README = "trustgate/server/src/facilitators/README.md";
|
|
64
|
-
|
|
65
|
-
|
|
64
|
+
/**
|
|
65
|
+
* Resolve the bundled docs root (Phase N2: dist/embedded-docs/) plus
|
|
66
|
+
* the repo-root fallback. The bundled path is preferred — it's the
|
|
67
|
+
* load-bearing fix for npm-install consumers.
|
|
68
|
+
*/
|
|
69
|
+
function findDocsLookupRoots() {
|
|
70
|
+
// npm install: copy-embedded-assets.js puts the MDX tree under
|
|
71
|
+
// dist/embedded-docs and the facilitators README under
|
|
72
|
+
// dist/trustgate/server/src/facilitators/README.md.
|
|
73
|
+
const distDocs = path.resolve(__dirname, "../../../embedded-docs");
|
|
74
|
+
const distSvc = path.resolve(__dirname, "../../../" + SERVICES_README);
|
|
75
|
+
// Local clone: live tree.
|
|
76
|
+
const repoCandidates = [
|
|
66
77
|
path.resolve(__dirname, "../../../.."),
|
|
67
78
|
process.cwd(),
|
|
68
79
|
];
|
|
69
|
-
|
|
80
|
+
let liveRoot = null;
|
|
81
|
+
for (const c of repoCandidates) {
|
|
70
82
|
try {
|
|
71
|
-
if (fs.existsSync(path.join(c, "Anchor.toml")))
|
|
72
|
-
|
|
83
|
+
if (fs.existsSync(path.join(c, "Anchor.toml"))) {
|
|
84
|
+
liveRoot = c;
|
|
85
|
+
break;
|
|
86
|
+
}
|
|
73
87
|
}
|
|
74
88
|
catch { /* ignore */ }
|
|
75
89
|
}
|
|
76
|
-
|
|
90
|
+
const out = [];
|
|
91
|
+
if (fs.existsSync(distDocs))
|
|
92
|
+
out.push({ docsRoot: distDocs, servicesReadme: distSvc });
|
|
93
|
+
if (liveRoot)
|
|
94
|
+
out.push({ docsRoot: path.join(liveRoot, "docs-site/content/docs"), servicesReadme: path.join(liveRoot, SERVICES_README) });
|
|
95
|
+
return out;
|
|
77
96
|
}
|
|
78
97
|
exports.facilitatorWalkthroughTool = {
|
|
79
98
|
name: "agenttrust_facilitator_walkthrough",
|
|
@@ -83,24 +102,30 @@ exports.facilitatorWalkthroughTool = {
|
|
|
83
102
|
"the trustgate/server facilitators README content for cross-reference.",
|
|
84
103
|
inputSchema: InputSchema,
|
|
85
104
|
async handler(input) {
|
|
86
|
-
const root = findRepoRoot();
|
|
87
105
|
const docKey = input.name.toLowerCase().replace(/[\s_]/g, "-");
|
|
88
106
|
const matched = !!ADAPTER_DOCS[docKey];
|
|
89
107
|
const docRel = ADAPTER_DOCS[docKey] ?? GENERIC_FALLBACK;
|
|
90
|
-
const docAbs = path.join(root, "docs-site", "content", "docs", docRel);
|
|
91
|
-
const readmeAbs = path.join(root, SERVICES_README);
|
|
92
108
|
let content = "";
|
|
93
|
-
try {
|
|
94
|
-
content = fs.readFileSync(docAbs, "utf-8");
|
|
95
|
-
}
|
|
96
|
-
catch (err) {
|
|
97
|
-
content = `(failed to read ${docRel}: ${err.message})`;
|
|
98
|
-
}
|
|
99
109
|
let services = "";
|
|
100
|
-
|
|
101
|
-
|
|
110
|
+
for (const { docsRoot, servicesReadme } of findDocsLookupRoots()) {
|
|
111
|
+
const docAbs = path.join(docsRoot, docRel);
|
|
112
|
+
if (!content) {
|
|
113
|
+
try {
|
|
114
|
+
content = fs.readFileSync(docAbs, "utf-8");
|
|
115
|
+
}
|
|
116
|
+
catch { /* try next */ }
|
|
117
|
+
}
|
|
118
|
+
if (!services) {
|
|
119
|
+
try {
|
|
120
|
+
services = fs.readFileSync(servicesReadme, "utf-8");
|
|
121
|
+
}
|
|
122
|
+
catch { /* try next */ }
|
|
123
|
+
}
|
|
124
|
+
if (content && services)
|
|
125
|
+
break;
|
|
102
126
|
}
|
|
103
|
-
|
|
127
|
+
if (!content)
|
|
128
|
+
content = `(no walkthrough bundled for ${docRel})`;
|
|
104
129
|
const out = {
|
|
105
130
|
name: input.name,
|
|
106
131
|
matched,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"facilitator-walkthrough.js","sourceRoot":"","sources":["../../../src/tools/discovery/facilitator-walkthrough.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,uCAAyB;AACzB,2CAA6B;AAE7B,6BAAwB;AAIxB,MAAM,WAAW,GAAG,OAAC,CAAC,MAAM,CAAC;IAC3B,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,6EAA6E,CAAC;CAChH,CAAC,CAAC;AAYH,MAAM,YAAY,GAA2B;IAC3C,QAAQ,EAAG,uCAAuC;IAClD,OAAO,EAAI,uCAAuC;IAClD,QAAQ,EAAG,uCAAuC;IAClD,QAAQ,EAAG,6CAA6C;IACxD,MAAM,EAAK,6CAA6C;IACxD,SAAS,EAAE,6CAA6C;IACxD,OAAO,EAAI,6CAA6C;CACzD,CAAC;AACF,MAAM,gBAAgB,GAAG,6CAA6C,CAAC;AACvE,MAAM,eAAe,GAAI,6CAA6C,CAAC;AAEvE,SAAS,
|
|
1
|
+
{"version":3,"file":"facilitator-walkthrough.js","sourceRoot":"","sources":["../../../src/tools/discovery/facilitator-walkthrough.ts"],"names":[],"mappings":"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"}
|
|
@@ -51,12 +51,15 @@ const config_1 = require("../../config");
|
|
|
51
51
|
const InputSchema = zod_1.z.object({});
|
|
52
52
|
function findDemoFile() {
|
|
53
53
|
const candidates = [
|
|
54
|
-
//
|
|
54
|
+
// Env override wins (tests + power-users)
|
|
55
|
+
process.env.PAY_SH_DEMO_STATE_FILE ?? "",
|
|
56
|
+
// npm-install path: snapshot bundled into dist/embedded-data/ at
|
|
57
|
+
// build time by scripts/copy-embedded-assets.js (Phase N1 fix).
|
|
58
|
+
path.resolve(__dirname, "../../embedded-data/devnet-counterparties.json"),
|
|
59
|
+
// Local-clone path: read directly from the source-of-truth file.
|
|
55
60
|
path.resolve(__dirname, "../../../../examples/pay-sh-demo/devnet-counterparties.json"),
|
|
56
|
-
//
|
|
61
|
+
// Process cwd fallback (tests, custom layouts).
|
|
57
62
|
path.resolve(process.cwd(), "examples/pay-sh-demo/devnet-counterparties.json"),
|
|
58
|
-
// Env override
|
|
59
|
-
process.env.PAY_SH_DEMO_STATE_FILE ?? "",
|
|
60
63
|
].filter(Boolean);
|
|
61
64
|
for (const p of candidates) {
|
|
62
65
|
try {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"demo-state.js","sourceRoot":"","sources":["../../../src/tools/read/demo-state.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,uCAAyB;AACzB,2CAA6B;AAE7B,6BAAwB;AAExB,yCAA2C;AAG3C,MAAM,WAAW,GAAG,OAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AAqCjC,SAAS,YAAY;IACnB,MAAM,UAAU,GAAG;QACjB,
|
|
1
|
+
{"version":3,"file":"demo-state.js","sourceRoot":"","sources":["../../../src/tools/read/demo-state.ts"],"names":[],"mappings":"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"}
|