@ateam-ai/mcp 0.4.34 → 0.4.35
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 +20 -2
package/package.json
CHANGED
package/src/tools.js
CHANGED
|
@@ -779,6 +779,10 @@ export const tools = [
|
|
|
779
779
|
type: "string",
|
|
780
780
|
description: "Optional: read a specific skill by ID (original or internal)",
|
|
781
781
|
},
|
|
782
|
+
section: {
|
|
783
|
+
type: "string",
|
|
784
|
+
description: "Optional (with skill_id): return ONLY this section of the skill instead of the whole definition — avoids the ~50KB output truncation on big skills. Dotted paths work (e.g. 'role', 'tools', 'intents.supported', 'policy', 'engine'). Omit for the full skill; use ateam_show_skill_minimal for the slim authoring view.",
|
|
785
|
+
},
|
|
782
786
|
},
|
|
783
787
|
required: ["solution_id", "view"],
|
|
784
788
|
},
|
|
@@ -3668,9 +3672,23 @@ const handlers = {
|
|
|
3668
3672
|
return { ...raw, solutions: enriched };
|
|
3669
3673
|
},
|
|
3670
3674
|
|
|
3671
|
-
ateam_get_solution: async ({ solution_id, view, skill_id }, sid) => {
|
|
3675
|
+
ateam_get_solution: async ({ solution_id, view, skill_id, section }, sid) => {
|
|
3672
3676
|
const base = `/deploy/solutions/${solution_id}`;
|
|
3673
|
-
if (skill_id)
|
|
3677
|
+
if (skill_id) {
|
|
3678
|
+
const r = await get(`${base}/skills/${skill_id}`, sid);
|
|
3679
|
+
// OPEN-8: a single skill def can be 50KB+ and truncate at the output cap.
|
|
3680
|
+
// `section` slices it to one field (dotted paths ok, e.g. intents.supported)
|
|
3681
|
+
// so agents can page a big skill instead of grepping a truncated file.
|
|
3682
|
+
if (section) {
|
|
3683
|
+
const skill = r?.skill || r?.definition || r || {};
|
|
3684
|
+
const val = String(section).split(".").reduce((o, k) => (o == null ? undefined : o[k]), skill);
|
|
3685
|
+
return {
|
|
3686
|
+
ok: true, solution_id, skill_id, section, [section]: val,
|
|
3687
|
+
_note: `Sliced to '${section}'. Omit 'section' for the full skill; ateam_show_skill_minimal gives the slim authoring view.`,
|
|
3688
|
+
};
|
|
3689
|
+
}
|
|
3690
|
+
return r;
|
|
3691
|
+
}
|
|
3674
3692
|
const paths = {
|
|
3675
3693
|
definition: `${base}/definition`,
|
|
3676
3694
|
skills: `${base}/skills`,
|