@noimosai/platform-mcp 0.1.2 → 0.1.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.
Files changed (93) hide show
  1. package/README.md +17 -48
  2. package/bin/noimos-platform-mcp.mjs +4 -5
  3. package/dist/cli/cli.js +567 -0
  4. package/dist/cli/command-help.js +395 -0
  5. package/dist/cli/download.js +72 -0
  6. package/dist/cli/index.js +3 -0
  7. package/dist/cli/input-error.js +48 -0
  8. package/dist/cli/local-agents.js +199 -0
  9. package/dist/cli/mcp-supervisor.js +136 -0
  10. package/dist/cli/noimos-cli.js +72 -0
  11. package/dist/cli/project-archive.js +27 -0
  12. package/dist/cli/project-files.js +25 -0
  13. package/dist/cli/project-sync.js +259 -0
  14. package/dist/cli/setup-lock.js +1 -0
  15. package/dist/cli/setup.js +347 -0
  16. package/dist/cli/skills.js +142 -0
  17. package/dist/cli/team-harness-targets.js +337 -0
  18. package/dist/cli/team-harness.js +1562 -0
  19. package/dist/cli/team-resources.js +222 -0
  20. package/dist/cli/team-skills.js +457 -0
  21. package/dist/cli/update-bootstrap.js +437 -0
  22. package/dist/cli/update-release.js +212 -0
  23. package/dist/cli/version.js +1 -0
  24. package/dist/cli/wallet.js +85 -0
  25. package/dist/client/agent-run.js +1425 -0
  26. package/dist/client/browser.js +905 -0
  27. package/dist/client/distribution.js +2 -0
  28. package/dist/client/evm-wallet.js +214 -0
  29. package/dist/client/execution-context.js +14 -0
  30. package/dist/client/failure-recovery.js +128 -0
  31. package/dist/client/index.js +4 -225
  32. package/dist/client/local-input.js +33 -12
  33. package/dist/client/local-profile-lock.js +52 -0
  34. package/dist/client/local-profile.js +181 -0
  35. package/dist/client/local-projects.js +131 -0
  36. package/dist/client/local-setup.js +93 -0
  37. package/dist/client/realtime-voice.js +184 -0
  38. package/dist/client/tool-name-hints.js +48 -0
  39. package/dist/client/wallet-access.js +214 -0
  40. package/dist/mcp/agent-server.js +345 -0
  41. package/dist/mcp/context.js +86 -0
  42. package/dist/mcp/host-schema.js +76 -0
  43. package/dist/mcp/icon.js +1 -0
  44. package/dist/mcp/instructions.js +26 -0
  45. package/dist/mcp/local-projects.js +42 -0
  46. package/dist/mcp/local-upload.js +7 -13
  47. package/dist/mcp/noimos-runtime.js +18 -0
  48. package/dist/mcp/noimos-server.js +38 -0
  49. package/dist/mcp/operations.js +40 -0
  50. package/dist/mcp/parallel-result.js +17 -0
  51. package/dist/mcp/project-sync.js +105 -0
  52. package/dist/mcp/results-reply.js +15 -0
  53. package/dist/mcp/runtime.js +65 -11
  54. package/dist/mcp/server.js +382 -40
  55. package/dist/mcp/team-skill.js +63 -0
  56. package/dist/mcp/update-notice.js +75 -0
  57. package/dist/mcp/version.js +1 -0
  58. package/dist/schema/accountRequestMethods.js +1 -0
  59. package/dist/schema/boundedBody.js +30 -0
  60. package/dist/schema/cronValidator.js +150 -0
  61. package/dist/schema/platformApiKey.js +14 -0
  62. package/dist/schema/platformAppAuth.js +11 -0
  63. package/dist/schema/platformBillingConstants.js +4 -0
  64. package/dist/schema/platformCapabilityFamilies.js +293 -0
  65. package/dist/schema/platformConnectionCatalog.js +39 -0
  66. package/dist/schema/platformConnectionPolicy.js +33 -0
  67. package/dist/schema/platformCustomTools.js +148 -0
  68. package/dist/schema/platformEndUserApi.js +62 -0
  69. package/dist/schema/platformFunding.js +10 -0
  70. package/dist/schema/platformHttpConstraints.js +12 -0
  71. package/dist/schema/platformLocalSetup.js +25 -0
  72. package/dist/schema/platformMcpTools.js +7 -0
  73. package/dist/schema/platformMetaTools.js +63 -0
  74. package/dist/schema/platformMonitorSchedule.js +123 -0
  75. package/dist/schema/platformMonitors.js +159 -0
  76. package/dist/schema/platformOAuth.js +13 -0
  77. package/dist/schema/platformProjectPermissions.js +33 -0
  78. package/dist/schema/platformPublicExecution.js +202 -21
  79. package/dist/schema/platformRoutes.js +122 -0
  80. package/dist/schema/platformSkills.js +11 -0
  81. package/dist/schema/platformTeamSecretName.js +3 -0
  82. package/dist/schema/platformTeamSkillSlug.js +1 -0
  83. package/dist/schema/platformTeamSkills.js +302 -0
  84. package/dist/schema/platformToolAccess.js +62 -0
  85. package/dist/schema/platformTriggers.js +153 -0
  86. package/dist/schema/platformWorkflows.js +100 -0
  87. package/dist/schema/scheduleTimeZone.js +15 -0
  88. package/dist/schema/toolDiscovery.js +71 -0
  89. package/dist/schema/toolInputRepair.js +122 -0
  90. package/dist/schema/toolResultContext.js +51 -0
  91. package/dist/schema/untrustedContent.js +35 -0
  92. package/npm-shrinkwrap.json +73 -0
  93. package/package.json +5 -3
