@ateam-ai/mcp 0.4.21 → 0.4.22
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/package.json +1 -1
- package/src/tools.js +33 -6
package/package.json
CHANGED
package/src/tools.js
CHANGED
|
@@ -2653,16 +2653,43 @@ const handlers = {
|
|
|
2653
2653
|
// Design-time capability advisor. Proxies to the Builder's /spec/advisor
|
|
2654
2654
|
// (LLM over the curated capability catalog). Public endpoint (auth-exempt),
|
|
2655
2655
|
// but we forward the session so a base override is honored.
|
|
2656
|
-
ateam_design_advisor: async ({ goal, design_state }, sid) => {
|
|
2656
|
+
ateam_design_advisor: async ({ goal, design_state, solution_id }, sid) => {
|
|
2657
2657
|
if (!goal || typeof goal !== "string") throw new Error("goal required (a string describing what you're building)");
|
|
2658
|
-
|
|
2658
|
+
// Reach the advisor through the sysSpecSearch-mcp platform connector via the
|
|
2659
|
+
// proven connector-call path (same as ateam_spec_search) — works on prod with
|
|
2660
|
+
// no bespoke /spec route. The connector's advise tool proxies the Builder's
|
|
2661
|
+
// LLM+catalog internally.
|
|
2662
|
+
const sol = solution_id || "_";
|
|
2663
|
+
const r = await post(
|
|
2664
|
+
`/deploy/solutions/${encodeURIComponent(sol)}/connectors/sysSpecSearch-mcp/call`,
|
|
2665
|
+
{ tool: "sysSpecSearch.advise", args: { goal, design_state: design_state || {} } },
|
|
2666
|
+
sid,
|
|
2667
|
+
{ timeoutMs: 90_000, retries: 1 },
|
|
2668
|
+
);
|
|
2669
|
+
const text = r?.result?.content?.[0]?.text;
|
|
2670
|
+
if (text) { try { return JSON.parse(text); } catch { return { ok: true, raw: text }; } }
|
|
2671
|
+
return r?.result ?? r;
|
|
2659
2672
|
},
|
|
2660
2673
|
|
|
2661
|
-
// Semantic search over the full /spec corpus
|
|
2662
|
-
//
|
|
2663
|
-
|
|
2674
|
+
// Semantic search over the full /spec corpus. Reaches the sysSpecSearch-mcp
|
|
2675
|
+
// PLATFORM connector through the proven connector-call path (the same route
|
|
2676
|
+
// ateam_test_connector uses) — so it works wherever the existing tools do, with
|
|
2677
|
+
// no bespoke /spec route to route on prod. Auth: the agent's api-key gates the
|
|
2678
|
+
// Builder route; the Builder calls Core with the internal secret; tenant is
|
|
2679
|
+
// forwarded from the session. solution_id is only for the route path (any).
|
|
2680
|
+
ateam_spec_search: async ({ query, top_k, solution_id }, sid) => {
|
|
2664
2681
|
if (!query || typeof query !== "string") throw new Error("query required (a string question)");
|
|
2665
|
-
|
|
2682
|
+
const sol = solution_id || "_";
|
|
2683
|
+
const r = await post(
|
|
2684
|
+
`/deploy/solutions/${encodeURIComponent(sol)}/connectors/sysSpecSearch-mcp/call`,
|
|
2685
|
+
{ tool: "sysSpecSearch.search", args: { query, ...(top_k ? { top_k } : {}) } },
|
|
2686
|
+
sid,
|
|
2687
|
+
{ timeoutMs: 30_000, retries: 1 },
|
|
2688
|
+
);
|
|
2689
|
+
// Unwrap the MCP tool result: { result: { content: [{ type:"text", text }] } }.
|
|
2690
|
+
const text = r?.result?.content?.[0]?.text;
|
|
2691
|
+
if (text) { try { return JSON.parse(text); } catch { return { ok: true, raw: text }; } }
|
|
2692
|
+
return r?.result ?? r;
|
|
2666
2693
|
},
|
|
2667
2694
|
|
|
2668
2695
|
// ─── Composite: Build & Run ────────────────────────────────────────
|