@contenthero/mcp 0.2.2 → 0.2.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/index.d.ts CHANGED
@@ -1,9 +1,16 @@
1
1
  #!/usr/bin/env node
2
2
  /**
3
- * ContentHero MCP server entry point (stdio transport).
3
+ * ContentHero MCP package entry point.
4
4
  *
5
- * Run by an MCP client (Claude Code, Claude Desktop, etc.) as a child process.
6
- * stdout is the protocol channel, so all logging goes to stderr.
5
+ * Dual-purpose:
6
+ * - As a CLI (the `contenthero-mcp` bin, run by Claude Code / Claude Desktop):
7
+ * boots the stdio server. stdout is the protocol channel, so logs go to stderr.
8
+ * - As a library (imported by an embedding host, e.g. the hosted OAuth MCP):
9
+ * re-exports registerTools / buildServer / the model helpers, with NO side
10
+ * effects. The stdio server only starts when this file is executed directly.
7
11
  */
8
- export {};
12
+ export { buildServer, registerTools } from './server.js';
13
+ export type { BuildServerOptions, RegisterToolsOptions, GetClient } from './server.js';
14
+ export { resolveModelEnums, fallbackModelEnums } from './models.js';
15
+ export type { ResolvedModelEnums, ModelEnum } from './models.js';
9
16
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA;;;;;GAKG"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA;;;;;;;;;GASG;AAMH,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AACxD,YAAY,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACtF,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AACnE,YAAY,EAAE,kBAAkB,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA"}
package/dist/index.js CHANGED
@@ -1,20 +1,32 @@
1
1
  #!/usr/bin/env node
2
2
  /**
3
- * ContentHero MCP server entry point (stdio transport).
3
+ * ContentHero MCP package entry point.
4
4
  *
5
- * Run by an MCP client (Claude Code, Claude Desktop, etc.) as a child process.
6
- * stdout is the protocol channel, so all logging goes to stderr.
5
+ * Dual-purpose:
6
+ * - As a CLI (the `contenthero-mcp` bin, run by Claude Code / Claude Desktop):
7
+ * boots the stdio server. stdout is the protocol channel, so logs go to stderr.
8
+ * - As a library (imported by an embedding host, e.g. the hosted OAuth MCP):
9
+ * re-exports registerTools / buildServer / the model helpers, with NO side
10
+ * effects. The stdio server only starts when this file is executed directly.
7
11
  */
12
+ import { pathToFileURL } from 'node:url';
8
13
  import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
9
14
  import { buildServer } from './server.js';
15
+ export { buildServer, registerTools } from './server.js';
16
+ export { resolveModelEnums, fallbackModelEnums } from './models.js';
10
17
  async function main() {
11
18
  const server = await buildServer();
12
19
  const transport = new StdioServerTransport();
13
20
  await server.connect(transport);
14
21
  console.error('ContentHero MCP server running on stdio');
15
22
  }
16
- main().catch((err) => {
17
- console.error('ContentHero MCP server failed to start:', err);
18
- process.exit(1);
19
- });
23
+ // Only boot the stdio server when this module is the process entry point (the
24
+ // `contenthero-mcp` bin). When imported as a library, this is skipped.
25
+ const invokedDirectly = !!process.argv[1] && import.meta.url === pathToFileURL(process.argv[1]).href;
26
+ if (invokedDirectly) {
27
+ main().catch((err) => {
28
+ console.error('ContentHero MCP server failed to start:', err);
29
+ process.exit(1);
30
+ });
31
+ }
20
32
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA;;;;;GAKG;AAEH,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAA;AAChF,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAEzC,KAAK,UAAU,IAAI;IACjB,MAAM,MAAM,GAAG,MAAM,WAAW,EAAE,CAAA;IAClC,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAA;IAC5C,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;IAC/B,OAAO,CAAC,KAAK,CAAC,yCAAyC,CAAC,CAAA;AAC1D,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;IACnB,OAAO,CAAC,KAAK,CAAC,yCAAyC,EAAE,GAAG,CAAC,CAAA;IAC7D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AACjB,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA;;;;;;;;;GASG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AACxC,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAA;AAChF,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAEzC,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAExD,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AAGnE,KAAK,UAAU,IAAI;IACjB,MAAM,MAAM,GAAG,MAAM,WAAW,EAAE,CAAA;IAClC,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAA;IAC5C,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;IAC/B,OAAO,CAAC,KAAK,CAAC,yCAAyC,CAAC,CAAA;AAC1D,CAAC;AAED,8EAA8E;AAC9E,uEAAuE;AACvE,MAAM,eAAe,GACnB,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;AAE9E,IAAI,eAAe,EAAE,CAAC;IACpB,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;QACnB,OAAO,CAAC,KAAK,CAAC,yCAAyC,EAAE,GAAG,CAAC,CAAA;QAC7D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC,CAAC,CAAA;AACJ,CAAC"}
package/dist/models.d.ts CHANGED
@@ -41,6 +41,13 @@ export interface ResolvedModelEnums {
41
41
  /** Maps each upscale modelId to its source media kind (image vs video). */
42
42
  upscaleContentType: Record<string, 'image' | 'video'>;
43
43
  }
