@superblocksteam/clark 2.0.164 → 2.0.166-next.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/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/mcp/docs-mcp.d.ts +9 -0
- package/dist/mcp/docs-mcp.d.ts.map +1 -1
- package/dist/mcp/docs-mcp.js +8 -2
- package/dist/mcp/docs-mcp.js.map +1 -1
- package/dist/mcp/docs-search-results.d.ts +18 -0
- package/dist/mcp/docs-search-results.d.ts.map +1 -0
- package/dist/mcp/docs-search-results.js +81 -0
- package/dist/mcp/docs-search-results.js.map +1 -0
- package/dist/mcp/index.d.ts +1 -1
- package/dist/mcp/index.d.ts.map +1 -1
- package/dist/mcp/index.js +1 -1
- package/dist/mcp/index.js.map +1 -1
- package/dist/mcp/mcp-client.d.ts +13 -1
- package/dist/mcp/mcp-client.d.ts.map +1 -1
- package/dist/mcp/mcp-client.js +12 -2
- package/dist/mcp/mcp-client.js.map +1 -1
- package/package.json +2 -2
package/dist/index.d.ts
CHANGED
|
@@ -5,7 +5,7 @@ export type { ClarkStreamTelemetry, ClarkStreamTelemetryScope, ClarkStreamSpine,
|
|
|
5
5
|
export { bindsThinkingToPrefix, buildThinkingProviderOptions, usesAdaptiveEffort, type ThinkingOptionsParams, type ThinkingProviderOptions, } from "./thinking-options.js";
|
|
6
6
|
export { isExtendedThinkingModel, upstreamStallTimeoutMsFor, UPSTREAM_STALL_TIMEOUT_EXTENDED_MS, UPSTREAM_STALL_TIMEOUT_STANDARD_MS, } from "./stall-timeout.js";
|
|
7
7
|
export { createSnowflakeCortexFetch, snowflakeCortexFetch, } from "./snowflake-cortex-fetch.js";
|
|
8
|
-
export { MCPClient, DOCS_MCP_URL, getDocsMcpTools } from "./mcp/index.js";
|
|
8
|
+
export { MCPClient, DOCS_MCP_URL, ensureDocsMcpConnected, getDocsMcpTools, } from "./mcp/index.js";
|
|
9
9
|
export { extractMcpTextContent } from "./mcp/index.js";
|
|
10
10
|
export type { McpLogger } from "./mcp/index.js";
|
|
11
11
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EACL,WAAW,EACX,KAAK,aAAa,EAClB,KAAK,qBAAqB,EAC1B,KAAK,yBAAyB,EAC9B,KAAK,iBAAiB,EACtB,KAAK,wBAAwB,EAC7B,KAAK,6BAA6B,GACnC,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC/D,YAAY,EACV,oBAAoB,EACpB,yBAAyB,EACzB,gBAAgB,GACjB,MAAM,6BAA6B,CAAC;AAErC,OAAO,EACL,qBAAqB,EACrB,4BAA4B,EAC5B,kBAAkB,EAClB,KAAK,qBAAqB,EAC1B,KAAK,uBAAuB,GAC7B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,uBAAuB,EACvB,yBAAyB,EACzB,kCAAkC,EAClC,kCAAkC,GACnC,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,0BAA0B,EAC1B,oBAAoB,GACrB,MAAM,6BAA6B,CAAC;AAGrC,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EACL,WAAW,EACX,KAAK,aAAa,EAClB,KAAK,qBAAqB,EAC1B,KAAK,yBAAyB,EAC9B,KAAK,iBAAiB,EACtB,KAAK,wBAAwB,EAC7B,KAAK,6BAA6B,GACnC,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC/D,YAAY,EACV,oBAAoB,EACpB,yBAAyB,EACzB,gBAAgB,GACjB,MAAM,6BAA6B,CAAC;AAErC,OAAO,EACL,qBAAqB,EACrB,4BAA4B,EAC5B,kBAAkB,EAClB,KAAK,qBAAqB,EAC1B,KAAK,uBAAuB,GAC7B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,uBAAuB,EACvB,yBAAyB,EACzB,kCAAkC,EAClC,kCAAkC,GACnC,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,0BAA0B,EAC1B,oBAAoB,GACrB,MAAM,6BAA6B,CAAC;AAGrC,OAAO,EACL,SAAS,EACT,YAAY,EACZ,sBAAsB,EACtB,eAAe,GAChB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AACvD,YAAY,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -5,6 +5,6 @@ export { bindsThinkingToPrefix, buildThinkingProviderOptions, usesAdaptiveEffort
|
|
|
5
5
|
export { isExtendedThinkingModel, upstreamStallTimeoutMsFor, UPSTREAM_STALL_TIMEOUT_EXTENDED_MS, UPSTREAM_STALL_TIMEOUT_STANDARD_MS, } from "./stall-timeout.js";
|
|
6
6
|
export { createSnowflakeCortexFetch, snowflakeCortexFetch, } from "./snowflake-cortex-fetch.js";
|
|
7
7
|
// MCP infrastructure
|
|
8
|
-
export { MCPClient, DOCS_MCP_URL, getDocsMcpTools } from "./mcp/index.js";
|
|
8
|
+
export { MCPClient, DOCS_MCP_URL, ensureDocsMcpConnected, getDocsMcpTools, } from "./mcp/index.js";
|
|
9
9
|
export { extractMcpTextContent } from "./mcp/index.js";
|
|
10
10
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EACL,WAAW,GAOZ,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAuB,MAAM,0BAA0B,CAAC;AAO/D,OAAO,EACL,qBAAqB,EACrB,4BAA4B,EAC5B,kBAAkB,GAGnB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,uBAAuB,EACvB,yBAAyB,EACzB,kCAAkC,EAClC,kCAAkC,GACnC,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,0BAA0B,EAC1B,oBAAoB,GACrB,MAAM,6BAA6B,CAAC;AAErC,qBAAqB;AACrB,OAAO,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EACL,WAAW,GAOZ,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAuB,MAAM,0BAA0B,CAAC;AAO/D,OAAO,EACL,qBAAqB,EACrB,4BAA4B,EAC5B,kBAAkB,GAGnB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,uBAAuB,EACvB,yBAAyB,EACzB,kCAAkC,EAClC,kCAAkC,GACnC,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,0BAA0B,EAC1B,oBAAoB,GACrB,MAAM,6BAA6B,CAAC;AAErC,qBAAqB;AACrB,OAAO,EACL,SAAS,EACT,YAAY,EACZ,sBAAsB,EACtB,eAAe,GAChB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC"}
|
package/dist/mcp/docs-mcp.d.ts
CHANGED
|
@@ -6,9 +6,18 @@
|
|
|
6
6
|
* to avoid reconnecting on every request.
|
|
7
7
|
*/
|
|
8
8
|
import { type ToolSet } from "ai";
|
|
9
|
+
import { MCPClient } from "./mcp-client.js";
|
|
9
10
|
import type { McpLogger } from "./types.js";
|
|
10
11
|
/** Superblocks docs MCP server URL. */
|
|
11
12
|
export declare const DOCS_MCP_URL = "https://docs.superblocks.com/mcp";
|
|
13
|
+
/**
|
|
14
|
+
* Ensures the docs MCP client is connected. Returns the pending
|
|
15
|
+
* connect promise so concurrent callers await the same connection.
|
|
16
|
+
*
|
|
17
|
+
* Exported so Editor Clark registers the same slimmed client through
|
|
18
|
+
* its MCP tool adapter instead of connecting its own.
|
|
19
|
+
*/
|
|
20
|
+
export declare function ensureDocsMcpConnected(logger: McpLogger): Promise<MCPClient>;
|
|
12
21
|
/**
|
|
13
22
|
* Returns docs MCP tools as an AI SDK ToolSet when the feature flag is
|
|
14
23
|
* enabled. Tools are dynamically discovered from the MCP server via the
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"docs-mcp.d.ts","sourceRoot":"","sources":["../../src/mcp/docs-mcp.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAc,KAAK,OAAO,EAAE,MAAM,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"docs-mcp.d.ts","sourceRoot":"","sources":["../../src/mcp/docs-mcp.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAc,KAAK,OAAO,EAAE,MAAM,IAAI,CAAC;AAO9C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,uCAAuC;AACvC,eAAO,MAAM,YAAY,qCAAqC,CAAC;AA8B/D;;;;;;GAMG;AACH,wBAAsB,sBAAsB,CAC1C,MAAM,EAAE,SAAS,GAChB,OAAO,CAAC,SAAS,CAAC,CAiBpB;AAED;;;;;;;;;GASG;AACH,wBAAsB,eAAe,CACnC,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,SAAS,GAChB,OAAO,CAAC,OAAO,CAAC,CAoClB"}
|
package/dist/mcp/docs-mcp.js
CHANGED
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
* to avoid reconnecting on every request.
|
|
7
7
|
*/
|
|
8
8
|
import { jsonSchema } from "ai";
|
|
9
|
+
import { DOCS_SEARCH_TOOL_NAME, slimDocsSearchResults, } from "./docs-search-results.js";
|
|
9
10
|
import { extractMcpTextContent } from "./extract-mcp-text-content.js";
|
|
10
11
|
import { MCPClient } from "./mcp-client.js";
|
|
11
12
|
/** Superblocks docs MCP server URL. */
|
|
@@ -24,7 +25,9 @@ let connectPromise = null;
|
|
|
24
25
|
*/
|
|
25
26
|
function getDocsMcpClient(logger) {
|
|
26
27
|
if (!docsMcpClientCache) {
|
|
27
|
-
docsMcpClientCache = new MCPClient(DOCS_MCP_URL, logger)
|
|
28
|
+
docsMcpClientCache = new MCPClient(DOCS_MCP_URL, logger, (toolName, content) => toolName === DOCS_SEARCH_TOOL_NAME
|
|
29
|
+
? slimDocsSearchResults(content)
|
|
30
|
+
: content);
|
|
28
31
|
connectPromise = null;
|
|
29
32
|
}
|
|
30
33
|
return docsMcpClientCache;
|
|
@@ -32,8 +35,11 @@ function getDocsMcpClient(logger) {
|
|
|
32
35
|
/**
|
|
33
36
|
* Ensures the docs MCP client is connected. Returns the pending
|
|
34
37
|
* connect promise so concurrent callers await the same connection.
|
|
38
|
+
*
|
|
39
|
+
* Exported so Editor Clark registers the same slimmed client through
|
|
40
|
+
* its MCP tool adapter instead of connecting its own.
|
|
35
41
|
*/
|
|
36
|
-
async function ensureDocsMcpConnected(logger) {
|
|
42
|
+
export async function ensureDocsMcpConnected(logger) {
|
|
37
43
|
const client = getDocsMcpClient(logger);
|
|
38
44
|
if (!client.isConnected()) {
|
|
39
45
|
if (!connectPromise) {
|
package/dist/mcp/docs-mcp.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"docs-mcp.js","sourceRoot":"","sources":["../../src/mcp/docs-mcp.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,UAAU,EAAgB,MAAM,IAAI,CAAC;AAE9C,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAG5C,uCAAuC;AACvC,MAAM,CAAC,MAAM,YAAY,GAAG,kCAAkC,CAAC;AAE/D;;;;GAIG;AACH,IAAI,kBAAkB,GAAqB,IAAI,CAAC;AAChD,IAAI,cAAc,GAAyB,IAAI,CAAC;AAEhD;;;;GAIG;AACH,SAAS,gBAAgB,CAAC,MAAiB;IACzC,IAAI,CAAC,kBAAkB,EAAE,CAAC;QACxB,kBAAkB,GAAG,IAAI,SAAS,
|
|
1
|
+
{"version":3,"file":"docs-mcp.js","sourceRoot":"","sources":["../../src/mcp/docs-mcp.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shrinks docs MCP search results before they enter the LLM context.
|
|
3
|
+
*
|
|
4
|
+
* The docs MCP server returns ten results per search, each holding a
|
|
5
|
+
* whole documentation page. In production that averaged ~22,000
|
|
6
|
+
* characters per call, which is a large share of an agent turn. Search
|
|
7
|
+
* exists to find the right page, so each result keeps its title, link
|
|
8
|
+
* and page path plus the opening of the page. The agent reads the full
|
|
9
|
+
* page with `query_docs_filesystem_superblocks_docs` when it needs more.
|
|
10
|
+
*/
|
|
11
|
+
/** Tool name the docs MCP server uses for search. */
|
|
12
|
+
export declare const DOCS_SEARCH_TOOL_NAME = "search_superblocks_docs";
|
|
13
|
+
/**
|
|
14
|
+
* Trims the text parts of a docs search response. Non-text parts and
|
|
15
|
+
* responses of another shape pass through untouched.
|
|
16
|
+
*/
|
|
17
|
+
export declare function slimDocsSearchResults(content: unknown): unknown;
|
|
18
|
+
//# sourceMappingURL=docs-search-results.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"docs-search-results.d.ts","sourceRoot":"","sources":["../../src/mcp/docs-search-results.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,qDAAqD;AACrD,eAAO,MAAM,qBAAqB,4BAA4B,CAAC;AAuD/D;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CA0B/D"}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shrinks docs MCP search results before they enter the LLM context.
|
|
3
|
+
*
|
|
4
|
+
* The docs MCP server returns ten results per search, each holding a
|
|
5
|
+
* whole documentation page. In production that averaged ~22,000
|
|
6
|
+
* characters per call, which is a large share of an agent turn. Search
|
|
7
|
+
* exists to find the right page, so each result keeps its title, link
|
|
8
|
+
* and page path plus the opening of the page. The agent reads the full
|
|
9
|
+
* page with `query_docs_filesystem_superblocks_docs` when it needs more.
|
|
10
|
+
*/
|
|
11
|
+
/** Tool name the docs MCP server uses for search. */
|
|
12
|
+
export const DOCS_SEARCH_TOOL_NAME = "search_superblocks_docs";
|
|
13
|
+
/** Results kept per search. The server returns ten today. */
|
|
14
|
+
const MAX_RESULTS = 10;
|
|
15
|
+
/** Characters kept from each result's page content. */
|
|
16
|
+
const MAX_CHARS_PER_RESULT = 1000;
|
|
17
|
+
/** Separator between a result's header lines and its page content. */
|
|
18
|
+
const CONTENT_MARKER = "\nContent: ";
|
|
19
|
+
/**
|
|
20
|
+
* Leading MDX component definitions that pages share (for example an
|
|
21
|
+
* `Alert` helper). They carry no documentation and can fill a result on
|
|
22
|
+
* their own, so they are dropped before trimming.
|
|
23
|
+
*
|
|
24
|
+
* A block stops before any markdown heading or code fence, so a `};`
|
|
25
|
+
* line further down the page cannot pull the real docs into the match.
|
|
26
|
+
*/
|
|
27
|
+
const MDX_PREAMBLE = /^(?:(?:export const|import )(?:(?!\n(?:#|```))[\s\S])*?\n(?:};|\)\);|"[^"\n]*";)\n+)+/;
|
|
28
|
+
const TRIMMED_MARKER = "[...trimmed]";
|
|
29
|
+
const READ_MORE_HINT = "Some results above were trimmed. Read a full page with query_docs_filesystem_superblocks_docs, for example: head -200 /<Page>.mdx";
|
|
30
|
+
/** Trims one result. Returns the text and whether anything was cut. */
|
|
31
|
+
function trimResult(text) {
|
|
32
|
+
const markerAt = text.indexOf(CONTENT_MARKER);
|
|
33
|
+
if (markerAt < 0) {
|
|
34
|
+
// Not the documented shape, so trim the whole text instead.
|
|
35
|
+
return text.length > MAX_CHARS_PER_RESULT
|
|
36
|
+
? {
|
|
37
|
+
text: `${text.slice(0, MAX_CHARS_PER_RESULT)}\n${TRIMMED_MARKER}`,
|
|
38
|
+
trimmed: true,
|
|
39
|
+
}
|
|
40
|
+
: { text, trimmed: false };
|
|
41
|
+
}
|
|
42
|
+
const header = text.slice(0, markerAt + CONTENT_MARKER.length);
|
|
43
|
+
const raw = text.slice(markerAt + CONTENT_MARKER.length).trim();
|
|
44
|
+
const content = raw.replace(MDX_PREAMBLE, "").trim();
|
|
45
|
+
// Some pages keep their data inside the component block (for example a
|
|
46
|
+
// permissions table), so a dropped preamble counts as a cut too.
|
|
47
|
+
if (content === raw && content.length <= MAX_CHARS_PER_RESULT) {
|
|
48
|
+
return { text: header + content, trimmed: false };
|
|
49
|
+
}
|
|
50
|
+
return {
|
|
51
|
+
text: `${header}${content.slice(0, MAX_CHARS_PER_RESULT)}\n${TRIMMED_MARKER}`,
|
|
52
|
+
trimmed: true,
|
|
53
|
+
};
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Trims the text parts of a docs search response. Non-text parts and
|
|
57
|
+
* responses of another shape pass through untouched.
|
|
58
|
+
*/
|
|
59
|
+
export function slimDocsSearchResults(content) {
|
|
60
|
+
if (!Array.isArray(content)) {
|
|
61
|
+
return content;
|
|
62
|
+
}
|
|
63
|
+
const kept = content.slice(0, MAX_RESULTS);
|
|
64
|
+
let trimmedAny = kept.length < content.length;
|
|
65
|
+
const slimmed = kept.map((part) => {
|
|
66
|
+
if (!part ||
|
|
67
|
+
typeof part !== "object" ||
|
|
68
|
+
part.type !== "text" ||
|
|
69
|
+
typeof part.text !== "string") {
|
|
70
|
+
return part;
|
|
71
|
+
}
|
|
72
|
+
const result = trimResult(part.text);
|
|
73
|
+
trimmedAny = trimmedAny || result.trimmed;
|
|
74
|
+
return { ...part, text: result.text };
|
|
75
|
+
});
|
|
76
|
+
if (trimmedAny) {
|
|
77
|
+
slimmed.push({ type: "text", text: READ_MORE_HINT });
|
|
78
|
+
}
|
|
79
|
+
return slimmed;
|
|
80
|
+
}
|
|
81
|
+
//# sourceMappingURL=docs-search-results.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"docs-search-results.js","sourceRoot":"","sources":["../../src/mcp/docs-search-results.ts"],"names":[],"mappings":"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"}
|
package/dist/mcp/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export { MCPClient } from "./mcp-client.js";
|
|
2
|
-
export { DOCS_MCP_URL, getDocsMcpTools } from "./docs-mcp.js";
|
|
2
|
+
export { DOCS_MCP_URL, ensureDocsMcpConnected, getDocsMcpTools, } from "./docs-mcp.js";
|
|
3
3
|
export { extractMcpTextContent } from "./extract-mcp-text-content.js";
|
|
4
4
|
export type { McpLogger } from "./types.js";
|
|
5
5
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/mcp/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/mcp/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/mcp/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EACL,YAAY,EACZ,sBAAsB,EACtB,eAAe,GAChB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,YAAY,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC"}
|
package/dist/mcp/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
export { MCPClient } from "./mcp-client.js";
|
|
2
|
-
export { DOCS_MCP_URL, getDocsMcpTools } from "./docs-mcp.js";
|
|
2
|
+
export { DOCS_MCP_URL, ensureDocsMcpConnected, getDocsMcpTools, } from "./docs-mcp.js";
|
|
3
3
|
export { extractMcpTextContent } from "./extract-mcp-text-content.js";
|
|
4
4
|
//# sourceMappingURL=index.js.map
|
package/dist/mcp/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/mcp/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/mcp/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EACL,YAAY,EACZ,sBAAsB,EACtB,eAAe,GAChB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC"}
|
package/dist/mcp/mcp-client.d.ts
CHANGED
|
@@ -15,10 +15,22 @@ import type { McpLogger, McpToolDefinition, McpClientInterface } from "./types.j
|
|
|
15
15
|
export declare class MCPClient implements McpClientInterface {
|
|
16
16
|
private readonly serverUrl;
|
|
17
17
|
private readonly logger;
|
|
18
|
+
/**
|
|
19
|
+
* Optional hook to reshape a tool result before callers see it.
|
|
20
|
+
* Used by the docs server to keep large results out of the LLM
|
|
21
|
+
* context. Defaults to passing the result through unchanged.
|
|
22
|
+
*/
|
|
23
|
+
private readonly transformResult?;
|
|
18
24
|
private nextId;
|
|
19
25
|
private connected;
|
|
20
26
|
private tools;
|
|
21
|
-
constructor(serverUrl: string, logger: McpLogger
|
|
27
|
+
constructor(serverUrl: string, logger: McpLogger,
|
|
28
|
+
/**
|
|
29
|
+
* Optional hook to reshape a tool result before callers see it.
|
|
30
|
+
* Used by the docs server to keep large results out of the LLM
|
|
31
|
+
* context. Defaults to passing the result through unchanged.
|
|
32
|
+
*/
|
|
33
|
+
transformResult?: ((toolName: string, content: unknown) => unknown) | undefined);
|
|
22
34
|
/**
|
|
23
35
|
* Connects to the MCP server and discovers available tools.
|
|
24
36
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-client.d.ts","sourceRoot":"","sources":["../../src/mcp/mcp-client.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EACV,SAAS,EAGT,iBAAiB,EACjB,kBAAkB,EACnB,MAAM,YAAY,CAAC;AAKpB;;;;;GAKG;AACH,qBAAa,SAAU,YAAW,kBAAkB;IAMhD,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,MAAM;
|
|
1
|
+
{"version":3,"file":"mcp-client.d.ts","sourceRoot":"","sources":["../../src/mcp/mcp-client.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EACV,SAAS,EAGT,iBAAiB,EACjB,kBAAkB,EACnB,MAAM,YAAY,CAAC;AAKpB;;;;;GAKG;AACH,qBAAa,SAAU,YAAW,kBAAkB;IAMhD,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB;;;;OAIG;IACH,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC;IAZnC,OAAO,CAAC,MAAM,CAAK;IACnB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,KAAK,CAA6C;gBAGvC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,SAAS;IAClC;;;;OAIG;IACc,eAAe,CAAC,GAAE,CACjC,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,OAAO,KACb,OAAO,aAAA;IAGd;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAqB9B;;;;OAIG;IACG,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IA8BjE;;OAEG;IACH,WAAW,IAAI,OAAO;IAItB;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAMjC;;OAEG;IACH,iBAAiB,IAAI,MAAM,EAAE;IAI7B;;OAEG;IACH,kBAAkB,IAAI,iBAAiB,EAAE;YAI3B,SAAS;YAKT,WAAW;IAyDzB,OAAO,CAAC,gBAAgB;CAmBzB"}
|
package/dist/mcp/mcp-client.js
CHANGED
|
@@ -16,12 +16,20 @@ const MCP_TIMEOUT_MS = 30_000;
|
|
|
16
16
|
export class MCPClient {
|
|
17
17
|
serverUrl;
|
|
18
18
|
logger;
|
|
19
|
+
transformResult;
|
|
19
20
|
nextId = 1;
|
|
20
21
|
connected = false;
|
|
21
22
|
tools = new Map();
|
|
22
|
-
constructor(serverUrl, logger
|
|
23
|
+
constructor(serverUrl, logger,
|
|
24
|
+
/**
|
|
25
|
+
* Optional hook to reshape a tool result before callers see it.
|
|
26
|
+
* Used by the docs server to keep large results out of the LLM
|
|
27
|
+
* context. Defaults to passing the result through unchanged.
|
|
28
|
+
*/
|
|
29
|
+
transformResult) {
|
|
23
30
|
this.serverUrl = serverUrl;
|
|
24
31
|
this.logger = logger;
|
|
32
|
+
this.transformResult = transformResult;
|
|
25
33
|
}
|
|
26
34
|
/**
|
|
27
35
|
* Connects to the MCP server and discovers available tools.
|
|
@@ -64,7 +72,9 @@ export class MCPClient {
|
|
|
64
72
|
if (response?.error) {
|
|
65
73
|
throw new Error(`Tool execution failed: ${response.error.message ?? "unknown error"}`);
|
|
66
74
|
}
|
|
67
|
-
return
|
|
75
|
+
return this.transformResult
|
|
76
|
+
? this.transformResult(toolName, response?.content)
|
|
77
|
+
: response?.content;
|
|
68
78
|
}
|
|
69
79
|
/**
|
|
70
80
|
* Checks if the client is connected.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-client.js","sourceRoot":"","sources":["../../src/mcp/mcp-client.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAUH,6CAA6C;AAC7C,MAAM,cAAc,GAAG,MAAM,CAAC;AAE9B;;;;;GAKG;AACH,MAAM,OAAO,SAAS;IAMD;IACA;
|
|
1
|
+
{"version":3,"file":"mcp-client.js","sourceRoot":"","sources":["../../src/mcp/mcp-client.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@superblocksteam/clark",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.166-next.0",
|
|
4
4
|
"description": "Clark model provider extracted for reuse and testing",
|
|
5
5
|
"license": "Superblocks Community Software License",
|
|
6
6
|
"files": [
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
"devDependencies": {
|
|
25
25
|
"@ai-sdk/test-server": "^1.0.3",
|
|
26
26
|
"@eslint/js": "^9.39.2",
|
|
27
|
-
"@superblocksteam/library-shared": "2.0.
|
|
27
|
+
"@superblocksteam/library-shared": "2.0.166-next.0",
|
|
28
28
|
"@types/node": "^24",
|
|
29
29
|
"@vitest/coverage-v8": "^4.1.11",
|
|
30
30
|
"@vitest/eslint-plugin": "^1.6.7",
|