@ateam-ai/mcp 0.2.7 → 0.2.9
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 +43 -7
package/package.json
CHANGED
package/src/tools.js
CHANGED
|
@@ -63,7 +63,7 @@ export const tools = [
|
|
|
63
63
|
name: "ateam_get_spec",
|
|
64
64
|
core: true,
|
|
65
65
|
description:
|
|
66
|
-
"Get the A-Team specification — schemas, validation rules, system tools, agent guides, and templates. Start here after bootstrap to understand how to build skills and solutions.",
|
|
66
|
+
"Get the A-Team specification — schemas, validation rules, system tools, agent guides, and templates. Start here after bootstrap to understand how to build skills and solutions. Use 'section' to get just one part of the skill spec (much smaller than the full spec). Use 'search' to find specific fields or concepts across the spec.",
|
|
67
67
|
inputSchema: {
|
|
68
68
|
type: "object",
|
|
69
69
|
properties: {
|
|
@@ -71,7 +71,18 @@ export const tools = [
|
|
|
71
71
|
type: "string",
|
|
72
72
|
enum: ["overview", "skill", "solution", "enums", "connector-multi-user"],
|
|
73
73
|
description:
|
|
74
|
-
"What to fetch: 'overview' = API overview + endpoints, 'skill' = full skill spec, 'solution' = full solution spec, 'enums' = all enum values, 'connector-multi-user' = multi-user connector guide
|
|
74
|
+
"What to fetch: 'overview' = API overview + endpoints, 'skill' = full skill spec, 'solution' = full solution spec, 'enums' = all enum values, 'connector-multi-user' = multi-user connector guide",
|
|
75
|
+
},
|
|
76
|
+
section: {
|
|
77
|
+
type: "string",
|
|
78
|
+
enum: ["engine", "tools", "intents", "policy", "triggers", "connectors", "role", "template", "guide"],
|
|
79
|
+
description:
|
|
80
|
+
"Optional: get just one section of the skill spec (only works with topic='skill'). Sections: 'engine' = model/reasoning/planner optimization/bootstrap tools, 'tools' = tool definitions/meta tools, 'intents' = intents/problem/scenarios, 'policy' = access control/grants/workflows, 'triggers' = automation triggers, 'connectors' = connector linking/channels, 'role' = persona/goals, 'template' = minimal quick start, 'guide' = build steps/common mistakes",
|
|
81
|
+
},
|
|
82
|
+
search: {
|
|
83
|
+
type: "string",
|
|
84
|
+
description:
|
|
85
|
+
"Optional: filter the spec to only sections containing this search term. Works with any topic. Example: search='bootstrap' returns only fields/sections mentioning 'bootstrap'.",
|
|
75
86
|
},
|
|
76
87
|
},
|
|
77
88
|
required: ["topic"],
|
|
@@ -237,7 +248,22 @@ export const tools = [
|
|
|
237
248
|
name: "ateam_patch",
|
|
238
249
|
core: true,
|
|
239
250
|
description:
|
|
240
|
-
"
|
|
251
|
+
"Surgically update ANY field in a skill or solution definition, redeploy, and optionally re-test — all in one step.\n\n" +
|
|
252
|
+
"SUPPORTED OPERATIONS:\n" +
|
|
253
|
+
"1. Scalar (dot notation): { \"problem.statement\": \"new value\", \"role.persona\": \"You are...\" }\n" +
|
|
254
|
+
"2. Deep nested: { \"intents.thresholds.accept\": 0.9, \"policy.escalation.enabled\": true }\n" +
|
|
255
|
+
"3. Array push: { \"tools_push\": [{ name: \"new_tool\", description: \"...\" }] }\n" +
|
|
256
|
+
"4. Array delete: { \"tools_delete\": [\"tool_name\"] }\n" +
|
|
257
|
+
"5. Array update: { \"tools_update\": [{ name: \"existing_tool\", description: \"updated\" }] }\n" +
|
|
258
|
+
"6. Replace whole section: { \"role\": { persona: \"...\", goals: [...] } }\n\n" +
|
|
259
|
+
"EXAMPLES:\n" +
|
|
260
|
+
"- Change persona: updates: { \"role.persona\": \"You are a friendly assistant\" }\n" +
|
|
261
|
+
"- Add a guardrail: updates: { \"policy.guardrails.never_push\": [\"Never share passwords\"] }\n" +
|
|
262
|
+
"- Update problem: updates: { \"problem.statement\": \"...\", \"problem.goals\": [\"goal1\"] }\n" +
|
|
263
|
+
"- Add a tool: updates: { \"tools_push\": [{ name: \"conn.tool\", description: \"...\", inputs: [...], output: {...} }] }\n" +
|
|
264
|
+
"- Change intent: updates: { \"intents.supported_update\": [{ id: \"i1\", description: \"new desc\" }] }\n" +
|
|
265
|
+
"- Force redeploy: updates: { \"_force_redeploy\": true }\n\n" +
|
|
266
|
+
"Use target='skill' + skill_id for skill fields. Use target='solution' for solution-level fields (linked_skills, platform_connectors, ui_plugins).",
|
|
241
267
|
inputSchema: {
|
|
242
268
|
type: "object",
|
|
243
269
|
properties: {
|
|
@@ -248,16 +274,18 @@ export const tools = [
|
|
|
248
274
|
target: {
|
|
249
275
|
type: "string",
|
|
250
276
|
enum: ["solution", "skill"],
|
|
251
|
-
description: "What to update: 'solution'
|
|
277
|
+
description: "What to update: 'solution' for solution definition, 'skill' for skill definition fields (problem, role, intents, tools, policy, engine, scenarios, etc.)",
|
|
252
278
|
},
|
|
253
279
|
skill_id: {
|
|
254
280
|
type: "string",
|
|
255
|
-
description: "Required when target is 'skill'",
|
|
281
|
+
description: "Required when target is 'skill'. The skill ID to patch.",
|
|
256
282
|
},
|
|
257
283
|
updates: {
|
|
258
284
|
type: "object",
|
|
259
285
|
description:
|
|
260
|
-
"The update payload
|
|
286
|
+
"The update payload. Use dot notation for nested scalars (e.g. 'problem.statement': 'new value'). " +
|
|
287
|
+
"For arrays, use _push/_delete/_update suffixes (e.g. 'tools_push', 'tools_delete'). " +
|
|
288
|
+
"You can update ANY field in the skill definition: problem, role, intents, tools, policy, engine, scenarios, glossary, etc.",
|
|
261
289
|
},
|
|
262
290
|
test_message: {
|
|
263
291
|
type: "string",
|
|
@@ -1093,7 +1121,15 @@ const handlers = {
|
|
|
1093
1121
|
}
|
|
1094
1122
|
},
|
|
1095
1123
|
|
|
1096
|
-
ateam_get_spec: async ({ topic }, sid) =>
|
|
1124
|
+
ateam_get_spec: async ({ topic, section, search }, sid) => {
|
|
1125
|
+
let path = SPEC_PATHS[topic];
|
|
1126
|
+
const params = new URLSearchParams();
|
|
1127
|
+
if (section) params.set('section', section);
|
|
1128
|
+
if (search) params.set('search', search);
|
|
1129
|
+
const qs = params.toString();
|
|
1130
|
+
if (qs) path += `?${qs}`;
|
|
1131
|
+
return get(path, sid);
|
|
1132
|
+
},
|
|
1097
1133
|
|
|
1098
1134
|
ateam_get_workflows: async (_args, sid) => get("/spec/workflows", sid),
|
|
1099
1135
|
|