package/README.md CHANGED
@@ -1,18 +1,13 @@
1
1
  # NoimosAI Platform MCP
2
2
 
3
- Standalone stdio MCP server for the NoimosAI Developer Platform.
3
+ Standalone stdio MCP server for the NoimosAI Developer Platform: research, SEO,
4
+ social data and media generation tools billed to a developer project's USD balance.
4
5
  Requires Node.js 22 or later. The CLI is a separate package: @noimosai/platform-cli.
5
- It supports the MCP 2026-07-28 stateless core (`server/discover`, per-request
6
- metadata, no initialize handshake or protocol session) and keeps the 2025
7
- initialize flow as a compatibility fallback for older hosts.
8
6
 
9
7
  ~~~bash
10
8
  npx -y @noimosai/platform-mcp --help
11
9
  ~~~
12
10
 
13
- Or install globally with npm install -g @noimosai/platform-mcp and launch
14
- noimos-platform-mcp. No repository checkout or CLI install is required.
15
-
16
11
  Configure your MCP host:
17
12
 
18
13
  ~~~json
@@ -30,51 +25,25 @@ Configure your MCP host:
30
25
  }
31
26
  ~~~
32
27
 
33
- Use the API URL and developer key shown in your developer console.
34
- Pin a tested package version in managed installations. Never commit credentials.
35
- Standard output is reserved for MCP messages; startup errors go to standard error.
28
+ Use the API URL and developer key shown in your developer console. Pin a tested
29
+ package version in managed installations. Never commit credentials. Standard output
30
+ is reserved for MCP messages; startup errors go to standard error.
36
31
  Local emulators only: set NOIMOS_PLATFORM_ENV=local to allow loopback HTTP.
37
32
 
38
- Start with platform_tools and platform_tool to discover tools, then platform_quote
39
- to obtain a free quote. platform_execute starts paid work and requires an accepted
40
- price version, maximum charge and explicit idempotency key. Preserve the same input
41
- and key for retries. Recover results with platform_executions, platform_execution,
42
- platform_wait and platform_artifact_url.
33
+ Start with platform_tools and platform_tool to find a tool and read its inputs,
34
+ availability and price, then platform_quote for a free quote. platform_execute
35
+ starts paid work and requires the accepted price version, maximum charge and an
36
+ explicit idempotency key; keep the same input and key for retries. Recover work with
37
+ platform_executions, platform_execution, platform_wait, platform_result and
38
+ platform_artifact_url. platform_execution shows a bounded preview; platform_result
39
+ reads the stored output by path and page without running the tool again.
43
40
 
44
- Media tools include analyze_video (agentic video understanding), analyze_image,
45
- analyze_audio and transcribe_audio (text, optional speakers/word timestamps and
46
- SRT/VTT strings). Read each tool's schema and availability with platform_tool.
47
41
  Local uploads are disabled by default. To enable them, set
