@botuyo/mcp 0.5.1 → 0.6.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.
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,109 @@
1
+ import { describe, it, expect } from 'vitest';
2
+ import { auditAgentFamilyHandler } from '../audit_agent_family.js';
3
+ /** MockClient that returns a canned response per path and records the paths hit. */
4
+ class MockClient {
5
+ responses;
6
+ paths = [];
7
+ constructor(responses) {
8
+ this.responses = responses;
9
+ }
10
+ async get(path) {
11
+ this.paths.push(path);
12
+ return this.responses[path] ?? { success: true, data: null };
13
+ }
14
+ async post() {
15
+ return { success: true };
16
+ }
17
+ async put() {
18
+ return { success: true };
19
+ }
20
+ async delete() {
21
+ return { success: true };
22
+ }
23
+ }
24
+ const familyWithIssues = {
25
+ _id: 'fam1',
26
+ slug: 'demo',
27
+ name: 'Demo',
28
+ entryVariantKey: 'default',
29
+ base: {},
30
+ variants: [
31
+ {
32
+ key: 'default',
33
+ label: 'Default',
34
+ overrides: {
35
+ voice: { profile: 'Voz Inexistente' }, // invalid → error
36
+ identity: { customInstructions: 'x'.repeat(2500) }, // > 2000 → warning
37
+ model: 'gemini-2.0-flash', // deprecated → warning
38
+ widgetConfig: {
39
+ avatarUrl: 'https://cdn.example.com/a.png', // ok
40
+ avatar2dAnimations: { happy: 'agents/emotions/x.png' } // not a URL → warning
41
+ }
42
+ // no memoryNamespace + single variant → info
43
+ }
44
+ }
45
+ ]
46
+ };
47
+ describe('audit_agent_family', () => {
48
+ it('flags invalid voice, prompt truncation, deprecated model, non-URL avatar, and memoryNamespace default', async () => {
49
+ const client = new MockClient({ '/api/v1/mcp/agent-families/fam1': { success: true, data: familyWithIssues } });
50
+ const res = (await auditAgentFamilyHandler(client, { familyId: 'fam1' }));
51
+ expect(client.paths).toContain('/api/v1/mcp/agent-families/fam1');
52
+ const codes = res.reports[0].issues.map((i) => i.code);
53
+ expect(codes).toContain('invalid_voice');
54
+ expect(codes).toContain('prompt_truncated');
55
+ expect(codes).toContain('deprecated_model');
56
+ expect(codes).toContain('non_url_avatar');
57
+ expect(codes).toContain('memory_default_slug');
58
+ expect(res.totals.errors).toBeGreaterThanOrEqual(1);
59
+ });
60
+ it('flags a valid-but-non-canonical voice (display name) as info, not error', async () => {
61
+ const fam = {
62
+ _id: 'f3',
63
+ slug: 'hilton',
64
+ name: 'Hilton',
65
+ entryVariantKey: 'default',
66
+ base: { memoryNamespace: 'hilton' },
67
+ variants: [{ key: 'default', label: 'D', overrides: { voice: { profile: 'Profesional Femenina' } } }]
68
+ };
69
+ const client = new MockClient({ '/api/v1/mcp/agent-families/f3': { success: true, data: fam } });
70
+ const res = (await auditAgentFamilyHandler(client, { familyId: 'f3' }));
71
+ const codes = res.reports[0].issues.map((i) => i.code);
72
+ expect(codes).toContain('noncanonical_voice');
73
+ expect(codes).not.toContain('invalid_voice');
74
+ });
75
+ it('reports zero issues for a clean family (canonical voice id, short prompt, URL avatar, memoryNamespace set)', async () => {
76
+ const clean = {
77
+ _id: 'f2',
78
+ slug: 'clean',
79
+ name: 'Clean',
80
+ entryVariantKey: 'default',
81
+ base: { memoryNamespace: 'clean' },
82
+ variants: [
83
+ {
84
+ key: 'default',
85
+ label: 'D',
86
+ overrides: {
87
+ voice: { profile: 'kore' },
88
+ identity: { customInstructions: 'short' },
89
+ widgetConfig: { avatarUrl: 'https://cdn.example.com/a.png' }
90
+ }
91
+ }
92
+ ]
93
+ };
94
+ const client = new MockClient({ '/api/v1/mcp/agent-families/f2': { success: true, data: clean } });
95
+ const res = (await auditAgentFamilyHandler(client, { familyId: 'f2' }));
96
+ expect(res.reports[0].issues).toHaveLength(0);
97
+ });
98
+ it('audits every family in the tenant when familyId is omitted', async () => {
99
+ const client = new MockClient({
100
+ '/api/v1/mcp/agent-families': { success: true, data: [{ _id: 'fam1' }] },
101
+ '/api/v1/mcp/agent-families/fam1': { success: true, data: familyWithIssues }
102
+ });
103
+ const res = (await auditAgentFamilyHandler(client, {}));
104
+ expect(client.paths).toContain('/api/v1/mcp/agent-families');
105
+ expect(client.paths).toContain('/api/v1/mcp/agent-families/fam1');
106
+ expect(res.audited).toBe(1);
107
+ });
108
+ });
109
+ //# sourceMappingURL=audit_agent_family.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"audit_agent_family.spec.js","sourceRoot":"","sources":["../../../src/tools/__tests__/audit_agent_family.spec.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * audit_agent_family — READ-ONLY config-quality audit for agent families.
3
+ *
4
+ * For each variant's effective config (base deep-merged with the variant overrides) it
5
+ * reports issues without changing anything:
6
+ * - invalid voice profile (not a known id / display name / Gemini name) [error]
7
+ * - non-canonical voice profile (valid but not stored as the id form) [info]
8
+ * - customInstructions over the 2000-char limit (silently truncated) [warning]
9
+ * - avatar values that are not http(s)/data URLs (won't render) [warning]
10
+ * - deprecated AI model id [warning]
11
+ * - family-of-one with no memoryNamespace (re-materialize → slug) [info]
12
+ *
13
+ * Rules come from @botuyo/contracts (single source of truth shared with the backend).
14
+ */
15
+ import type { Tool } from '@modelcontextprotocol/sdk/types.js';
16
+ import type { BotuyoApiClient } from '../client.js';
17
+ export declare const AUDIT_AGENT_FAMILY_TOOL: Tool;
18
+ export declare function auditAgentFamilyHandler(client: BotuyoApiClient, args: Record<string, unknown>): Promise<unknown>;
@@ -0,0 +1,136 @@
1
+ /**
2
+ * audit_agent_family — READ-ONLY config-quality audit for agent families.
3
+ *
4
+ * For each variant's effective config (base deep-merged with the variant overrides) it
5
+ * reports issues without changing anything:
6
+ * - invalid voice profile (not a known id / display name / Gemini name) [error]
7
+ * - non-canonical voice profile (valid but not stored as the id form) [info]
8
+ * - customInstructions over the 2000-char limit (silently truncated) [warning]
9
+ * - avatar values that are not http(s)/data URLs (won't render) [warning]
10
+ * - deprecated AI model id [warning]
11
+ * - family-of-one with no memoryNamespace (re-materialize → slug) [info]
12
+ *
13
+ * Rules come from @botuyo/contracts (single source of truth shared with the backend).
14
+ */
15
+ import { resolveVoiceProfile, isDeprecatedModel, normalizeModel } from '@botuyo/contracts';
16
+ const BASE = '/api/v1/mcp/agent-families';
17
+ /** PromptComposer.sanitizeCustomInstructions truncates customInstructions beyond this. */
18
+ const MAX_CUSTOM_INSTRUCTIONS = 2000;
19
+ export const AUDIT_AGENT_FAMILY_TOOL = {
20
+ name: 'audit_agent_family',
21
+ description: 'Read-only audit of agent families for config-quality issues (changes NOTHING). For each variant\'s ' +
22
+ 'effective config (base deep-merged with overrides) it reports: invalid or non-canonical voice profiles, ' +
23
+ 'customInstructions over the 2000-char limit (silently truncated at runtime), avatar values that are not ' +
24
+ 'http(s) URLs, deprecated AI models, and family-of-one members whose memoryNamespace will default to the ' +
25
+ 'slug on re-materialize. Pass `familyId` to audit one family, or omit it to audit EVERY family in the ' +
26
+ 'current tenant. Available to any authenticated role.',
27
+ inputSchema: {
28
+ type: 'object',
29
+ properties: {
30
+ familyId: { type: 'string', description: 'Audit one family by id. Omit to audit all families in the tenant.' }
31
+ }
32
+ }
33
+ };
34
+ const asObj = (v) => (v && typeof v === 'object' && !Array.isArray(v) ? v : {});
35
+ const asStr = (v) => (typeof v === 'string' ? v : undefined);
36
+ export async function auditAgentFamilyHandler(client, args) {
37
+ const familyId = asStr(args.familyId);
38
+ const families = familyId ? [await fetchFamily(client, familyId)] : await fetchAll(client);
39
+ const reports = families.filter((f) => !!f).map(auditFamily);
40
+ const totals = reports.reduce((a, r) => ({
41
+ errors: a.errors + r.summary.errors,
42
+ warnings: a.warnings + r.summary.warnings,
43
+ infos: a.infos + r.summary.infos
44
+ }), { errors: 0, warnings: 0, infos: 0 });
45
+ return { success: true, audited: reports.length, totals, reports };
46
+ }
47
+ async function fetchFamily(client, id) {
48
+ const res = (await client.get(`${BASE}/${id}`));
49
+ if (!res)
50
+ return null;
51
+ const data = res.data;
52
+ return data ?? res;
53
+ }
54
+ async function fetchAll(client) {
55
+ const res = (await client.get(BASE));
56
+ const list = Array.isArray(res) ? res : Array.isArray(res?.data) ? res.data : [];
57
+ return Promise.all(list.map((f) => fetchFamily(client, String(f._id))));
58
+ }
59
+ /** Shallow merge with one level of nesting for the audited object fields. */
60
+ function mergeConfig(base, overrides) {
61
+ const out = { ...base, ...overrides };
62
+ for (const k of ['identity', 'voice', 'widgetConfig']) {
63
+ if (base[k] || overrides[k])
64
+ out[k] = { ...asObj(base[k]), ...asObj(overrides[k]) };
65
+ }
66
+ return out;
67
+ }
68
+ function auditFamily(fam) {
69
+ const issues = [];
70
+ const base = asObj(fam.base);
71
+ const variants = Array.isArray(fam.variants) ? fam.variants : [];
72
+ // Family-of-one with no memoryNamespace → re-materialize will set it to the slug.
73
+ if (variants.length === 1) {
74
+ const eff = mergeConfig(base, asObj(variants[0]?.overrides));
75
+ if (!asStr(eff.memoryNamespace)) {
76
+ issues.push({
77
+ scope: `variant:${variants[0]?.key ?? '?'}`,
78
+ severity: 'info',
79
+ code: 'memory_default_slug',
80
+ message: `No memoryNamespace set → re-materialize will default it to the slug "${fam.slug ?? '?'}" (moves the memory bucket off the per-agent default).`
81
+ });
82
+ }
83
+ }
84
+ for (const v of variants) {
85
+ auditConfig(mergeConfig(base, asObj(v.overrides)), `variant:${v.key ?? '?'}`, issues);
86
+ }
87
+ const summary = {
88
+ errors: issues.filter((i) => i.severity === 'error').length,
89
+ warnings: issues.filter((i) => i.severity === 'warning').length,
90
+ infos: issues.filter((i) => i.severity === 'info').length
91
+ };
92
+ return { familyId: fam._id, slug: fam.slug, name: fam.name, variants: variants.length, issues, summary };
93
+ }
94
+ function auditConfig(cfg, scope, issues) {
95
+ // Voice profile
96
+ const profile = asStr(asObj(cfg.voice).profile);
97
+ if (profile) {
98
+ const resolved = resolveVoiceProfile(profile);
99
+ if (!resolved) {
100
+ issues.push({ scope, severity: 'error', code: 'invalid_voice', message: `voice.profile "${profile}" is not a known voice (id / display name / Gemini name).` });
101
+ }
102
+ else if (resolved.id !== profile) {
103
+ issues.push({ scope, severity: 'info', code: 'noncanonical_voice', message: `voice.profile "${profile}" is valid but not canonical → normalize to id "${resolved.id}".` });
104
+ }
105
+ }
106
+ // Custom instructions length
107
+ const ci = asStr(asObj(cfg.identity).customInstructions);
108
+ if (ci && ci.length > MAX_CUSTOM_INSTRUCTIONS) {
109
+ issues.push({
110
+ scope,
111
+ severity: 'warning',
112
+ code: 'prompt_truncated',
113
+ message: `identity.customInstructions is ${ci.length} chars; the runtime truncates at ${MAX_CUSTOM_INSTRUCTIONS} (loses ${ci.length - MAX_CUSTOM_INSTRUCTIONS} chars).`
114
+ });
115
+ }
116
+ // Avatar values must be http(s)/data URLs
117
+ const wc = asObj(cfg.widgetConfig);
118
+ const candidates = [];
119
+ for (const k of ['avatarUrl', 'logoUrl', 'avatar3dUrl'])
120
+ if (wc[k] !== undefined)
121
+ candidates.push([`widgetConfig.${k}`, wc[k]]);
122
+ for (const [emotion, val] of Object.entries(asObj(wc.avatar2dAnimations)))
123
+ candidates.push([`avatar2dAnimations.${emotion}`, val]);
124
+ for (const [path, val] of candidates) {
125
+ const s = asStr(val);
126
+ if (s && !/^(https?:\/\/|data:)/i.test(s)) {
127
+ issues.push({ scope, severity: 'warning', code: 'non_url_avatar', message: `${path} = "${s}" is not an http(s) URL → it will not render on a widget domain.` });
128
+ }
129
+ }
130
+ // Deprecated AI model
131
+ const model = asStr(cfg.model);
132
+ if (model && isDeprecatedModel(model)) {
133
+ issues.push({ scope, severity: 'warning', code: 'deprecated_model', message: `model "${model}" is deprecated → use "${normalizeModel(model)}".` });
134
+ }
135
+ }
136
+ //# sourceMappingURL=audit_agent_family.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"audit_agent_family.js","sourceRoot":"","sources":["../../src/tools/audit_agent_family.ts"],"names":[],"mappings":"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"}
@@ -32,6 +32,7 @@ import { UPLOAD_AGENT_MEDIA_TOOL, uploadAgentMediaHandler } from './upload_agent
32
32
  import { LIST_AGENT_VERSIONS_TOOL, listAgentVersionsHandler } from './list_agent_versions.js';
33
33
  import { RESTORE_AGENT_VERSION_TOOL, restoreAgentVersionHandler } from './restore_agent_version.js';
34
34
  import { LIST_AGENT_FAMILIES_TOOL, listAgentFamiliesHandler, GET_AGENT_FAMILY_TOOL, getAgentFamilyHandler, CREATE_AGENT_FAMILY_TOOL, createAgentFamilyHandler, UPDATE_FAMILY_BASE_TOOL, updateFamilyBaseHandler, ADD_FAMILY_VARIANT_TOOL, addFamilyVariantHandler, UPDATE_FAMILY_VARIANT_TOOL, updateFamilyVariantHandler, REMOVE_FAMILY_VARIANT_TOOL, removeFamilyVariantHandler, PUBLISH_AGENT_FAMILY_TOOL, publishAgentFamilyHandler, DELETE_AGENT_FAMILY_TOOL, deleteAgentFamilyHandler, EXPORT_AGENT_FAMILY_TOOL, exportAgentFamilyHandler, IMPORT_AGENT_FAMILY_TOOL, importAgentFamilyHandler } from './agent_families.js';
35
+ import { AUDIT_AGENT_FAMILY_TOOL, auditAgentFamilyHandler } from './audit_agent_family.js';
35
36
  export const ALL_TOOLS = [
36
37
  LIST_AGENTS_TOOL,
37
38
  GET_AGENT_TOOL,
@@ -74,6 +75,7 @@ export const ALL_TOOLS = [
74
75
  DELETE_AGENT_FAMILY_TOOL,
75
76
  EXPORT_AGENT_FAMILY_TOOL,
76
77
  IMPORT_AGENT_FAMILY_TOOL,
78
+ AUDIT_AGENT_FAMILY_TOOL,
77
79
  ];
78
80
  export const TOOL_HANDLERS = {
79
81
  list_agents: listAgentsHandler,
@@ -117,5 +119,6 @@ export const TOOL_HANDLERS = {
117
119
  delete_agent_family: deleteAgentFamilyHandler,
118
120
  export_agent_family: exportAgentFamilyHandler,
119
121
  import_agent_family: importAgentFamilyHandler,
122
+ audit_agent_family: auditAgentFamilyHandler,
120
123
  };
121
124
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@botuyo/mcp",
3
- "version": "0.5.1",
3
+ "version": "0.6.0",
4
4
  "description": "BotUyo MCP Server — create and manage AI agents via Model Context Protocol",
5
5
  "keywords": [
6
6
  "mcp",