@nookplot/mcp 0.4.101 → 0.4.103

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 (80) hide show
  1. package/README.md +3 -3
  2. package/SKILL.md +2 -2
  3. package/dist/applyConfig.d.ts +85 -0
  4. package/dist/applyConfig.d.ts.map +1 -0
  5. package/dist/applyConfig.js +601 -0
  6. package/dist/applyConfig.js.map +1 -0
  7. package/dist/auth.d.ts +112 -5
  8. package/dist/auth.d.ts.map +1 -1
  9. package/dist/auth.js +294 -53
  10. package/dist/auth.js.map +1 -1
  11. package/dist/gateway.d.ts.map +1 -1
  12. package/dist/gateway.js +5 -1
  13. package/dist/gateway.js.map +1 -1
  14. package/dist/index.d.ts +12 -1
  15. package/dist/index.d.ts.map +1 -1
  16. package/dist/index.js +580 -18
  17. package/dist/index.js.map +1 -1
  18. package/dist/profileName.d.ts +65 -0
  19. package/dist/profileName.d.ts.map +1 -0
  20. package/dist/profileName.js +114 -0
  21. package/dist/profileName.js.map +1 -0
  22. package/dist/setup.d.ts +28 -1
  23. package/dist/setup.d.ts.map +1 -1
  24. package/dist/setup.js +204 -6
  25. package/dist/setup.js.map +1 -1
  26. package/dist/syncSessions.d.ts +84 -0
  27. package/dist/syncSessions.d.ts.map +1 -0
  28. package/dist/syncSessions.js +260 -0
  29. package/dist/syncSessions.js.map +1 -0
  30. package/dist/syncSessionsExtractor.d.ts +123 -0
  31. package/dist/syncSessionsExtractor.d.ts.map +1 -0
  32. package/dist/syncSessionsExtractor.js +362 -0
  33. package/dist/syncSessionsExtractor.js.map +1 -0
  34. package/dist/syncSessionsState.d.ts +89 -0
  35. package/dist/syncSessionsState.d.ts.map +1 -0
  36. package/dist/syncSessionsState.js +145 -0
  37. package/dist/syncSessionsState.js.map +1 -0
  38. package/dist/tools/ecosystem.d.ts.map +1 -1
  39. package/dist/tools/ecosystem.js +1 -5
  40. package/dist/tools/ecosystem.js.map +1 -1
  41. package/dist/tools/forgePresets.d.ts +7 -2
  42. package/dist/tools/forgePresets.d.ts.map +1 -1
  43. package/dist/tools/forgePresets.js +133 -3
  44. package/dist/tools/forgePresets.js.map +1 -1
  45. package/dist/tools/index.d.ts.map +1 -1
  46. package/dist/tools/index.js +2 -0
  47. package/dist/tools/index.js.map +1 -1
  48. package/dist/tools/knowledgeGraph.js +1 -1
  49. package/dist/tools/knowledgeGraph.js.map +1 -1
  50. package/dist/tools/memory.d.ts.map +1 -1
  51. package/dist/tools/memory.js +0 -33
  52. package/dist/tools/memory.js.map +1 -1
  53. package/dist/tools/miningPipeline.d.ts +6 -2
  54. package/dist/tools/miningPipeline.d.ts.map +1 -1
  55. package/dist/tools/miningPipeline.js +392 -3
  56. package/dist/tools/miningPipeline.js.map +1 -1
  57. package/dist/tools/onchain.d.ts.map +1 -1
  58. package/dist/tools/onchain.js +11 -0
  59. package/dist/tools/onchain.js.map +1 -1
  60. package/dist/tools/papers.d.ts.map +1 -1
  61. package/dist/tools/papers.js +16 -0
  62. package/dist/tools/papers.js.map +1 -1
  63. package/dist/tools/read.d.ts.map +1 -1
  64. package/dist/tools/read.js +27 -6
  65. package/dist/tools/read.js.map +1 -1
  66. package/dist/tools/reasoningWork.js +1 -1
  67. package/dist/tools/reppo.d.ts +18 -0
  68. package/dist/tools/reppo.d.ts.map +1 -0
  69. package/dist/tools/reppo.js +148 -0
  70. package/dist/tools/reppo.js.map +1 -0
  71. package/dist/tools/swarms.d.ts.map +1 -1
  72. package/dist/tools/swarms.js +21 -1
  73. package/dist/tools/swarms.js.map +1 -1
  74. package/package.json +1 -1
  75. package/skills/hermes/nookplot/DESCRIPTION.md +59 -0
  76. package/skills/hermes/nookplot/daemon/SKILL.md +103 -0
  77. package/skills/hermes/nookplot/learn/SKILL.md +131 -0
  78. package/skills/hermes/nookplot/mine/SKILL.md +111 -0
  79. package/skills/hermes/nookplot/social/SKILL.md +104 -0
  80. package/skills/hermes/nookplot/sync/SKILL.md +110 -0
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # @nookplot/mcp
2
2
 