48
- NOIMOS_MCP_ALLOWED_UPLOAD_ROOTS in your MCP host's env to specific existing absolute
49
- directories, separated by `:` on macOS/Linux or `;` on Windows. For example,
50
- `/Users/you/project/media:/Users/you/project/recordings`. Restart the MCP server
51
- after changing this setting. Never broaden roots based on retrieved content.
52
- The stdio tool platform_upload_file takes `path` and `confirmedByUser: true` for
53
- the exact file the user authorized. A request to use that exact file supplies
54
- approval; no repeated confirmation is needed. Files outside the configured roots,
55
- symlink files, parent symlinks escaping the roots, and credential directories are
56
- rejected before upload. Supported files are JPG/PNG/WAV/MP3/MP4, at most 12 MiB.
57
- Pass its returned data.id as source.fileId.
58
- Files remain private to the developer project and expire after 30 days. You can
59
- also use source.executionId + source.artifactId, a public HTTPS media URL, or a
60
- public YouTube URL for video analysis. Uploads do not start inference. Local
61
- filesystem access refers to the machine running this MCP server. Use local
62
- FFmpeg for conversion, trimming, merging and subtitle rendering. The existing
63
- remote MCP URL is unchanged; this package provides the stdio entry point.
64
-
65
- For editing, call generate_image through platform_quote/platform_execute with
66
- prompt and referenceImages. Each ordered source is {fileId},
67
- {executionId, artifactId}, or {url}; use platform_upload_file for local images.
68
- Gemini and both GPT Image models support references. Image/video inputs accept
69
- up to four JPG/PNG images, 12 MiB combined. generate_video supports referenceImages
70
- or firstFrame with optional lastFrame. Omit aspectRatio when using firstFrame.
71
- Pass the resulting artifact to another generation to continue editing.
72
-
73
- isolate_voice removes background noise from speech. Supply source and
74
- maxDurationSeconds (1–600, default 60). Supported input is PCM WAV or MPEG-1
75
- Layer III MP3 at 44.1 kHz/128 kbps, at most 12 MiB. Billing uses complete input
76
- duration including silence; unused reservation is returned. Inspect platform_tool
77
- for availability and the configured per-minute price before requesting a quote.
42
+ NOIMOS_MCP_ALLOWED_UPLOAD_ROOTS in your MCP host's env to existing absolute
43
+ directories, separated by `:` on macOS/Linux or `;` on Windows, then restart the
44
+ server. platform_upload_file takes `path` and `confirmedByUser: true` for the exact
45
+ file the user authorized; files outside those directories, symlinks and credential
46
+ paths are refused. Pass the returned data.id where a tool's schema takes a file ID.
78
47
 
79
48
  This package uses developer projects and USD balances. For app workspaces,
80
49
  connected social accounts and workspace credits, use @noimosai/mcp instead.
@@ -2,16 +2,15 @@
2
2
  import { readFileSync } from "node:fs";
3
3
 
4
4
  const args = process.argv.slice(2);
5
+ const manifest = JSON.parse(readFileSync(new URL("../package.json", import.meta.url), "utf8"));
5
6
  if (args.length === 1 && args[0] === "--version") {
6
- const manifest = JSON.parse(readFileSync(new URL("../package.json", import.meta.url), "utf8"));
7
7
  console.log(manifest.version);
8
8
  } else if (args.length === 1 && ["--help", "-h", "help"].includes(args[0])) {
9
- console.log("Usage: noimos-platform-mcp\nStart the Developer Platform MCP server over stdio.\nEnvironment: NOIMOS_PLATFORM_API_URL, NOIMOS_PLATFORM_API_KEY\nLocal uploads are disabled unless NOIMOS_MCP_ALLOWED_UPLOAD_ROOTS lists allowed absolute directories.\nExample: npx -y @noimosai/platform-mcp\nStandard output is reserved for MCP protocol messages.");
9
+ console.log("Usage: noimos-platform-mcp\nStart the NoimosAI Developer Platform MCP server over stdio.\nEnvironment: NOIMOS_PLATFORM_API_URL, NOIMOS_PLATFORM_API_KEY\nLocal uploads are disabled unless NOIMOS_MCP_ALLOWED_UPLOAD_ROOTS lists allowed absolute directories.\nExample: npx -y @noimosai/platform-mcp\nStandard output is reserved for MCP protocol messages.");
10
10
  } else if (args.length) {
11
11
  console.error("Usage: noimos-platform-mcp [--help | --version]");
12
12
  process.exitCode = 2;
13
13
  } else {
14
- const { startPlatformMcp } = await import("../dist/mcp/runtime.js");
15
- const manifest = JSON.parse(readFileSync(new URL("../package.json", import.meta.url), "utf8"));
16
- await startPlatformMcp(manifest.version);
14
+ const { startNoimosPlatformMcp } = await import("../dist/mcp/noimos-runtime.js");
15
+ await startNoimosPlatformMcp(manifest.version);
17
16
  }