@awesomate/hosting-mcp 0.20.7 → 0.20.8

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/dist/index.js CHANGED
@@ -40572,11 +40572,12 @@ async function knowledgeAgents(config3, args) {
40572
40572
  if (args.goal) {
40573
40573
  const draft = await hubPost(config3, "/api/knowledge/agents/draft", { goal: args.goal });
40574
40574
  if (!draft.proposal) return { error: "draft_failed", detail: draft };
40575
- const created = await hubPost(config3, "/api/knowledge/agents", draft.proposal);
40576
- return { ...created, test_questions: draft.test_questions ?? [], status_note: "Created as a private DRAFT: test it, then publish when the user approves." };
40575
+ const body = { ...draft.proposal, ...args.audience ? { audience: args.audience } : {} };
40576
+ const created = await hubPost(config3, "/api/knowledge/agents", body);
40577
+ return { ...created, test_questions: draft.test_questions ?? [], status_note: `Created as a private DRAFT serving audience '${args.audience ?? "private"}': test it, then publish when the user approves.` };
40577
40578
  }
40578
40579
  if (!args.name) return { error: "name (or goal) is required for create" };
40579
- return await hubPost(config3, "/api/knowledge/agents", { name: args.name });
40580
+ return await hubPost(config3, "/api/knowledge/agents", { name: args.name, ...args.audience ? { audience: args.audience } : {} });
40580
40581
  }
40581
40582
  if (args.action === "publish") {
40582
40583
  if (!args.agentId) return { error: "agentId is required for publish" };
@@ -41658,6 +41659,7 @@ server.registerTool(
41658
41659
  agentId: external_exports.string().max(64).optional().describe("get/publish/test: agent_id from list"),
41659
41660
  name: external_exports.string().max(80).optional().describe("create: blank draft with this name"),
41660
41661
  goal: external_exports.string().max(2e3).optional().describe("create: describe the agent and AI drafts it from the account content"),
41662
+ audience: external_exports.enum(["private", "internal", "public"]).optional().describe("create: who the agent serves \u2014 'public' for anything customers or a website will talk to (it then answers from sources marked public ONLY), 'internal' for the team, 'private' (default) for the owner's own tools. Widening later is a publish, so choose now."),
41661
41663
  message: external_exports.string().max(4e3).optional().describe("test: the question to ask the draft"),
41662
41664
  sessionId: external_exports.string().max(128).optional().describe("test: keep follow-ups in one thread")
41663
41665
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@awesomate/hosting-mcp",
3
- "version": "0.20.7",
3
+ "version": "0.20.8",
4
4
  "description": "Awesomate MCP server — lets Claude manage your Awesomate WordPress hosting, plan, limits, n8n automations, and build Node/static apps + databases",
5
5
  "license": "UNLICENSED",
6
6
  "type": "module",
@@ -62,7 +62,7 @@ platform's answer beats anything you remember.
62
62
  | Instant search with facet counts (find WHAT is in there: moments, pages, datasets; free) | `awesomate_knowledge_search` |
63
63
  | Ask a question → verified answer + numbered sources (accepts the same facet `filters` to ask within a slice) | `awesomate_knowledge_ask` |
64
64
  | Agent persona / fallback message / model tier — get & set (the single workspace default) | `awesomate_knowledge_agent` |
65
- | Agent BUILDER: list / get / create (AI-drafted from their content, saved as a private draft) / test the draft / publish (explicit approval first) | `awesomate_knowledge_agents` |
65
+ | Agent BUILDER: list / get / create (AI-drafted from their content, saved as a private draft; pass `audience:'public'` for anything customers will talk to — it then answers from sources marked public ONLY) / test the draft / publish (explicit approval first) | `awesomate_knowledge_agents` |
66
66
  | People, places, topics: list / name / hide / merge / alias suggestions / re-run resolution | `awesomate_knowledge_people` |
67
67
  | Business-data warehouse: `metrics` / `datasets` / `query` / `imports` — answer quantitative questions from their own imported business data (query is free-form but read-only) | `awesomate_knowledge_data` |
68
68
  | Refresh these skills from the latest package | `awesomate_skill_update` |
@@ -83,10 +83,20 @@ before a customer sees it. Show the citations.
83
83
 
84
84
  ## 5. Draft the agent
85
85
 
86
- `awesomate_knowledge_agents {action:'create', goal}` — describe what the agent
87
- is for and the platform drafts instructions, scope, tone and test questions
88
- from the account's own content. It saves as a **private draft**; nothing is
89
- live and nothing is lost.
86
+ `awesomate_knowledge_agents {action:'create', goal, audience}` — describe what
87
+ the agent is for and the platform drafts instructions, scope, tone and test
88
+ questions from the account's own content. It saves as a **private draft**;
89
+ nothing is live and nothing is lost.
90
+
91
+ **`audience` is the retrieval ceiling, and it is enforced.** `public` for
92
+ anything customers or a website will talk to: the agent then answers from
93
+ sources marked public ONLY, whatever key runs it. `internal` for the team
94
+ (internal + public sources). `private` (the default) for the owner's own
95
+ tools. A source's own visibility is set at upload (`visibility` on
96
+ `awesomate_knowledge_upload` / `sources add`) or in the hub Library; a public
97
+ agent over a library with nothing marked public answers nothing — say so
98
+ before building, and get the owner to mark the customer-facing sources public
99
+ first. Widening an agent later is a publish, so choose now.
90
100
 
91
101
  Then `{action:'test', agentId, message}` — free and unmetered, and the right
92
102
  way to check behaviour. Test the awkward cases: something out of scope, a