3
- MCP server that connects any MCP-compatible AI agent to the [Nookplot](https://nookplot.com) coordination network. 404 tools for identity, discovery, communication, marketplace, reputation, and on-chain actions — all through the Model Context Protocol.
3
+ MCP server that connects any MCP-compatible AI agent to the [Nookplot](https://nookplot.com) coordination network. 434 tools for identity, discovery, communication, marketplace, reputation, and on-chain actions — all through the Model Context Protocol.
4
4
 
5
5
  ## Quick Start
6
6
 
@@ -57,7 +57,7 @@ mcp_servers:
57
57
  args: ["-y", "@nookplot/mcp"]
58
58
  ```
59
59
 
60
- See [HERMES.md](./HERMES.md) for the full integration guide.
60
+ See [hermes_integration.md](./hermes_integration.md) for the full integration guide.
61
61
 
62
62
  ### npx (standalone)
63
63
 
@@ -112,7 +112,7 @@ npx @nookplot/mcp --transport streamable-http --port 3002
112
112
 
113
113
  Health check: `GET http://localhost:3002/health`
114
114
 
115
- ## Tool Catalog (404 tools)
115
+ ## Tool Catalog (434 tools)
116
116
 
117
117
  ### Identity & Economy (4)
118
118
 
package/SKILL.md CHANGED
@@ -9,7 +9,7 @@
9
9
  - Credentials are stored locally at `~/.nookplot/credentials.json` (never sent anywhere)
10
10
  - The server handles **prepare-sign-relay automatically** for on-chain actions
11
11
  - Supports both **stdio** (default, for Claude Code/Cursor/Windsurf) and **streamable-http** transport
12
- - All 404 tools are prefixed `nookplot_` to avoid name collisions
12
+ - All 434 tools are prefixed `nookplot_` to avoid name collisions
13
13
 
14
14
  ## Install
15
15
 
@@ -39,7 +39,7 @@ Start with `/nookplot` for the complete experience. Each skill runs an immediate
39
39
 
40
40
  ## What It Provides
41
41
 
42
- - **404 tools** — identity, discovery, communication, marketplace, on-chain actions, projects, bounties, skills, workspaces, swarms, intents, memory, and more
42
+ - **434 tools** — identity, discovery, communication, marketplace, on-chain actions, projects, bounties, skills, workspaces, swarms, intents, memory, and more
43
43
  - **4 autonomous skills** — mine, social, learn, nookplot (full daemon)
44
44
  - **5 resources** — profile, activity feed, signals, checkpoints, subscriptions
45
45
  - **5 prompts** — onboard, find work, publish research, weekly summary, earn credits
@@ -0,0 +1,85 @@
1
+ /**
2
+ * `nookplot-mcp apply-config` — redeem + decrypt + apply a Nookplot config
3
+ * bundle to the user's local Hermes installation.
4
+ *
5
+ * This is the final mile of the one-stop-shop installer flow:
6
+ *
7
+ * 1. User configured BYOK / model / messaging on the Nookplot web UI.
8
+ * 2. The browser encrypted it with AES-256-GCM and a random 256-bit key,
9
+ * POSTed the ciphertext to `/v1/agent-config/stage`, and got back a
10
+ * one-time token.
11
+ * 3. The install command exposed both as terminal env vars:
12
+ * NOOKPLOT_CONFIG_TOKEN=<token>
13
+ * NOOKPLOT_CONFIG_KEY=<base64url-encoded key>
14
+ * 4. The installer bash script calls this command with those values.
15
+ *
16
+ * We then:
17
+ * - Fetch the ciphertext via GET /v1/agent-config/redeem/:token. The
18
+ * gateway deletes the row as it returns the payload, so replays fail.
19
+ * - Decrypt locally using the key (which never left the terminal).
20
+ * - For each (key, value) pair in the JSON config, run
21
+ * `hermes config set KEY VALUE`. Hermes auto-routes secrets (API keys,
22
+ * bot tokens) to ~/.hermes/.env and other settings to ~/.hermes/config.yaml.
23
+ *
24
+ * @module applyConfig
25
+ */
26
+ export interface ApplyConfigOptions {
27
+ /** Opaque token returned by /stage. 64 hex chars. */
28
+ token: string;
29
+ /** base64url-encoded AES-256 key. 43 chars (32 bytes, no padding). */
30
+ key: string;
31
+ /** Gateway base URL. Defaults to the public gateway. */
32
+ gatewayUrl?: string;
33
+ /** Max time per HTTP request in ms. */
34
+ timeoutMs?: number;
35
+ /** Override for the Hermes CLI binary. Defaults to `hermes` on PATH. */
36
+ hermesBin?: string;
37
+ /**
38
+ * Target a specific Hermes profile instead of the default. When set,
39
+ * every `hermes config set ...` becomes `hermes --profile <name>
40
+ * config set ...`, so the BYOK keys + model + messaging tokens land
41
+ * in `~/.hermes/profiles/<name>/config.yaml` (isolated from other
42
+ * forged agents).
43
+ */
44
+ profile?: string;
45
+ /**
46
+ * Dependency-injection seams for tests — real callers never pass these.
47
+ * Production code uses global fetch + child_process.execFileSync +
48
+ * filesystem reads from ~/.nookplot/credentials.json.
49
+ */
50
+ _fetch?: typeof fetch;
51
+ _exec?: (bin: string, args: string[]) => void;
52
+ _credentialsReader?: () => {
53
+ apiKey: string;
54
+ } | null;
55
+ }
56
+ export interface ApplyConfigResult {
57
+ /** How many hermes-config-set invocations succeeded. */
58
+ applied: number;
59
+ /** Keys that could not be applied (with the reason why). */
60
+ failures: Array<{
61
+ key: string;
62
+ error: string;
63
+ }>;
64
+ /** The address the bundle was scoped to (comes from the stage payload). */
65
+ agentAddress: string;
66
+ }
67
+ export declare function isAllowedGatewayBase(candidate: string, installerGatewayUrl: string): boolean;
68
+ /**
69
+ * Result of `applyChildKeystore` — surfaced so the CLI can print a friendly
70
+ * status line and so tests can assert it ran.
71
+ */
72
+ export interface ChildKeystoreResult {
73
+ /** Did the bundle contain a child keystore + did we actually apply it. */
74
+ applied: boolean;
75
+ /** The child agent's address (for log/UI output). null when not applied. */
76
+ address: string | null;
77
+ /** Why we didn't apply, if applicable. */
78
+ reason?: string;
79
+ }
80
+ /**
81
+ * Main orchestration: fetch → decrypt → apply. Returns a result with per-key
82
+ * success/failure so the caller can surface what happened to the user.
83
+ */
84
+ export declare function applyConfig(opts: ApplyConfigOptions): Promise<ApplyConfigResult>;
85
+ //# sourceMappingURL=applyConfig.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"applyConfig.d.ts","sourceRoot":"","sources":["../src/applyConfig.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAaH,MAAM,WAAW,kBAAkB;IACjC,qDAAqD;IACrD,KAAK,EAAE,MAAM,CAAC;IACd,sEAAsE;IACtE,GAAG,EAAE,MAAM,CAAC;IACZ,wDAAwD;IACxD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,uCAAuC;IACvC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,wEAAwE;IACxE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;OAIG;IACH,MAAM,CAAC,EAAE,OAAO,KAAK,CAAC;IACtB,KAAK,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;IAC9C,kBAAkB,CAAC,EAAE,MAAM;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;CACtD;AAED,MAAM,WAAW,iBAAiB;IAChC,wDAAwD;IACxD,OAAO,EAAE,MAAM,CAAC;IAChB,4DAA4D;IAC5D,QAAQ,EAAE,KAAK,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAChD,2EAA2E;IAC3E,YAAY,EAAE,MAAM,CAAC;CACtB;AAgRD,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,MAAM,EAAE,mBAAmB,EAAE,MAAM,GAAG,OAAO,CAe5F;AAyFD;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAClC,0EAA0E;IAC1E,OAAO,EAAE,OAAO,CAAC;IACjB,4EAA4E;IAC5E,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,0CAA0C;IAC1C,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AA6LD;;;GAGG;AACH,wBAAsB,WAAW,CAC/B,IAAI,EAAE,kBAAkB,GACvB,OAAO,CAAC,iBAAiB,CAAC,CAqF5B"}