@opennous/mcp 0.57.0 → 0.58.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.
- package/package.json +1 -1
- package/src/server.js +27 -1
package/package.json
CHANGED
package/src/server.js
CHANGED
|
@@ -95,7 +95,7 @@ export function createServer() {
|
|
|
95
95
|
// keeps the surface locked to these seven — a stray non-primitive registration is
|
|
96
96
|
// dropped, not exposed. See docs/revenue-plugin/README.md §2–3.
|
|
97
97
|
const PLUGIN_TOOLS = new Set([
|
|
98
|
-
"record", "record_insight", "get_context", "get_account", "query", "score", "whoami",
|
|
98
|
+
"record", "record_insight", "get_context", "get_account", "query", "score", "whoami", "set_icp",
|
|
99
99
|
]);
|
|
100
100
|
const _tool = server.tool.bind(server);
|
|
101
101
|
const tool = (name, ...rest) => {
|
|
@@ -420,6 +420,32 @@ export function createServer() {
|
|
|
420
420
|
}
|
|
421
421
|
);
|
|
422
422
|
|
|
423
|
+
// ===========================================================================
|
|
424
|
+
// TOOL: set_icp — POST /v2/foundations/icp
|
|
425
|
+
// Establish/replace the workspace's ICP (the scoring model). ICP setup happens
|
|
426
|
+
// entirely in onboarding: the agent authors the buyer definition + scoring rules
|
|
427
|
+
// and writes them here; the engine compiles the model that `score` reads.
|
|
428
|
+
// ===========================================================================
|
|
429
|
+
tool(
|
|
430
|
+
"set_icp",
|
|
431
|
+
"Set (or replace) this workspace's ICP — the scoring model every account is judged against. Pass " +
|
|
432
|
+
"the full ICP as markdown (body_md): who the ideal customer is, plus the scoring rules (a base, " +
|
|
433
|
+
"persona weights, firmographic weights, observed-signal boosts/cuts, and hard disqualifiers). The " +
|
|
434
|
+
"engine compiles it into the model `score`, get_context, and the reports use. Use this during " +
|
|
435
|
+
"onboarding to establish the ICP for a fresh workspace — whoami's setup.has_icp tells you whether " +
|
|
436
|
+
"one exists. Writing replaces the prior ICP, so if one already exists, read/confirm before " +
|
|
437
|
+
"overwriting. Authoring guide + required sections: the onboard skill's icp-authoring reference.",
|
|
438
|
+
{
|
|
439
|
+
body_md: z.string().describe("the full ICP as markdown — the buyer definition + the scoring rules (see the icp-authoring reference for the required sections)"),
|
|
440
|
+
},
|
|
441
|
+
async ({ body_md }) => {
|
|
442
|
+
const r = await post("/v2/foundations/icp", { body_md });
|
|
443
|
+
return { content: [{ type: "text", text:
|
|
444
|
+
`ICP saved${r.version ? ` (v${r.version})` : ""} — the scoring model is compiling from it. ` +
|
|
445
|
+
`score / get_context now judge accounts against this ICP.` }] };
|
|
446
|
+
}
|
|
447
|
+
);
|
|
448
|
+
|
|
423
449
|
// ===========================================================================
|
|
424
450
|
// TOOL: query — POST /v2/query
|
|
425
451
|
// Retrieve a corpus of activity across many people. You do the analysis.
|