klamdo-mcp 1.4.3 → 1.4.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.
package/dist/http.d.ts CHANGED
@@ -2,13 +2,11 @@
2
2
  /**
3
3
  * Klamdo MCP Server — Streamable HTTP transport
4
4
  *
5
- * Runs as a hosted service on mark-mini-s, exposed via Cloudflare Tunnel at:
6
- * https://mcp.klamdo.app
5
+ * Endpoint: POST https://mcp.klamdo.app/mcp
6
+ * Auth: Authorization: Bearer <klamdo-api-key>
7
+ * Get key: https://klamdo.app/profile
7
8
  *
8
- * Each request is stateless. API key is read from Authorization: Bearer <key> header.
9
- * Users get their key from https://klamdo.app/profile
10
- *
11
- * Smithery URL: https://mcp.klamdo.app/mcp
9
+ * Each request is stateless. API key is read from the Authorization header.
12
10
  */
13
11
  export {};
14
12
  //# sourceMappingURL=http.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../src/http.ts"],"names":[],"mappings":";AACA;;;;;;;;;;GAUG"}
1
+ {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../src/http.ts"],"names":[],"mappings":";AACA;;;;;;;;GAQG"}
package/dist/http.js CHANGED
@@ -3,13 +3,11 @@
3
3
  /**
4
4
  * Klamdo MCP Server — Streamable HTTP transport
5
5
  *
6
- * Runs as a hosted service on mark-mini-s, exposed via Cloudflare Tunnel at:
7
- * https://mcp.klamdo.app
6
+ * Endpoint: POST https://mcp.klamdo.app/mcp
7
+ * Auth: Authorization: Bearer <klamdo-api-key>
8
+ * Get key: https://klamdo.app/profile
8
9
  *
9
- * Each request is stateless. API key is read from Authorization: Bearer <key> header.
10
- * Users get their key from https://klamdo.app/profile
11
- *
12
- * Smithery URL: https://mcp.klamdo.app/mcp
10
+ * Each request is stateless. API key is read from the Authorization header.
13
11
  */
14
12
  Object.defineProperty(exports, "__esModule", { value: true });
15
13
  const index_js_1 = require("@modelcontextprotocol/sdk/server/index.js");
@@ -37,7 +35,7 @@ async function readBody(req) {
37
35
  });
38
36
  }
39
37
  function createMcpServer(apiKey) {
40
- const server = new index_js_1.Server({ name: "klamdo", version: "1.4.0" }, { capabilities: { tools: {}, resources: {} } });
38
+ const server = new index_js_1.Server({ name: "klamdo", version: "1.4.4" }, { capabilities: { tools: {}, resources: {} } });
41
39
  (0, tools_js_1.registerHandlers)(server, () => apiKey);
42
40
  return server;
43
41
  }