44
+ /**
45
+ * The static fallback enums, with no discovery call. Used by hosts that resolve
46
+ * tool schemas without a single user API key (e.g. the hosted OAuth MCP, where
47
+ * there is no one user at registration time). The npm/stdio server still resolves
48
+ * the live catalog via `resolveModelEnums`.
49
+ */
50
+ export declare function fallbackModelEnums(): ResolvedModelEnums;
44
51
  /**
45
52
  * Build the three per-tool model enums from the live discovery catalog, falling
46
53
  * back to the static lists on any failure (missing key, network error, empty
@@ -1 +1 @@
1
- {"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../src/models.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAEnD,gFAAgF;AAChF,eAAO,MAAM,qBAAqB,gIAQxB,CAAA;AAEV,gFAAgF;AAChF,eAAO,MAAM,qBAAqB,4KAUxB,CAAA;AAEV,gFAAgF;AAChF,eAAO,MAAM,qBAAqB,6EAIxB,CAAA;AAEV,uEAAuE;AACvE,eAAO,MAAM,uBAAuB,yDAA0D,CAAA;AAE9F,wEAAwE;AACxE,eAAO,MAAM,wBAAwB,+DAAgE,CAAA;AAQrG,+DAA+D;AAC/D,MAAM,MAAM,SAAS,GAAG,CAAC,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC,CAAA;AAE7C,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,SAAS,CAAA;IAChB,KAAK,EAAE,SAAS,CAAA;IAChB,KAAK,EAAE,SAAS,CAAA;IAChB,OAAO,EAAE,SAAS,CAAA;IAClB,OAAO,EAAE,SAAS,CAAA;IAClB,2EAA2E;IAC3E,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,CAAA;CACtD;AAMD;;;;GAIG;AACH,wBAAsB,iBAAiB,CAAC,SAAS,EAAE,MAAM,WAAW,GAAG,OAAO,CAAC,kBAAkB,CAAC,CA2CjG;AAED;;;;;GAKG;AACH,eAAO,MAAM,WAAW,yGAUd,CAAA;AAEV,oFAAoF;AACpF,eAAO,MAAM,mBAAmB,uQACsO,CAAA;AAEtQ,oFAAoF;AACpF,eAAO,MAAM,oBAAoB,8UAC4S,CAAA;AAE7U,eAAO,MAAM,oBAAoB,yYACuW,CAAA;AAExY,eAAO,MAAM,oBAAoB,6JAC2H,CAAA;AAE5J,eAAO,MAAM,sBAAsB,yKACqI,CAAA;AAExK,eAAO,MAAM,uBAAuB,+MAC0K,CAAA"}
1
+ {"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../src/models.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAEnD,gFAAgF;AAChF,eAAO,MAAM,qBAAqB,gIAQxB,CAAA;AAEV,gFAAgF;AAChF,eAAO,MAAM,qBAAqB,4KAUxB,CAAA;AAEV,gFAAgF;AAChF,eAAO,MAAM,qBAAqB,6EAIxB,CAAA;AAEV,uEAAuE;AACvE,eAAO,MAAM,uBAAuB,yDAA0D,CAAA;AAE9F,wEAAwE;AACxE,eAAO,MAAM,wBAAwB,+DAAgE,CAAA;AAQrG,+DAA+D;AAC/D,MAAM,MAAM,SAAS,GAAG,CAAC,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC,CAAA;AAE7C,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,SAAS,CAAA;IAChB,KAAK,EAAE,SAAS,CAAA;IAChB,KAAK,EAAE,SAAS,CAAA;IAChB,OAAO,EAAE,SAAS,CAAA;IAClB,OAAO,EAAE,SAAS,CAAA;IAClB,2EAA2E;IAC3E,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,CAAA;CACtD;AAMD;;;;;GAKG;AACH,wBAAgB,kBAAkB,IAAI,kBAAkB,CASvD;AAED;;;;GAIG;AACH,wBAAsB,iBAAiB,CAAC,SAAS,EAAE,MAAM,WAAW,GAAG,OAAO,CAAC,kBAAkB,CAAC,CA2CjG;AAED;;;;;GAKG;AACH,eAAO,MAAM,WAAW,yGAUd,CAAA;AAEV,oFAAoF;AACpF,eAAO,MAAM,mBAAmB,uQACsO,CAAA;AAEtQ,oFAAoF;AACpF,eAAO,MAAM,oBAAoB,8UAC4S,CAAA;AAE7U,eAAO,MAAM,oBAAoB,yYACuW,CAAA;AAExY,eAAO,MAAM,oBAAoB,6JAC2H,CAAA;AAE5J,eAAO,MAAM,sBAAsB,yKACqI,CAAA;AAExK,eAAO,MAAM,uBAAuB,+MAC0K,CAAA"}
package/dist/models.js CHANGED
@@ -59,6 +59,22 @@ const UPSCALE_CONTENT_TYPE_FALLBACK = {
59
59
  function nonEmpty(ids, fallback) {
60
60
  return (ids.length > 0 ? ids : [...fallback]);
61
61
  }
62
+ /**
63
+ * The static fallback enums, with no discovery call. Used by hosts that resolve
64
+ * tool schemas without a single user API key (e.g. the hosted OAuth MCP, where
65
+ * there is no one user at registration time). The npm/stdio server still resolves
66
+ * the live catalog via `resolveModelEnums`.
67
+ */
68
+ export function fallbackModelEnums() {
69
+ return {
70
+ image: [...IMAGE_MODELS_FALLBACK],
71
+ video: [...VIDEO_MODELS_FALLBACK],
72
+ audio: [...AUDIO_MODELS_FALLBACK],
73
+ upscale: [...UPSCALE_MODELS_FALLBACK],
74
+ lipSync: [...LIP_SYNC_MODELS_FALLBACK],
75
+ upscaleContentType: { ...UPSCALE_CONTENT_TYPE_FALLBACK },
76
+ };
77
+ }
62
78
  /**
63
79
  * Build the three per-tool model enums from the live discovery catalog, falling
64
80
  * back to the static lists on any failure (missing key, network error, empty
@@ -1 +1 @@
1
- {"version":3,"file":"models.js","sourceRoot":"","sources":["../src/models.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"models.js","sourceRoot":"","sources":["../src/models.ts"],"names":[],"mappings":"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"}
package/dist/server.d.ts CHANGED
@@ -1,5 +1,6 @@
1
1
  /**
2
- * The ContentHero MCP server: intent-shaped tools over the @contenthero/sdk kernel.
2
+ * The ContentHero MCP tool surface: intent-shaped tools over the @contenthero/sdk
3
+ * kernel.
3
4
  *
4
5
  * generate_image - smart-wait, image models
5
6
  * generate_video - smart-wait, video models
@@ -14,18 +15,43 @@
14
15
  * get_generation_status - poll an image/video outputId to its final URLs
15
16
  * wait_for_generation - block until one or more outputIds finish (batch)
16
17
  * get_balance - credit balance + tier
18
+ * ... plus the content-pipeline, brand-kit-write, inspiration, brand-account,
19
+ * and connected-account tools.
20
+ *
21
+ * `registerTools(server, opts)` registers the whole surface against a backend
22
+ * resolved PER CALL via `opts.getClient(extra)`. The stdio/npm server passes a
23
+ * single env-configured client (identity is in the API key); the hosted OAuth
24
+ * server passes a factory that resolves a per-user client from the validated
25
+ * token's `extra.authInfo`. Tool schemas (incl. the per-tool model enums) are
26
+ * fixed at registration, so the model enums are supplied via `opts.models`.
17
27
  *
18
28
  * Intent-shaped generate tools rather than one generate_media: each operation
19
29
  * (generate / upscale / lip-sync) gets a tool whose schema only carries its own
20
- * fields, and per-tool modelId enums prevent cross-type model misuse. Image and
21
- * video share the async smart-wait lifecycle; audio shares almost no parameters
22
- * and runs synchronously.
30
+ * fields, and per-tool modelId enums prevent cross-type model misuse.
23
31
  */
