@ateam-ai/mcp 0.3.3 → 0.3.4

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.
Files changed (2) hide show
  1. package/package.json +1 -1
  2. package/src/tools.js +40 -43
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ateam-ai/mcp",
3
- "version": "0.3.3",
3
+ "version": "0.3.4",
4
4
  "mcpName": "io.github.ariekogan/ateam-mcp",
5
5
  "description": "A-Team MCP Server — build, validate, and deploy multi-agent solutions from any AI environment",
6
6
  "type": "module",
package/src/tools.js CHANGED
@@ -872,14 +872,14 @@ export const tools = [
872
872
  },
873
873
 
874
874
  // ═══════════════════════════════════════════════════════════════════
875
- // RELEASE MANAGEMENT — promote, rollback, version listing
875
+ // RELEASE MANAGEMENT — checkpoint, rollback, version listing
876
876
  // ═══════════════════════════════════════════════════════════════════
877
877
 
878
878
  {
879
879
  name: "ateam_github_promote",
880
880
  core: true,
881
881
  description:
882
- "Promote a dev version to main (production). By default promotes the latest dev tag. Optionally specify a specific dev tag to promote. Creates a prod-YYYY-MM-DD-NNN tag on main.",
882
+ "Create a checkpoint (safe point) on the current main branch. Tags the current state with safe-YYYY-MM-DD-NNN so you can rollback to it later. Use this before risky changes or when the solution is in a known-good state.",
883
883
  inputSchema: {
884
884
  type: "object",
885
885
  properties: {
@@ -887,9 +887,9 @@ export const tools = [
887
887
  type: "string",
888
888
  description: "The solution ID",
889
889
  },
890
- tag: {
890
+ label: {
891
891
  type: "string",
892
- description: "Optional: specific dev tag to promote (e.g., 'dev-2026-03-11-005'). If omitted, promotes the latest dev tag.",
892
+ description: "Optional: human-readable label for this checkpoint (e.g., 'before refactor', 'v2 stable')",
893
893
  },
894
894
  },
895
895
  required: ["solution_id"],
@@ -899,7 +899,7 @@ export const tools = [
899
899
  name: "ateam_github_rollback",
900
900
  core: true,
901
901
  description:
902
- "Rollback main (production) to a previous production tag. Resets main branch to the specified prod tag commit. ⚠️ DESTRUCTIVE — use with caution. Use ateam_github_list_versions to find available production tags first.",
902
+ "Rollback main branch to a previous checkpoint (safe-* tag). Resets main to the specified checkpoint commit. ⚠️ DESTRUCTIVE — use with caution. Use ateam_github_list_versions to find available checkpoints first.",
903
903
  inputSchema: {
904
904
  type: "object",
905
905
  properties: {
@@ -909,7 +909,7 @@ export const tools = [
909
909
  },
910
910
  tag: {
911
911
  type: "string",
912
- description: "Required: production tag to rollback to (e.g., 'prod-2026-03-10-001')",
912
+ description: "Required: checkpoint tag to rollback to (e.g., 'safe-2026-03-11-001')",
913
913
  },
914
914
  },
915
915
  required: ["solution_id", "tag"],
@@ -919,7 +919,7 @@ export const tools = [
919
919
  name: "ateam_github_list_versions",
920
920
  core: true,
921
921
  description:
922
- "List all available dev version tags for a solution. Shows tag name, date, counter, and commit SHA. Use before promoting to see what's available.",
922
+ "List all available checkpoints (safe-* tags) for a solution. Shows tag name, date, counter, and commit SHA. Use before rollback to see available safe points.",
923
923
  inputSchema: {
924
924
  type: "object",
925
925
  properties: {
@@ -1083,19 +1083,18 @@ const handlers = {
1083
1083
  steps: [
1084
1084
  { step: 1, action: "Learn", description: "Get the spec and study examples", tools: ["ateam_get_spec", "ateam_get_examples"] },
1085
1085
  { step: 2, action: "Build & Run", description: "Define your solution + skills + connector code, then validate, deploy, and health-check in one call. Include mcp_store with connector source code on the first deploy.", tools: ["ateam_build_and_run"] },
1086
- { step: 3, action: "Version", description: "Every deploy auto-pushes to the 'dev' branch on GitHub. The repo (tenant--solution-id) is the source of truth for connector code.", tools: ["ateam_github_status", "ateam_github_log"] },
1087
- { step: 4, action: "Iterate", description: "Edit connector code via ateam_github_patch (commits to dev), then redeploy with ateam_build_and_run(github:true). For skill definition changes, use ateam_patch (also pushes to dev).", tools: ["ateam_github_patch", "ateam_build_and_run", "ateam_patch"] },
1086
+ { step: 3, action: "Version", description: "Every deploy auto-pushes to main on GitHub. The repo (tenant--solution-id) is the source of truth for connector code.", tools: ["ateam_github_status", "ateam_github_log"] },
1087
+ { step: 4, action: "Iterate", description: "Edit connector code via ateam_github_patch (commits to main), then redeploy with ateam_build_and_run(github:true). For skill definition changes, use ateam_patch (also pushes to main).", tools: ["ateam_github_patch", "ateam_build_and_run", "ateam_patch"] },
1088
1088
  { step: 5, action: "Test & Debug", description: "Test the decision pipeline or full execution, then diagnose with logs and metrics. For voice-enabled solutions, use ateam_test_voice to simulate phone conversations.", tools: ["ateam_test_pipeline", "ateam_test_skill", "ateam_test_voice", "ateam_get_execution_logs", "ateam_get_metrics"] },
1089
- { step: 6, action: "Promote", description: "When stable, promote the dev branch to main (production). This creates a production tag and merges dev → main.", tools: ["ateam_github_promote"] },
1089
+ { step: 6, action: "Checkpoint", description: "When solution is in a good state, create a checkpoint (safe point). You can rollback to any checkpoint if something breaks.", tools: ["ateam_github_promote", "ateam_github_list_versions"] },
1090
1090
  ],
1091
1091
  },
1092
1092
  branching: {
1093
- _important: "ALL changes go to the 'dev' branch. The 'main' branch is production only updated via explicit promote.",
1094
- dev: "Staging branch. Every build_and_run, patch, and github_patch commits here automatically.",
1095
- main: "Production branch. Updated ONLY via ateam_github_promote(). First deploy also pushes to main as baseline.",
1096
- workflow: "Build iterate on dev test promote to main when stable.",
1097
- promote: "ateam_github_promote(solution_id) merges latest dev tag to main, creates prod tag.",
1098
- rollback: "ateam_github_rollback(solution_id) — reverts main to previous production tag.",
1093
+ _important: "Single-branch model: ALL changes go directly to 'main'. Use checkpoints (safe-* tags) as safe rollback points.",
1094
+ main: "The only branch. All deploys, patches, and github_patches commit here automatically. This IS the live running system.",
1095
+ checkpoints: "ateam_github_promote(solution_id) creates a safe-YYYY-MM-DD-NNN tag on current main HEAD. Use before risky changes.",
1096
+ rollback: "ateam_github_rollback(solution_id, tag) reverts main to a previous checkpoint tag.",
1097
+ workflow: "Build iterate on main test checkpoint when stable → continue iterating.",
1099
1098
  },
1100
1099
  first_questions: [
1101
1100
  { id: "goal", question: "What do you want your Team to accomplish?", type: "text" },
@@ -1104,31 +1103,29 @@ const handlers = {
1104
1103
  { id: "security", question: "What environment constraints?", type: "enum", options: ["sandbox", "controlled", "regulated"] },
1105
1104
  ],
1106
1105
  github_tools: {
1107
- _note: "Version control for solutions. ALL operations target the 'dev' branch. Promote to 'main' (production) explicitly.",
1108
- tools: ["ateam_github_push", "ateam_github_pull", "ateam_github_status", "ateam_github_read", "ateam_github_patch", "ateam_github_log", "ateam_github_promote", "ateam_github_rollback"],
1106
+ _note: "Version control for solutions. Single-branch model everything on 'main'. Use checkpoints as safe rollback points.",
1107
+ tools: ["ateam_github_push", "ateam_github_pull", "ateam_github_status", "ateam_github_read", "ateam_github_patch", "ateam_github_log", "ateam_github_promote", "ateam_github_rollback", "ateam_github_list_versions"],
1109
1108
  repo_structure: {
1110
1109
  "solution.json": "Full solution definition",
1111
1110
  "skills/{skill-id}/skill.json": "Individual skill definitions",
1112
1111
  "connectors/{connector-id}/server.js": "Connector MCP server code",
1113
1112
  "connectors/{connector-id}/package.json": "Connector dependencies",
1114
1113
  },
1115
- branches: {
1116
- dev: "All changes land here (auto-push on build/patch). This is the working branch.",
1117
- main: "Production snapshot. Only updated via ateam_github_promote(). Safe rollback target.",
1118
- },
1114
+ branch: "main — the only branch. All changes land here directly.",
1115
+ checkpoints: "safe-YYYY-MM-DD-NNN tags mark safe rollback points. Create with ateam_github_promote().",
1119
1116
  iteration_workflow: {
1120
- code_changes: "ateam_github_patch (commits to dev) → ateam_build_and_run(github:true) (pulls from dev, redeploys)",
1121
- definition_changes: "ateam_patch (updates + redeploys + auto-pushes to dev)",
1122
- first_deploy: "Must include mcp_store — this creates the GitHub repo with both dev and main branches",
1123
- promote: "ateam_github_promote(solution_id) — when solution is stable, merge dev main",
1117
+ code_changes: "ateam_github_patch (commits to main) → ateam_build_and_run(github:true) (pulls from main, redeploys)",
1118
+ definition_changes: "ateam_patch (updates + redeploys + auto-pushes to main)",
1119
+ first_deploy: "Must include mcp_store — this creates the GitHub repo",
1120
+ checkpoint: "ateam_github_promote(solution_id) — tag current state as a safe rollback point",
1124
1121
  },
1125
1122
  when_to_use_what: {
1126
- ateam_github_patch: "Edit connector source code on dev branch (server.js, utils, package.json, UI assets)",
1127
- ateam_patch: "Edit skill definitions (intents, tools, policy) — auto-pushes to dev",
1128
- "ateam_build_and_run(github:true)": "Redeploy solution pulling latest connector code from dev branch",
1123
+ ateam_github_patch: "Edit connector source code on main (server.js, utils, package.json, UI assets)",
1124
+ ateam_patch: "Edit skill definitions (intents, tools, policy) — auto-pushes to main",
1125
+ "ateam_build_and_run(github:true)": "Redeploy solution pulling latest connector code from main",
1129
1126
  "ateam_build_and_run(mcp_store)": "First deploy or when you want to pass connector code inline",
1130
- ateam_github_promote: "Promote dev main when stable (creates production tag)",
1131
- ateam_github_rollback: "Revert main to previous production tag",
1127
+ ateam_github_promote: "Create a checkpoint (safe-* tag) use before risky changes",
1128
+ ateam_github_rollback: "Revert main to a previous checkpoint",
1132
1129
  },
1133
1130
  },
1134
1131
  advanced_tools: {
@@ -1173,15 +1170,15 @@ const handlers = {
1173
1170
  "Use ateam_github_patch + ateam_build_and_run(github:true) for connector code changes after first deploy",
1174
1171
  "Study the connector example (ateam_get_examples type='connector') before writing connector code",
1175
1172
  "Ask discovery questions if goal unclear",
1176
- "ALL changes go to the dev branch remind user to ateam_github_promote() when ready for production",
1177
- "After every build/patch, tell the user: 'Deployed to Core ✅ | Pushed to dev branch | Promote to main: ateam_github_promote()'",
1173
+ "ALL changes go directly to mainsuggest ateam_github_promote() to create a checkpoint before risky changes",
1174
+ "After every build/patch, tell the user: 'Deployed to Core ✅ | Pushed to main | Create checkpoint: ateam_github_promote(solution_id)'",
1178
1175
  ],
1179
1176
  never: [
1180
1177
  "Call validate + deploy + health separately when ateam_build_and_run does it in one step",
1181
1178
  "Call update + redeploy separately when ateam_patch does it in one step",
1182
1179
  "Dump raw spec unless requested",
1183
1180
  "Write connector code that starts a web server — connectors MUST use stdio transport",
1184
- "Assume changes are on main they are always on dev until explicitly promoted",
1181
+ "Mention dev branch there is no dev branch, everything is on main",
1185
1182
  ],
1186
1183
  },
1187
1184
  }),
@@ -1405,7 +1402,7 @@ const handlers = {
1405
1402
  return {
1406
1403
  ok: true,
1407
1404
  solution_id: solution.id,
1408
- branch: 'dev',
1405
+ branch: 'main',
1409
1406
  phases,
1410
1407
  deploy: {
1411
1408
  skills_deployed: deploy.import?.skills || [],
@@ -1417,8 +1414,8 @@ const handlers = {
1417
1414
  ...(test_result && { test_result }),
1418
1415
  ...(github_result && !github_result.error && !github_result.skipped && { github: github_result }),
1419
1416
  ...(validation.warnings?.length > 0 && { validation_warnings: validation.warnings }),
1420
- _status: '✅ Deployed to Core + pushed to dev branch.',
1421
- _next: 'To promote to production (main branch): ateam_github_promote(solution_id)',
1417
+ _status: '✅ Deployed to Core + pushed to main.',
1418
+ _next: 'Create a checkpoint before making more changes: ateam_github_promote(solution_id)',
1422
1419
  };
1423
1420
  },
1424
1421
 
@@ -1485,7 +1482,7 @@ const handlers = {
1485
1482
  }
1486
1483
  }
1487
1484
 
1488
- // Phase 4: Auto-push to dev branch (non-blocking)
1485
+ // Phase 4: Auto-push to main branch (non-blocking)
1489
1486
  let github_result;
1490
1487
  try {
1491
1488
  github_result = await post(
@@ -1503,14 +1500,14 @@ const handlers = {
1503
1500
  return {
1504
1501
  ok: true,
1505
1502
  solution_id,
1506
- branch: 'dev',
1503
+ branch: 'main',
1507
1504
  phases,
1508
1505
  patch: patchResult,
1509
1506
  redeploy: redeployResult,
1510
1507
  ...(test_result && { test_result }),
1511
1508
  ...(github_result && !github_result.error && !github_result.skipped && { github: github_result }),
1512
- _status: '✅ Patched + redeployed + pushed to dev branch.',
1513
- _next: 'To promote to production (main branch): ateam_github_promote(solution_id)',
1509
+ _status: '✅ Patched + redeployed + pushed to main.',
1510
+ _next: 'Create a checkpoint before making more changes: ateam_github_promote(solution_id)',
1514
1511
  };
1515
1512
  },
1516
1513
 
@@ -1656,8 +1653,8 @@ const handlers = {
1656
1653
  return get(`/deploy/solutions/${solution_id}/github/log${qs}`, sid);
1657
1654
  },
1658
1655
 
1659
- ateam_github_promote: async ({ solution_id, tag }, sid) =>
1660
- post(`/deploy/solutions/${solution_id}/promote`, tag ? { tag } : {}, sid),
1656
+ ateam_github_promote: async ({ solution_id, label }, sid) =>
1657
+ post(`/deploy/solutions/${solution_id}/promote`, label ? { label } : {}, sid),
1661
1658
 
1662
1659
  ateam_github_rollback: async ({ solution_id, tag }, sid) =>
1663
1660
  post(`/deploy/solutions/${solution_id}/rollback`, { tag }, sid),