@@ -46,7 +44,7 @@ const httpServer = (0, http_1.createServer)(async (req, res) => {
46
44
  // Health check
47
45
  if (req.method === "GET" && url.pathname === "/health") {
48
46
  res.writeHead(200, { "Content-Type": "application/json" });
49
- res.end(JSON.stringify({ ok: true, service: "klamdo-mcp", version: "1.4.0" }));
47
+ res.end(JSON.stringify({ ok: true, service: "klamdo-mcp", version: "1.4.4" }));
50
48
  return;
51
49
  }
52
50
  // CORS preflight
@@ -99,7 +97,7 @@ const httpServer = (0, http_1.createServer)(async (req, res) => {
99
97
  res.writeHead(200, { "Content-Type": "application/json" });
100
98
  res.end(JSON.stringify({
101
99
  service: "Klamdo MCP Server",
102
- version: "1.4.0",
100
+ version: "1.4.4",
103
101
  mcpEndpoint: "/mcp",
104
102
  docs: "https://klamdo.app/answers",
105
103
  getApiKey: "https://klamdo.app/profile"
package/dist/http.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"http.js","sourceRoot":"","sources":["../src/http.ts"],"names":[],"mappings":";;AACA;;;;;;;;;;GAUG;;AAEH,wEAAmE;AACnE,0FAAmG;AACnG,+BAA+E;AAC/E,yCAA8C;AAE9C,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,MAAM,EAAE,EAAE,CAAC,CAAC;AACtD,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,WAAW,CAAC;AAE7C,SAAS,aAAa,CAAC,GAAoB;IACzC,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC;IAChD,IAAI,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC;QAAE,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAC5D,oEAAoE;IACpE,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IACzC,IAAI,OAAO,OAAO,KAAK,QAAQ;QAAE,OAAO,OAAO,CAAC,IAAI,EAAE,CAAC;IACvD,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,KAAK,UAAU,QAAQ,CAAC,GAAoB;IAC1C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,GAAG,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAa,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;QACtD,GAAG,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QACpD,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC1B,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,eAAe,CAAC,MAAc;IACrC,MAAM,MAAM,GAAG,IAAI,iBAAM,CACvB,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,EACpC,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,CAC/C,CAAC;IACF,IAAA,2BAAgB,EAAC,MAAM,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC;IACvC,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,GAAG,IAAA,mBAAY,EAAC,KAAK,EAAE,GAAoB,EAAE,GAAmB,EAAE,EAAE;IAClF,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,EAAE,UAAU,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;IAElE,eAAe;IACf,IAAI,GAAG,CAAC,MAAM,KAAK,KAAK,IAAI,GAAG,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QACvD,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC;QAC3D,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;QAC/E,OAAO;IACT,CAAC;IAED,iBAAiB;IACjB,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAC7B,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE;YACjB,6BAA6B,EAAE,GAAG;YAClC,8BAA8B,EAAE,oBAAoB;YACpD,8BAA8B,EAAE,wDAAwD;SACzF,CAAC,CAAC;QACH,GAAG,CAAC,GAAG,EAAE,CAAC;QACV,OAAO;IACT,CAAC;IAED,eAAe;IACf,IAAI,GAAG,CAAC,QAAQ,KAAK,MAAM,EAAE,CAAC;QAC5B,GAAG,CAAC,SAAS,CAAC,6BAA6B,EAAE,GAAG,CAAC,CAAC;QAClD,GAAG,CAAC,SAAS,CAAC,8BAA8B,EAAE,wDAAwD,CAAC,CAAC;QAExG,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;QAElC,gEAAgE;QAChE,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE;gBACjB,cAAc,EAAE,kBAAkB;gBAClC,kBAAkB,EAAE,kDAAkD;aACvE,CAAC,CAAC;YACH,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC;gBACrB,KAAK,EAAE,iBAAiB;gBACxB,OAAO,EAAE,gDAAgD;aAC1D,CAAC,CAAC,CAAC;YACJ,OAAO;QACT,CAAC;QAED,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,GAAG,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YAErE,8CAA8C;YAC9C,MAAM,SAAS,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;YAC1C,MAAM,SAAS,GAAG,IAAI,iDAA6B,CAAC;gBAClD,kBAAkB,EAAE,SAAS,CAAC,iBAAiB;aAChD,CAAC,CAAC;YAEH,MAAM,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YAEnC,MAAM,SAAS,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QAC1F,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;gBACrB,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC;gBAC3D,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;YAC7E,CAAC;QACH,CAAC;QACD,OAAO;IACT,CAAC;IAED,yBAAyB;IACzB,IAAI,GAAG,CAAC,QAAQ,KAAK,GAAG,IAAI,GAAG,CAAC,QAAQ,KAAK,EAAE,EAAE,CAAC;QAChD,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC;QAC3D,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC;YACrB,OAAO,EAAE,mBAAmB;YAC5B,OAAO,EAAE,OAAO;YAChB,WAAW,EAAE,MAAM;YACnB,IAAI,EAAE,4BAA4B;YAClC,SAAS,EAAE,4BAA4B;SACxC,CAAC,CAAC,CAAC;QACJ,OAAO;IACT,CAAC;IAED,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC;IAC3D,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC;AAClD,CAAC,CAAC,CAAC;AAEH,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE;IACjC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,yCAAyC,IAAI,IAAI,IAAI,QAAQ,CAAC,CAAC;AACtF,CAAC,CAAC,CAAC;AAEH,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;IAC7B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,mCAAmC,GAAG,IAAI,CAAC,CAAC;IACjE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"http.js","sourceRoot":"","sources":["../src/http.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -23,7 +23,7 @@ if (!API_KEY) {
23
23
  process.stderr.write("[klamdo-mcp] Warning: KLAMDO_API_KEY is not set. Set it in your MCP client config.\n");
24
24
  }
25
25
  async function main() {
26
- const server = new index_js_1.Server({ name: "klamdo", version: "1.4.0" }, { capabilities: { tools: {}, resources: {} } });
26
+ const server = new index_js_1.Server({ name: "klamdo", version: "1.4.4" }, { capabilities: { tools: {}, resources: {} } });
27
27
  (0, tools_js_1.registerHandlers)(server, () => API_KEY);
28
28
  const transport = new stdio_js_1.StdioServerTransport();
29
29
  await server.connect(transport);
package/dist/tools.js CHANGED
@@ -486,7 +486,7 @@ function registerHandlers(server, getApiKey) {
486
486
  {
487
487
  uri: "klamdo://docs",
488
488
  mimeType: "text/plain",
489
- text: `# Klamdo MCP Server v1.4.1\n\nTools: generate_image, generate_video, upload_start_frame, check_job, get_account, list_jobs, list_packages, create_package, get_package, get_package_manifest\n\nHTTP endpoint: https://mcp.klamdo.app/mcp\nstdio: npx klamdo-mcp (set KLAMDO_API_KEY env var)\n\nImage/video workflow:\n1. upload_start_frame({ imageUrl: "https://..." }) → assetId\n2. generate_video({ prompt: "...", startFrameAssetId: "asset_xxx" }) → jobId\n3. check_job({ jobId: "job_xxx" }) → status + download URL\n\nPackage workflow:\n1. list_packages({ accessibleOnly: true })\n2. create_package({ packageType: "coaching-brand", prompt: "Create a coaching launch package for my offer" })\n3. get_package({ packageId: "pkg_xxx" })\n4. get_package_manifest({ packageId: "pkg_xxx" })\n\nGet your API key at https://klamdo.app/profile\nSee current plans and credits at https://klamdo.app/pricing\nSource: https://github.com/klamdo-app/klamdo-mcp\n`
489
+ text: `# Klamdo MCP Server v1.4.4\n\nTools: generate_image, generate_video, upload_start_frame, check_job, get_account, list_jobs, list_packages, create_package, get_package, get_package_manifest\n\nHTTP endpoint: https://mcp.klamdo.app/mcp\nstdio: npx klamdo-mcp (set KLAMDO_API_KEY env var)\n\nImage/video workflow:\n1. upload_start_frame({ imageUrl: "https://..." }) → assetId\n2. generate_video({ prompt: "...", startFrameAssetId: "asset_xxx" }) → jobId\n3. check_job({ jobId: "job_xxx" }) → status + download URL\n\nPackage workflow:\n1. list_packages({ accessibleOnly: true })\n2. create_package({ packageType: "coaching-brand", prompt: "Create a coaching launch package for my offer" })\n3. get_package({ packageId: "pkg_xxx" })\n4. get_package_manifest({ packageId: "pkg_xxx" })\n\nGet your API key at https://klamdo.app/profile\nSee current plans and credits at https://klamdo.app/pricing\nSource: https://github.com/klamdo-app/klamdo-mcp\n`
490
490
  }
491
491
  ]
492
492
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "klamdo-mcp",
3
- "version": "1.4.3",
3
+ "version": "1.4.4",
4
4
  "description": "MCP server for Klamdo — AI content generation plus agentic package orchestration for coaches and creator-founders. Generate media, create packages, and hand structured deliverables to downstream AI agents.",
5
5
  "main": "dist/index.js",
6
6
  "bin": {
package/smithery.yaml CHANGED
@@ -1,16 +1,19 @@
1
- name: Klamdo — AI Content for Coaches & Creators
1
+ name: Klamdo — AI Content Engine for Creators and Agents
2
2
  description: |
3
3
  Generate identity-locked 4K images and 5-second vertical videos from a single
4
- reference photo. Built for coaches, consultants, and founder-creators who need
5
- consistent personal brand content without filming.
4
+ reference photo or connect your AI agent and generate full content packages:
5
+ scripts, captions, images, video, voiceover, ebook outlines, slide decks, and
6
+ landing page copy, all returned as a typed manifest your agent can act on.
6
7
 
7
- Tools: generate_image, generate_video, check_job, get_account, list_jobs
8
+ Tools: generate_image, generate_video, upload_start_frame, check_job,
9
+ get_account, list_jobs, list_packages, create_package, get_package,
10
+ get_package_manifest
8
11
 
9
- Requires a Klamdo API key — get yours free at https://klamdo.app/profile
12
+ Requires a Klamdo API key — get yours at https://klamdo.app/profile
10
13
 
11
- version: "1.2.1"
14
+ version: "1.4.4"
12
15
  homepage: https://klamdo.app
13
- documentationUrl: https://klamdo.app/answers
16
+ documentationUrl: https://github.com/klamdo-app/klamdo-mcp
14
17
  iconUrl: https://klamdo.app/favicon.ico
15
18
 
16
19
  startCommand:
package/src/http.ts CHANGED
@@ -2,13 +2,11 @@
2
2
  /**
3
3
  * Klamdo MCP Server — Streamable HTTP transport
4
4
  *
5
- * Runs as a hosted service on mark-mini-s, exposed via Cloudflare Tunnel at:
6
- * https://mcp.klamdo.app
5
+ * Endpoint: POST https://mcp.klamdo.app/mcp
6
+ * Auth: Authorization: Bearer <klamdo-api-key>
7
+ * Get key: https://klamdo.app/profile
7
8
  *
8
- * Each request is stateless. API key is read from Authorization: Bearer <key> header.
9
- * Users get their key from https://klamdo.app/profile
10
- *
11
- * Smithery URL: https://mcp.klamdo.app/mcp
9
+ * Each request is stateless. API key is read from the Authorization header.
12
10
  */
13
11
 
14
12
  import { Server } from "@modelcontextprotocol/sdk/server/index.js";
@@ -39,7 +37,7 @@ async function readBody(req: IncomingMessage): Promise<Buffer> {
39
37
 
40
38
  function createMcpServer(apiKey: string): Server {
41
39
  const server = new Server(
42
- { name: "klamdo", version: "1.4.0" },
40
+ { name: "klamdo", version: "1.4.4" },
43
41
  { capabilities: { tools: {}, resources: {} } }
44
42
  );
45
43
  registerHandlers(server, () => apiKey);
@@ -52,7 +50,7 @@ const httpServer = createServer(async (req: IncomingMessage, res: ServerResponse
52
50
  // Health check
53
51
  if (req.method === "GET" && url.pathname === "/health") {
54
52
  res.writeHead(200, { "Content-Type": "application/json" });
55
- res.end(JSON.stringify({ ok: true, service: "klamdo-mcp", version: "1.4.0" }));
53
+ res.end(JSON.stringify({ ok: true, service: "klamdo-mcp", version: "1.4.4" }));
56
54
  return;
57
55
  }
58
56
 
@@ -113,7 +111,7 @@ const httpServer = createServer(async (req: IncomingMessage, res: ServerResponse
113
111
  res.writeHead(200, { "Content-Type": "application/json" });
114
112
  res.end(JSON.stringify({
115
113
  service: "Klamdo MCP Server",
116
- version: "1.4.0",
114
+ version: "1.4.4",
117
115
  mcpEndpoint: "/mcp",
118
116
  docs: "https://klamdo.app/answers",
119
117
  getApiKey: "https://klamdo.app/profile"
package/src/index.ts CHANGED
@@ -28,7 +28,7 @@ if (!API_KEY) {
28
28
 
29
29
  async function main() {
30
30
  const server = new Server(
31
- { name: "klamdo", version: "1.4.0" },
31
+ { name: "klamdo", version: "1.4.4" },
32
32
  { capabilities: { tools: {}, resources: {} } }
33
33
  );
34
34
 
package/src/tools.ts CHANGED
@@ -598,7 +598,7 @@ export function registerHandlers(server: Server, getApiKey: () => string) {
598
598
  {
599
599
  uri: "klamdo://docs",
600
600
  mimeType: "text/plain",
601
- text: `# Klamdo MCP Server v1.4.1\n\nTools: generate_image, generate_video, upload_start_frame, check_job, get_account, list_jobs, list_packages, create_package, get_package, get_package_manifest\n\nHTTP endpoint: https://mcp.klamdo.app/mcp\nstdio: npx klamdo-mcp (set KLAMDO_API_KEY env var)\n\nImage/video workflow:\n1. upload_start_frame({ imageUrl: "https://..." }) → assetId\n2. generate_video({ prompt: "...", startFrameAssetId: "asset_xxx" }) → jobId\n3. check_job({ jobId: "job_xxx" }) → status + download URL\n\nPackage workflow:\n1. list_packages({ accessibleOnly: true })\n2. create_package({ packageType: "coaching-brand", prompt: "Create a coaching launch package for my offer" })\n3. get_package({ packageId: "pkg_xxx" })\n4. get_package_manifest({ packageId: "pkg_xxx" })\n\nGet your API key at https://klamdo.app/profile\nSee current plans and credits at https://klamdo.app/pricing\nSource: https://github.com/klamdo-app/klamdo-mcp\n`
601
+ text: `# Klamdo MCP Server v1.4.4\n\nTools: generate_image, generate_video, upload_start_frame, check_job, get_account, list_jobs, list_packages, create_package, get_package, get_package_manifest\n\nHTTP endpoint: https://mcp.klamdo.app/mcp\nstdio: npx klamdo-mcp (set KLAMDO_API_KEY env var)\n\nImage/video workflow:\n1. upload_start_frame({ imageUrl: "https://..." }) → assetId\n2. generate_video({ prompt: "...", startFrameAssetId: "asset_xxx" }) → jobId\n3. check_job({ jobId: "job_xxx" }) → status + download URL\n\nPackage workflow:\n1. list_packages({ accessibleOnly: true })\n2. create_package({ packageType: "coaching-brand", prompt: "Create a coaching launch package for my offer" })\n3. get_package({ packageId: "pkg_xxx" })\n4. get_package_manifest({ packageId: "pkg_xxx" })\n\nGet your API key at https://klamdo.app/profile\nSee current plans and credits at https://klamdo.app/pricing\nSource: https://github.com/klamdo-app/klamdo-mcp\n`
602
602
  }
603
603
  ]
604
604
  };