24
32
  import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
25
33
  import { ContentHero } from '@contenthero/sdk';
34
+ import { type ResolvedModelEnums } from './models.js';
35
+ /** Resolve a per-call client. `extra` is the MCP tool handler's call context. */
36
+ export type GetClient = (extra?: unknown) => ContentHero | Promise<ContentHero>;
37
+ export interface RegisterToolsOptions {
38
+ /** Resolve the backend client for a given call (identity bound inside it). */
39
+ getClient: GetClient;
40
+ /** Per-tool model enums, fixed at registration (see resolveModelEnums). */
41
+ models: ResolvedModelEnums;
42
+ }
26
43
  export interface BuildServerOptions {
27
44
  /** Override the SDK client (for tests). Defaults to the env-configured client. */
28
45
  getClient?: () => ContentHero;
29
46
  }
47
+ /**
48
+ * Register the full ContentHero tool surface on `server`. Synchronous: the model
49
+ * enums are supplied pre-resolved, and the backend client is resolved per call.
50
+ */
51
+ export declare function registerTools(server: McpServer, opts: RegisterToolsOptions): void;
52
+ /**
53
+ * Build a stdio-style server bound to a single env-configured client. The model
54
+ * enums are resolved live from the discovery catalog (the client has a key).
55
+ */
30
56
  export declare function buildServer(options?: BuildServerOptions): Promise<McpServer>;
