@clustr-ai/mcp-server 1.0.5 → 1.0.7

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
@@ -3,6 +3,8 @@ import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
3
3
  import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
4
4
  import { initClient } from "./client.js";
5
5
  import { registerImportContacts } from "./tools/import-contacts.js";
6
+ import { registerStartABMSearch } from "./tools/start-abm-search.js";
7
+ import { registerWhatsNew } from "./tools/whats-new.js";
6
8
  import { registerCreateTargetAccounts } from "./tools/create-target-accounts.js";
7
9
  import { registerListTargetAccounts } from "./tools/list-target-accounts.js";
8
10
  import { registerDeleteTargetAccount } from "./tools/delete-target-account.js";
@@ -19,7 +21,9 @@ const server = new McpServer({
19
21
  version: "1.0.0",
20
22
  });
21
23
  initClient();
24
+ registerWhatsNew(server);
22
25
  registerImportContacts(server);
26
+ registerStartABMSearch(server);
23
27
  registerSearchOpportunities(server);
24
28
  registerSearchCompanies(server);
25
29
  registerListConnectors(server);
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,4BAA4B,EAAE,MAAM,mCAAmC,CAAC;AACjF,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAC7E,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,2BAA2B,EAAE,MAAM,iCAAiC,CAAC;AAC9E,OAAO,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AACtE,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAC;AAC1E,OAAO,EAAE,+BAA+B,EAAE,MAAM,sCAAsC,CAAC;AAEvF,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC;IAC3B,IAAI,EAAE,QAAQ;IACd,OAAO,EAAE,OAAO;CACjB,CAAC,CAAC;AAEH,UAAU,EAAE,CAAC;AAEb,sBAAsB,CAAC,MAAM,CAAC,CAAC;AAC/B,2BAA2B,CAAC,MAAM,CAAC,CAAC;AACpC,uBAAuB,CAAC,MAAM,CAAC,CAAC;AAChC,sBAAsB,CAAC,MAAM,CAAC,CAAC;AAC/B,uBAAuB,CAAC,MAAM,CAAC,CAAC;AAChC,oBAAoB,CAAC,MAAM,CAAC,CAAC;AAC7B,gBAAgB,CAAC,MAAM,CAAC,CAAC;AACzB,yBAAyB,CAAC,MAAM,CAAC,CAAC;AAClC,+BAA+B,CAAC,MAAM,CAAC,CAAC;AACxC,4BAA4B,CAAC,MAAM,CAAC,CAAC;AACrC,0BAA0B,CAAC,MAAM,CAAC,CAAC;AACnC,2BAA2B,CAAC,MAAM,CAAC,CAAC;AAEpC,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;AAC7C,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,4BAA4B,EAAE,MAAM,mCAAmC,CAAC;AACjF,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAC7E,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,2BAA2B,EAAE,MAAM,iCAAiC,CAAC;AAC9E,OAAO,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AACtE,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAC;AAC1E,OAAO,EAAE,+BAA+B,EAAE,MAAM,sCAAsC,CAAC;AAEvF,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC;IAC3B,IAAI,EAAE,QAAQ;IACd,OAAO,EAAE,OAAO;CACjB,CAAC,CAAC;AAEH,UAAU,EAAE,CAAC;AAEb,gBAAgB,CAAC,MAAM,CAAC,CAAC;AACzB,sBAAsB,CAAC,MAAM,CAAC,CAAC;AAC/B,sBAAsB,CAAC,MAAM,CAAC,CAAC;AAC/B,2BAA2B,CAAC,MAAM,CAAC,CAAC;AACpC,uBAAuB,CAAC,MAAM,CAAC,CAAC;AAChC,sBAAsB,CAAC,MAAM,CAAC,CAAC;AAC/B,uBAAuB,CAAC,MAAM,CAAC,CAAC;AAChC,oBAAoB,CAAC,MAAM,CAAC,CAAC;AAC7B,gBAAgB,CAAC,MAAM,CAAC,CAAC;AACzB,yBAAyB,CAAC,MAAM,CAAC,CAAC;AAClC,+BAA+B,CAAC,MAAM,CAAC,CAAC;AACxC,4BAA4B,CAAC,MAAM,CAAC,CAAC;AACrC,0BAA0B,CAAC,MAAM,CAAC,CAAC;AACnC,2BAA2B,CAAC,MAAM,CAAC,CAAC;AAEpC,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;AAC7C,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
2
+ export declare function registerStartABMSearch(server: McpServer): void;
@@ -0,0 +1,30 @@
1
+ import { z } from "zod";
2
+ import { get, post, wrapToolHandler } from "../client.js";
3
+ const startSchema = {
4
+ company_name: z.string().describe("Name of the target company"),
5
+ company_linkedin_url: z
6
+ .string()
7
+ .describe("LinkedIn company page URL (must contain /company/)"),
8
+ countries: z
9
+ .array(z.string())
10
+ .optional()
11
+ .describe('Filter buyers by country (e.g. ["United States", "United Kingdom"])'),
12
+ completion_email: z
13
+ .string()
14
+ .optional()
15
+ .describe("Email to notify when the report is ready"),
16
+ };
17
+ const getLinkSchema = {
18
+ company_linkedin_url: z
19
+ .string()
20
+ .describe("LinkedIn company page URL of the existing ABM search"),
21
+ };
22
+ export function registerStartABMSearch(server) {
23
+ server.tool("start_abm_search", "Start an Account-Based Marketing (ABM) search for a target company. " +
24
+ "Returns a magic_link immediately — the link shows a processing page while the pipeline runs " +
25
+ "(typically 2-5 minutes) and auto-resolves to the full report when done. " +
26
+ "The magic link is deterministic: repeated calls for the same company return the same URL.", startSchema, wrapToolHandler((params) => post("/abm-search", params)));
27
+ server.tool("get_abm_search_link", "Retrieve the magic link for an existing ABM search without starting a new job. " +
28
+ "Use this when you want to share or re-fetch the link for a search that was already run.", getLinkSchema, wrapToolHandler(({ company_linkedin_url }) => get(`/abm-search?company_linkedin_url=${encodeURIComponent(company_linkedin_url)}`)));
29
+ }
30
+ //# sourceMappingURL=start-abm-search.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"start-abm-search.js","sourceRoot":"","sources":["../../src/tools/start-abm-search.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAE1D,MAAM,WAAW,GAAG;IAClB,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,4BAA4B,CAAC;IAC/D,oBAAoB,EAAE,CAAC;SACpB,MAAM,EAAE;SACR,QAAQ,CAAC,oDAAoD,CAAC;IACjE,SAAS,EAAE,CAAC;SACT,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;SACjB,QAAQ,EAAE;SACV,QAAQ,CAAC,qEAAqE,CAAC;IAClF,gBAAgB,EAAE,CAAC;SAChB,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,0CAA0C,CAAC;CACxD,CAAC;AAEF,MAAM,aAAa,GAAG;IACpB,oBAAoB,EAAE,CAAC;SACpB,MAAM,EAAE;SACR,QAAQ,CAAC,sDAAsD,CAAC;CACpE,CAAC;AAEF,MAAM,UAAU,sBAAsB,CAAC,MAAiB;IACtD,MAAM,CAAC,IAAI,CACT,kBAAkB,EAClB,sEAAsE;QACpE,8FAA8F;QAC9F,0EAA0E;QAC1E,2FAA2F,EAC7F,WAAW,EACX,eAAe,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC,CACzD,CAAC;IAEF,MAAM,CAAC,IAAI,CACT,qBAAqB,EACrB,iFAAiF;QAC/E,yFAAyF,EAC3F,aAAa,EACb,eAAe,CAAC,CAAC,EAAE,oBAAoB,EAAE,EAAE,EAAE,CAC3C,GAAG,CAAC,oCAAoC,kBAAkB,CAAC,oBAA8B,CAAC,EAAE,CAAC,CAC9F,CACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,2 @@
1
+ import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
2
+ export declare function registerWhatsNew(server: McpServer): void;
@@ -0,0 +1,46 @@
1
+ // Append an entry here every time a new tool or breaking change ships.
2
+ // Keep entries in reverse-chronological order (newest first).
3
+ const CHANGELOG = [
4
+ {
5
+ version: "1.1.0",
6
+ date: "2026-05-02",
7
+ changes: [
8
+ "NEW: start_abm_search — start an Account-Based Marketing search for any company and get a shareable magic link immediately. The link auto-resolves to the full report when the pipeline finishes.",
9
+ "NEW: get_abm_search_link — retrieve the magic link for an existing ABM search without re-running the pipeline.",
10
+ ],
11
+ },
12
+ {
13
+ version: "1.0.0",
14
+ date: "2026-04-01",
15
+ changes: [
16
+ "Initial release: import_contacts, search_opportunities, search_companies, list_connectors, get_network_stats, get_job_status, list_jobs, update_opportunity, list_opportunity_statuses, create_target_accounts, list_target_accounts, delete_target_account.",
17
+ ],
18
+ },
19
+ ];
20
+ const CURRENT_VERSION = CHANGELOG[0].version;
21
+ const UPGRADE_INSTRUCTIONS = "To upgrade: npm install -g @clustr-ai/mcp-server@latest " +
22
+ "(or re-run whatever install command you used originally, e.g. npx @clustr-ai/mcp-server)";
23
+ export function registerWhatsNew(server) {
24
+ server.tool("whats_new", `Show the Clustr MCP changelog and available tools. ` +
25
+ `Current version: ${CURRENT_VERSION}. ` +
26
+ `Call this to check whether a newer version with additional tools is available.`, {}, async () => {
27
+ const lines = [
28
+ `Clustr MCP Server — installed version: ${CURRENT_VERSION}`,
29
+ "",
30
+ "=== Changelog ===",
31
+ ];
32
+ for (const entry of CHANGELOG) {
33
+ lines.push(`\nv${entry.version} (${entry.date})`);
34
+ for (const change of entry.changes) {
35
+ lines.push(` • ${change}`);
36
+ }
37
+ }
38
+ lines.push("");
39
+ lines.push("=== Upgrade ===");
40
+ lines.push(UPGRADE_INSTRUCTIONS);
41
+ return {
42
+ content: [{ type: "text", text: lines.join("\n") }],
43
+ };
44
+ });
45
+ }
46
+ //# sourceMappingURL=whats-new.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"whats-new.js","sourceRoot":"","sources":["../../src/tools/whats-new.ts"],"names":[],"mappings":"AAEA,uEAAuE;AACvE,8DAA8D;AAC9D,MAAM,SAAS,GAA2D;IACxE;QACE,OAAO,EAAE,OAAO;QAChB,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE;YACP,mMAAmM;YACnM,gHAAgH;SACjH;KACF;IACD;QACE,OAAO,EAAE,OAAO;QAChB,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE;YACP,8PAA8P;SAC/P;KACF;CACF,CAAC;AAEF,MAAM,eAAe,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;AAE7C,MAAM,oBAAoB,GACxB,2DAA2D;IAC3D,0FAA0F,CAAC;AAE7F,MAAM,UAAU,gBAAgB,CAAC,MAAiB;IAChD,MAAM,CAAC,IAAI,CACT,WAAW,EACX,qDAAqD;QACnD,oBAAoB,eAAe,IAAI;QACvC,gFAAgF,EAClF,EAAE,EACF,KAAK,IAAI,EAAE;QACT,MAAM,KAAK,GAAa;YACtB,0CAA0C,eAAe,EAAE;YAC3D,EAAE;YACF,mBAAmB;SACpB,CAAC;QAEF,KAAK,MAAM,KAAK,IAAI,SAAS,EAAE,CAAC;YAC9B,KAAK,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,OAAO,KAAK,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC;YAClD,KAAK,MAAM,MAAM,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;gBACnC,KAAK,CAAC,IAAI,CAAC,OAAO,MAAM,EAAE,CAAC,CAAC;YAC9B,CAAC;QACH,CAAC;QAED,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACf,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAC9B,KAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;QAEjC,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;SAC7D,CAAC;IACJ,CAAC,CACF,CAAC;AACJ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@clustr-ai/mcp-server",
3
- "version": "1.0.5",
3
+ "version": "1.0.7",
4
4
  "description": "MCP server for the Clustr API — search referral opportunities, manage target accounts, and import contacts from AI assistants",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",