@apicity/mcp-server 0.2.0-alpha.1 → 0.2.1

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/README.md CHANGED
@@ -28,11 +28,12 @@ OPENAI_API_KEY=sk-... ANTHROPIC_API_KEY=sk-... \
28
28
 
29
29
  ### Flags
30
30
 
31
- | Flag | Description |
32
- | --------------------- | ------------------------------------------------------------------ |
33
- | `--output-dir <path>` | Where binary results and downloaded media URLs land. |
34
- | `--providers <csv>` | Allow-list of providers (default: every one with its env var set). |
35
- | `--help` | Print usage. |
31
+ | Flag | Description |
32
+ | ------------------------------ | -------------------------------------------------------------------------------------------------------------- |
33
+ | `--output-dir <path>` | Where binary results and downloaded media URLs land. |
34
+ | `--providers <csv>` | Allow-list of providers (default: every one with its env var set). |
35
+ | `--paygate-secret-file <path>` | File holding the shared HMAC secret used to verify paid-endpoint OTPs (see [Paid endpoints](#paid-endpoints)). |
36
+ | `--help` | Print usage. |
36
37
 
37
38
  ### Credentials
38
39
 
@@ -81,6 +82,21 @@ When `--output-dir` is set:
81
82
  Without `--output-dir`, binary results are summarized as a byte count and URLs
82
83
  pass through untouched.
83
84
 
85
+ ## Paid endpoints
86
+
87
+ A few endpoints incur direct marginal cost (e.g. `kie_api_v1_jobs_createTask`
88
+ for video/image generation) and are gated behind a single-use OTP. The server
89
+ is the **code client**: pass `--paygate-secret-file <path>` and it holds the
90
+ shared HMAC secret to **verify** OTPs — it never mints them. Paid tools
91
+ advertise an extra optional `otp` argument.
92
+
93
+ To run a paid call, a human mints an OTP out-of-band from the same secret
94
+ (`apicity-paygate otp mint --secret-file … --dot-path api.v1.jobs.createTask
95
+ --payload-file request.json --ttl 10m`) and the caller passes it as the tool's
96
+ `otp` argument. Because the AI driving the tool never sees the secret, it cannot
97
+ self-approve: with no `otp` (or no secret configured) the paid call fails closed.
98
+ See [@apicity/cost](../provider/cost) for the full spec.
99
+
84
100
  ## Programmatic use
85
101
 
86
102
  ```ts
package/dist/src/bin.js CHANGED
@@ -1,4 +1,5 @@
1
1
  #!/usr/bin/env node
2
+ import { readFileSync } from "node:fs";
2
3
  import { startServer } from "./server.js";
3
4
  function parseArgs(argv) {
4
5
  const out = { help: false };
@@ -16,6 +17,12 @@ function parseArgs(argv) {
16
17
  else if (a.startsWith("--providers=")) {
17
18
  out.enabledProviders = a.slice(12).split(",").filter(Boolean);
18
19
  }
20
+ else if (a === "--paygate-secret-file") {
21
+ out.paygateSecretFile = argv[++i];
22
+ }
23
+ else if (a.startsWith("--paygate-secret-file=")) {
24
+ out.paygateSecretFile = a.slice(22);
25
+ }
19
26
  else {
20
27
  console.error(`[apicity-mcp] unknown arg: ${a}`);
21
28
  }
@@ -34,6 +41,9 @@ function printHelp() {
34
41
  " If omitted, binaries are summarized and URLs are returned as-is.",
35
42
  " --providers <csv> Comma-separated provider allow-list (e.g. openai,xai,anthropic).",
36
43
  " Defaults to every provider with its env var set.",
44
+ " --paygate-secret-file <path> File holding the shared HMAC secret used to verify",
45
+ " OTPs for paid endpoints (e.g. kie createTask). The server only",
46
+ " verifies OTPs; operators mint them out-of-band with apicity-paygate.",
37
47
  "",
38
48
  "Credentials are read from env vars: OPENAI_API_KEY, XAI_API_KEY, ANTHROPIC_API_KEY,",
39
49
  "FIREWORKS_API_KEY, FAL_API_KEY, KIE_API_KEY, KIMI_CODING_API_KEY, DASHSCOPE_API_KEY,",
@@ -45,9 +55,13 @@ if (args.help) {
45
55
  printHelp();
46
56
  process.exit(0);
47
57
  }
58
+ const paygateSecret = args.paygateSecretFile
59
+ ? readFileSync(args.paygateSecretFile, "utf8").trim()
60
+ : undefined;
48
61
  startServer({
49
62
  outputDir: args.outputDir,
50
63
  enabledProviders: args.enabledProviders,
64
+ paygateSecret,
51
65
  }).catch((err) => {
52
66
  console.error("[apicity-mcp] fatal:", err);
53
67
  process.exit(1);
@@ -1 +1 @@
1
- {"version":3,"file":"bin.js","sourceRoot":"","sources":["../../src/bin.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAQ1C,SAAS,SAAS,CAAC,IAAc;IAC/B,MAAM,GAAG,GAAe,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;IACxC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,IAAI,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,IAAI;YAAE,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC;aAC7C,IAAI,CAAC,KAAK,cAAc;YAAE,GAAG,CAAC,SAAS,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;aACpD,IAAI,CAAC,CAAC,UAAU,CAAC,eAAe,CAAC;YAAE,GAAG,CAAC,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;aAC/D,IAAI,CAAC,KAAK,aAAa,EAAE,CAAC;YAC7B,GAAG,CAAC,gBAAgB,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACtE,CAAC;aAAM,IAAI,CAAC,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;YACxC,GAAG,CAAC,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAChE,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,KAAK,CAAC,8BAA8B,CAAC,EAAE,CAAC,CAAC;QACnD,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,SAAS;IAChB,OAAO,CAAC,KAAK,CACX;QACE,+EAA+E;QAC/E,EAAE;QACF,QAAQ;QACR,yDAAyD;QACzD,EAAE;QACF,UAAU;QACV,sFAAsF;QACtF,0FAA0F;QAC1F,0FAA0F;QAC1F,0EAA0E;QAC1E,EAAE;QACF,qFAAqF;QACrF,sFAAsF;QACtF,mGAAmG;KACpG,CAAC,IAAI,CAAC,IAAI,CAAC,CACb,CAAC;AACJ,CAAC;AAED,MAAM,IAAI,GAAG,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;AAC9C,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;IACd,SAAS,EAAE,CAAC;IACZ,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED,WAAW,CAAC;IACV,SAAS,EAAE,IAAI,CAAC,SAAS;IACzB,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;CACxC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;IACf,OAAO,CAAC,KAAK,CAAC,sBAAsB,EAAE,GAAG,CAAC,CAAC;IAC3C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"bin.js","sourceRoot":"","sources":["../../src/bin.ts"],"names":[],"mappings":"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"}
@@ -6,5 +6,5 @@ export interface ProviderSpec {
6
6
  }
7
7
  export declare const PROVIDERS: Record<string, ProviderSpec>;
8
8
  export type InstantiatedProvider = Record<string, unknown>;
9
- export declare function instantiateProvider(name: string, spec: ProviderSpec): Promise<InstantiatedProvider | null>;
9
+ export declare function instantiateProvider(name: string, spec: ProviderSpec, paygateSecret?: string): Promise<InstantiatedProvider | null>;
10
10
  //# sourceMappingURL=providers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"providers.d.ts","sourceRoot":"","sources":["../../src/providers.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,QAAQ,GAAG,aAAa,CAAC;IACpC,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,eAAO,MAAM,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAgFlD,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAE3D,wBAAsB,mBAAmB,CACvC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,YAAY,GACjB,OAAO,CAAC,oBAAoB,GAAG,IAAI,CAAC,CAkBtC"}
1
+ {"version":3,"file":"providers.d.ts","sourceRoot":"","sources":["../../src/providers.ts"],"names":[],"mappings":"AASA,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,QAAQ,GAAG,aAAa,CAAC;IACpC,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;CACrB;AAOD,eAAO,MAAM,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAgFlD,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAE3D,wBAAsB,mBAAmB,CACvC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,YAAY,EAClB,aAAa,CAAC,EAAE,MAAM,GACrB,OAAO,CAAC,oBAAoB,GAAG,IAAI,CAAC,CAwBtC"}
@@ -4,88 +4,91 @@
4
4
  //
5
5
  // Keeping factory imports dynamic means a missing provider package doesn't
6
6
  // crash the server — that provider just gets skipped.
7
+ import { PAID_ENDPOINTS } from "@apicity/cost";
8
+ /** Provider names that have at least one paid endpoint in the registry. */
9
+ const PROVIDERS_WITH_PAID_ENDPOINTS = new Set(PAID_ENDPOINTS.map((e) => e.key.provider));
7
10
  export const PROVIDERS = {
8
11
  openai: {
9
12
  envVar: "OPENAI_API_KEY",
10
13
  optionKey: "apiKey",
11
14
  importPath: "@apicity/openai",
12
- factoryName: "openai",
15
+ factoryName: "createOpenAi",
13
16
  },
14
17
  xai: {
15
18
  envVar: "XAI_API_KEY",
16
19
  optionKey: "apiKey",
17
20
  importPath: "@apicity/xai",
18
- factoryName: "xai",
21
+ factoryName: "createXai",
19
22
  },
20
23
  anthropic: {
21
24
  envVar: "ANTHROPIC_API_KEY",
22
25
  optionKey: "apiKey",
23
26
  importPath: "@apicity/anthropic",
24
- factoryName: "anthropic",
27
+ factoryName: "createAnthropic",
25
28
  },
26
29
  fireworks: {
27
30
  envVar: "FIREWORKS_API_KEY",
28
31
  optionKey: "apiKey",
29
32
  importPath: "@apicity/fireworks",
30
- factoryName: "fireworks",
33
+ factoryName: "createFireworks",
31
34
  },
32
35
  fal: {
33
36
  envVar: "FAL_API_KEY",
34
37
  optionKey: "apiKey",
35
38
  importPath: "@apicity/fal",
36
- factoryName: "fal",
39
+ factoryName: "createFal",
37
40
  },
38
41
  kie: {
39
42
  envVar: "KIE_API_KEY",
40
43
  optionKey: "apiKey",
41
44
  importPath: "@apicity/kie",
42
- factoryName: "kie",
45
+ factoryName: "createKie",
43
46
  },
44
47
  kimicoding: {
45
48
  envVar: "KIMI_CODING_API_KEY",
46
49
  optionKey: "apiKey",
47
50
  importPath: "@apicity/kimicoding",
48
- factoryName: "kimicoding",
51
+ factoryName: "createKimiCoding",
49
52
  },
50
53
  alibaba: {
51
54
  envVar: "DASHSCOPE_API_KEY",
52
55
  optionKey: "apiKey",
53
56
  importPath: "@apicity/alibaba",
54
- factoryName: "alibaba",
57
+ factoryName: "createAlibaba",
55
58
  },
56
59
  elevenlabs: {
57
60
  envVar: "ELEVENLABS_API_KEY",
58
61
  optionKey: "apiKey",
59
62
  importPath: "@apicity/elevenlabs",
60
- factoryName: "elevenlabs",
63
+ factoryName: "createElevenLabs",
61
64
  },
62
65
  x: {
63
66
  envVar: "X_ACCESS_TOKEN",
64
67
  optionKey: "accessToken",
65
68
  importPath: "@apicity/x",
66
- factoryName: "x",
69
+ factoryName: "createX",
67
70
  },
68
71
  meta: {
69
72
  envVar: "IG_ACCESS_TOKEN",
70
73
  optionKey: "accessToken",
71
74
  importPath: "@apicity/meta",
72
- factoryName: "meta",
75
+ factoryName: "createMeta",
73
76
  },
74
77
  // free needs no credential — handled specially in registry.ts
75
78
  "free-media-upload": {
76
79
  envVar: "",
77
80
  optionKey: "apiKey",
78
81
  importPath: "@apicity/free-media-upload",
79
- factoryName: "freeMediaUpload",
82
+ factoryName: "createFreeMediaUpload",
80
83
  },
81
84
  youtube: {
82
85
  envVar: "YOUTUBE_ACCESS_TOKEN",
83
86
  optionKey: "accessToken",
84
87
  importPath: "@apicity/youtube",
85
- factoryName: "youtube",
88
+ factoryName: "createYouTube",
86
89
  },
87
90
  };
88
- export async function instantiateProvider(name, spec) {
91
+ export async function instantiateProvider(name, spec, paygateSecret) {
89
92
  const mod = (await import(spec.importPath));
90
93
  const factory = mod[spec.factoryName];
91
94
  if (typeof factory !== "function") {
@@ -100,6 +103,12 @@ export async function instantiateProvider(name, spec) {
100
103
  const opts = {};
101
104
  if (credential)
102
105
  opts[spec.optionKey] = credential;
106
+ // The MCP server is the code client: it holds the shared secret to *verify*
107
+ // OTPs, but never mints them. A human mints an OTP out-of-band and the caller
108
+ // passes it as the tool's `otp` argument, so the AI cannot self-approve.
109
+ if (paygateSecret && PROVIDERS_WITH_PAID_ENDPOINTS.has(name)) {
110
+ opts.paygate = { secret: paygateSecret };
111
+ }
103
112
  return factory(opts);
104
113
  }
105
114
  //# sourceMappingURL=providers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"providers.js","sourceRoot":"","sources":["../../src/providers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"providers.js","sourceRoot":"","sources":["../../src/providers.ts"],"names":[],"mappings":"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"}
@@ -25,6 +25,8 @@ export declare function loadTsv(): Promise<EndpointTsvRow[]>;
25
25
  export interface BuildRegistryOptions {
26
26
  /** If set, only these provider names are loaded. Defaults to all with env vars. */
27
27
  enabledProviders?: string[];
28
+ /** Shared HMAC secret used to verify OTPs for paid endpoints. */
29
+ paygateSecret?: string;
28
30
  }
29
31
  export declare function buildRegistry(opts?: BuildRegistryOptions): Promise<Endpoint[]>;
30
32
  export declare function makeToolName(provider: string, method: string, dotPath: string): string;
@@ -1 +1 @@
1
- {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/registry.ts"],"names":[],"mappings":"AASA,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,UAAU;IACzB,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC;IACjD,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,eAAe,CAAC;CAC3B;AAED,MAAM,WAAW,QAAS,SAAQ,cAAc;IAC9C,QAAQ,EAAE,MAAM,CAAC;IACjB,EAAE,EAAE,UAAU,CAAC;IACf,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,eAAe,CAAC;IAC1B,UAAU,EAAE,MAAM,EAAE,CAAC;CACtB;AAID,wBAAsB,OAAO,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC,CAoBzD;AAoBD,MAAM,WAAW,oBAAoB;IACnC,mFAAmF;IACnF,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;CAC7B;AAED,wBAAsB,aAAa,CACjC,IAAI,GAAE,oBAAyB,GAC9B,OAAO,CAAC,QAAQ,EAAE,CAAC,CAmCrB;AAyED,wBAAgB,YAAY,CAC1B,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,GACd,MAAM,CAGR;AASD,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAKnD"}
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/registry.ts"],"names":[],"mappings":"AASA,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,UAAU;IACzB,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC;IACjD,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,eAAe,CAAC;CAC3B;AAED,MAAM,WAAW,QAAS,SAAQ,cAAc;IAC9C,QAAQ,EAAE,MAAM,CAAC;IACjB,EAAE,EAAE,UAAU,CAAC;IACf,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,eAAe,CAAC;IAC1B,UAAU,EAAE,MAAM,EAAE,CAAC;CACtB;AAID,wBAAsB,OAAO,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC,CAoBzD;AAoBD,MAAM,WAAW,oBAAoB;IACnC,mFAAmF;IACnF,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,iEAAiE;IACjE,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,wBAAsB,aAAa,CACjC,IAAI,GAAE,oBAAyB,GAC9B,OAAO,CAAC,QAAQ,EAAE,CAAC,CAmCrB;AAyED,wBAAgB,YAAY,CAC1B,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,GACd,MAAM,CAGR;AASD,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAKnD"}
@@ -48,7 +48,7 @@ export async function buildRegistry(opts = {}) {
48
48
  if (!wanted.has(name))
49
49
  continue;
50
50
  try {
51
- const inst = await instantiateProvider(name, spec);
51
+ const inst = await instantiateProvider(name, spec, opts.paygateSecret);
52
52
  if (inst)
53
53
  instances.set(name, inst);
54
54
  }
@@ -1 +1 @@
1
- {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/registry.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,8 @@ export interface StartServerOptions {
3
3
  enabledProviders?: string[];
4
4
  name?: string;
5
5
  version?: string;
6
+ /** Shared HMAC secret used to verify OTPs for paid endpoints. */
7
+ paygateSecret?: string;
6
8
  }
7
9
  export declare function startServer(opts?: StartServerOptions): Promise<void>;
8
10
  //# sourceMappingURL=server.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/server.ts"],"names":[],"mappings":"AAeA,MAAM,WAAW,kBAAkB;IACjC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,wBAAsB,WAAW,CAC/B,IAAI,GAAE,kBAAuB,GAC5B,OAAO,CAAC,IAAI,CAAC,CAyCf"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/server.ts"],"names":[],"mappings":"AAgBA,MAAM,WAAW,kBAAkB;IACjC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,iEAAiE;IACjE,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,wBAAsB,WAAW,CAC/B,IAAI,GAAE,kBAAuB,GAC5B,OAAO,CAAC,IAAI,CAAC,CA0Cf"}
@@ -1,12 +1,14 @@
1
1
  import { Server } from "@modelcontextprotocol/sdk/server/index.js";
2
2
  import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
3
3
  import { CallToolRequestSchema, ListToolsRequestSchema, } from "@modelcontextprotocol/sdk/types.js";
4
+ import { isPaidEndpoint } from "@apicity/cost";
4
5
  import { buildRegistry } from "./registry.js";
5
6
  import { zodToJsonSchema } from "./schema.js";
6
7
  import { downloadUrlsInResult, guessExtension, isBinary, writeBinary, } from "./output.js";
7
8
  export async function startServer(opts = {}) {
8
9
  const endpoints = await buildRegistry({
9
10
  enabledProviders: opts.enabledProviders,
11
+ paygateSecret: opts.paygateSecret,
10
12
  });
11
13
  const server = new Server({ name: opts.name ?? "apicity", version: opts.version ?? "0.1.0" }, { capabilities: { tools: {} } });
12
14
  const byName = new Map(endpoints.map((e) => [e.toolName, e]));
@@ -37,6 +39,10 @@ export async function startServer(opts = {}) {
37
39
  }
38
40
  function describe(ep, outputDir) {
39
41
  const lines = [`${ep.method} ${ep.fullUrl}`, `Docs: ${ep.docsUrl}`];
42
+ if (isPaidEndpoint(ep.provider, ep.method, ep.dotPath)) {
43
+ lines.push("PAID endpoint: requires an operator-minted `otp` (one-time approval). " +
44
+ "The OTP is bound to this exact request and is single-use.");
45
+ }
40
46
  if (outputDir && isMediaEndpoint(ep)) {
41
47
  lines.push(`Returned binary or media URLs are saved to: ${outputDir}`);
42
48
  }
@@ -50,14 +56,26 @@ function describe(ep, outputDir) {
50
56
  function isMediaEndpoint(ep) {
51
57
  return /audio|image|video|speech|tts|generation|sound|upload|file/i.test(ep.dotPath);
52
58
  }
59
+ const OTP_SCHEMA = {
60
+ type: "string",
61
+ description: "Operator-minted one-time approval token authorizing this paid call. " +
62
+ "Bound to this exact request and single-use; the AI cannot mint it.",
63
+ };
53
64
  function buildInputSchema(ep) {
65
+ const paid = isPaidEndpoint(ep.provider, ep.method, ep.dotPath);
54
66
  const body = zodToJsonSchema(ep.schema);
55
67
  // If the endpoint takes path params (e.g., {taskId}), wrap them at the top
56
68
  // level alongside the body fields and mark them required.
57
69
  if (ep.pathParams.length === 0) {
58
- if (body.type === "object")
59
- return body;
60
- return { type: "object", properties: {}, additionalProperties: true };
70
+ if (body.type === "object") {
71
+ return paid ? withOtp(body) : body;
72
+ }
73
+ const obj = {
74
+ type: "object",
75
+ properties: {},
76
+ additionalProperties: true,
77
+ };
78
+ return paid ? withOtp(obj) : obj;
61
79
  }
62
80
  const properties = {};
63
81
  const required = [];
@@ -75,15 +93,38 @@ function buildInputSchema(ep) {
75
93
  description: "Request body (free-form)",
76
94
  };
77
95
  }
96
+ if (paid)
97
+ properties.otp = OTP_SCHEMA;
78
98
  return { type: "object", properties, required };
79
99
  }
100
+ /** Add an optional top-level `otp` property to an object schema. */
101
+ function withOtp(objSchema) {
102
+ const properties = {
103
+ ...(objSchema.properties ?? {}),
104
+ otp: OTP_SCHEMA,
105
+ };
106
+ return { ...objSchema, properties };
107
+ }
80
108
  async function invoke(ep, args) {
109
+ const paid = isPaidEndpoint(ep.provider, ep.method, ep.dotPath);
110
+ // For paid endpoints, peel the `otp` approval off the arguments before the
111
+ // rest is treated as the request body. The approval is forwarded as the final
112
+ // argument so the provider's pay gate can verify it (or fail closed).
113
+ let approval;
114
+ if (paid) {
115
+ approval = extractApproval(args);
116
+ args = stripApproval(args);
117
+ }
81
118
  let pathArgs = [];
82
119
  let body = args;
83
120
  if (ep.pathParams.length > 0) {
84
121
  pathArgs = ep.pathParams.map((p) => args[p]);
85
122
  body = args.body ?? undefined;
86
123
  }
124
+ if (paid) {
125
+ const result = await ep.fn(...pathArgs, body ?? {}, approval);
126
+ return await maybeBuffer(result);
127
+ }
87
128
  if (body === undefined ||
88
129
  (isPlainObject(body) && Object.keys(body).length === 0)) {
89
130
  const result = await ep.fn(...pathArgs);
@@ -92,6 +133,24 @@ async function invoke(ep, args) {
92
133
  const result = await ep.fn(...pathArgs, body);
93
134
  return await maybeBuffer(result);
94
135
  }
136
+ /** Read an `otp` approval from tool args (top-level `otp` or `approval.otp`). */
137
+ function extractApproval(args) {
138
+ if (typeof args.otp === "string")
139
+ return { otp: args.otp };
140
+ const approval = args.approval;
141
+ if (isPlainObject(approval) &&
142
+ typeof approval.otp === "string") {
143
+ return { otp: approval.otp };
144
+ }
145
+ return undefined;
146
+ }
147
+ /** Return a copy of args without the approval fields. */
148
+ function stripApproval(args) {
149
+ const { otp: _otp, approval: _approval, ...rest } = args;
150
+ void _otp;
151
+ void _approval;
152
+ return rest;
153
+ }
95
154
  function isPlainObject(v) {
96
155
  return typeof v === "object" && v !== null && !Array.isArray(v);
97
156
  }
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/server.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@apicity/mcp-server",
3
- "version": "0.2.0-alpha.1",
3
+ "version": "0.2.1",
4
4
  "description": "Optional MCP (Model Context Protocol) server that exposes every @apicity provider endpoint as a tool.",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -46,21 +46,22 @@
46
46
  "node": ">=18.0.0"
47
47
  },
48
48
  "dependencies": {
49
- "@modelcontextprotocol/sdk": "^1.29.0"
49
+ "@modelcontextprotocol/sdk": "^1.29.0",
50
+ "@apicity/cost": "0.2.1"
50
51
  },
51
52
  "peerDependencies": {
52
- "@apicity/alibaba": "0.2.0-alpha.1",
53
- "@apicity/anthropic": "0.2.0-alpha.1",
54
- "@apicity/elevenlabs": "0.2.0-alpha.1",
55
- "@apicity/fal": "0.2.0-alpha.1",
56
- "@apicity/free-media-upload": "0.2.0-alpha.1",
57
- "@apicity/meta": "0.2.0-alpha.1",
58
- "@apicity/kie": "0.2.0-alpha.1",
59
- "@apicity/kimicoding": "0.2.0-alpha.1",
60
- "@apicity/fireworks": "0.2.0-alpha.1",
61
- "@apicity/openai": "0.2.0-alpha.1",
62
- "@apicity/x": "0.2.0-alpha.1",
63
- "@apicity/xai": "0.2.0-alpha.1"
53
+ "@apicity/alibaba": "0.2.1",
54
+ "@apicity/elevenlabs": "0.2.1",
55
+ "@apicity/free-media-upload": "0.2.1",
56
+ "@apicity/anthropic": "0.2.1",
57
+ "@apicity/fal": "0.2.1",
58
+ "@apicity/fireworks": "0.2.1",
59
+ "@apicity/kimicoding": "0.2.1",
60
+ "@apicity/kie": "0.2.1",
61
+ "@apicity/meta": "0.2.1",
62
+ "@apicity/openai": "0.2.1",
63
+ "@apicity/x": "0.2.1",
64
+ "@apicity/xai": "0.2.1"
64
65
  },
65
66
  "peerDependenciesMeta": {
66
67
  "@apicity/alibaba": {
@@ -101,18 +102,18 @@
101
102
  }
102
103
  },
103
104
  "devDependencies": {
104
- "@apicity/alibaba": "0.2.0-alpha.1",
105
- "@apicity/anthropic": "0.2.0-alpha.1",
106
- "@apicity/elevenlabs": "0.2.0-alpha.1",
107
- "@apicity/fal": "0.2.0-alpha.1",
108
- "@apicity/fireworks": "0.2.0-alpha.1",
109
- "@apicity/free-media-upload": "0.2.0-alpha.1",
110
- "@apicity/meta": "0.2.0-alpha.1",
111
- "@apicity/kie": "0.2.0-alpha.1",
112
- "@apicity/kimicoding": "0.2.0-alpha.1",
113
- "@apicity/openai": "0.2.0-alpha.1",
114
- "@apicity/x": "0.2.0-alpha.1",
115
- "@apicity/xai": "0.2.0-alpha.1"
105
+ "@apicity/anthropic": "0.2.1",
106
+ "@apicity/alibaba": "0.2.1",
107
+ "@apicity/fireworks": "0.2.1",
108
+ "@apicity/free-media-upload": "0.2.1",
109
+ "@apicity/fal": "0.2.1",
110
+ "@apicity/kie": "0.2.1",
111
+ "@apicity/meta": "0.2.1",
112
+ "@apicity/openai": "0.2.1",
113
+ "@apicity/elevenlabs": "0.2.1",
114
+ "@apicity/kimicoding": "0.2.1",
115
+ "@apicity/x": "0.2.1",
116
+ "@apicity/xai": "0.2.1"
116
117
  },
117
118
  "homepage": "https://github.com/justintanner/apicity#readme",
118
119
  "bugs": {