31
57
  //# sourceMappingURL=server.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAA;AAEnE,OAAO,EACL,WAAW,EAKZ,MAAM,kBAAkB,CAAA;AAsEzB,MAAM,WAAW,kBAAkB;IACjC,kFAAkF;IAClF,SAAS,CAAC,EAAE,MAAM,WAAW,CAAA;CAC9B;AAYD,wBAAsB,WAAW,CAAC,OAAO,GAAE,kBAAuB,GAAG,OAAO,CAAC,SAAS,CAAC,CA8rCtF"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAA;AAEnE,OAAO,EACL,WAAW,EAKZ,MAAM,kBAAkB,CAAA;AAEzB,OAAO,EAEL,KAAK,kBAAkB,EAQxB,MAAM,aAAa,CAAA;AAmEpB,iFAAiF;AACjF,MAAM,MAAM,SAAS,GAAG,CAAC,KAAK,CAAC,EAAE,OAAO,KAAK,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,CAAA;AAE/E,MAAM,WAAW,oBAAoB;IACnC,8EAA8E;IAC9E,SAAS,EAAE,SAAS,CAAA;IACpB,2EAA2E;IAC3E,MAAM,EAAE,kBAAkB,CAAA;CAC3B;AAED,MAAM,WAAW,kBAAkB;IACjC,kFAAkF;IAClF,SAAS,CAAC,EAAE,MAAM,WAAW,CAAA;CAC9B;AAYD;;;GAGG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,oBAAoB,GAAG,IAAI,CA8vCjF;AAED;;;GAGG;AACH,wBAAsB,WAAW,CAAC,OAAO,GAAE,kBAAuB,GAAG,OAAO,CAAC,SAAS,CAAC,CAMtF"}