@provian/mcp 0.0.0-stage → 1.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.
Files changed (101) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/LICENSE +21 -0
  3. package/README.md +266 -2
  4. package/bin/provian-mcp.mjs +18 -0
  5. package/dist/agent-wallet-registration.d.ts +34 -0
  6. package/dist/agent-wallet-registration.d.ts.map +1 -0
  7. package/dist/agent-wallet-registration.js +440 -0
  8. package/dist/agent-wallet-registration.js.map +1 -0
  9. package/dist/core/challenge.d.ts +187 -0
  10. package/dist/core/challenge.d.ts.map +1 -0
  11. package/dist/core/challenge.js +536 -0
  12. package/dist/core/challenge.js.map +1 -0
  13. package/dist/core/crypto.d.ts +44 -0
  14. package/dist/core/crypto.d.ts.map +1 -0
  15. package/dist/core/crypto.js +124 -0
  16. package/dist/core/crypto.js.map +1 -0
  17. package/dist/core/disclosure-request.d.ts +169 -0
  18. package/dist/core/disclosure-request.d.ts.map +1 -0
  19. package/dist/core/disclosure-request.js +400 -0
  20. package/dist/core/disclosure-request.js.map +1 -0
  21. package/dist/core/genesis-offer.d.ts +25 -0
  22. package/dist/core/genesis-offer.d.ts.map +1 -0
  23. package/dist/core/genesis-offer.js +34 -0
  24. package/dist/core/genesis-offer.js.map +1 -0
  25. package/dist/core/harness-tool-vocabulary.d.ts +55 -0
  26. package/dist/core/harness-tool-vocabulary.d.ts.map +1 -0
  27. package/dist/core/harness-tool-vocabulary.js +116 -0
  28. package/dist/core/harness-tool-vocabulary.js.map +1 -0
  29. package/dist/core/keccak256.d.ts +15 -0
  30. package/dist/core/keccak256.d.ts.map +1 -0
  31. package/dist/core/keccak256.js +111 -0
  32. package/dist/core/keccak256.js.map +1 -0
  33. package/dist/core/key-custody.d.ts +33 -0
  34. package/dist/core/key-custody.d.ts.map +1 -0
  35. package/dist/core/key-custody.js +59 -0
  36. package/dist/core/key-custody.js.map +1 -0
  37. package/dist/core/meter-hash.d.ts +2 -0
  38. package/dist/core/meter-hash.d.ts.map +1 -0
  39. package/dist/core/meter-hash.js +8 -0
  40. package/dist/core/meter-hash.js.map +1 -0
  41. package/dist/core/meter-wire.d.ts +193 -0
  42. package/dist/core/meter-wire.d.ts.map +1 -0
  43. package/dist/core/meter-wire.js +418 -0
  44. package/dist/core/meter-wire.js.map +1 -0
  45. package/dist/core/output-signature.d.ts +162 -0
  46. package/dist/core/output-signature.d.ts.map +1 -0
  47. package/dist/core/output-signature.js +367 -0
  48. package/dist/core/output-signature.js.map +1 -0
  49. package/dist/core/presentation.d.ts +141 -0
  50. package/dist/core/presentation.d.ts.map +1 -0
  51. package/dist/core/presentation.js +160 -0
  52. package/dist/core/presentation.js.map +1 -0
  53. package/dist/core/recovery-seal.d.ts +36 -0
  54. package/dist/core/recovery-seal.d.ts.map +1 -0
  55. package/dist/core/recovery-seal.js +122 -0
  56. package/dist/core/recovery-seal.js.map +1 -0
  57. package/dist/core/server.d.ts +38 -0
  58. package/dist/core/server.d.ts.map +1 -0
  59. package/dist/core/server.js +106 -0
  60. package/dist/core/server.js.map +1 -0
  61. package/dist/core/thread-reader.d.ts +8 -0
  62. package/dist/core/thread-reader.d.ts.map +1 -0
  63. package/dist/core/thread-reader.js +47 -0
  64. package/dist/core/thread-reader.js.map +1 -0
  65. package/dist/core/tool-set.d.ts +28 -0
  66. package/dist/core/tool-set.d.ts.map +1 -0
  67. package/dist/core/tool-set.js +71 -0
  68. package/dist/core/tool-set.js.map +1 -0
  69. package/dist/core/tools.d.ts +151 -0
  70. package/dist/core/tools.d.ts.map +1 -0
  71. package/dist/core/tools.js +3623 -0
  72. package/dist/core/tools.js.map +1 -0
  73. package/dist/core/types.d.ts +189 -0
  74. package/dist/core/types.d.ts.map +1 -0
  75. package/dist/core/types.js +17 -0
  76. package/dist/core/types.js.map +1 -0
  77. package/dist/credentials.d.ts +46 -0
  78. package/dist/credentials.d.ts.map +1 -0
  79. package/dist/credentials.js +213 -0
  80. package/dist/credentials.js.map +1 -0
  81. package/dist/device-credentials.d.ts +57 -0
  82. package/dist/device-credentials.d.ts.map +1 -0
  83. package/dist/device-credentials.js +403 -0
  84. package/dist/device-credentials.js.map +1 -0
  85. package/dist/eip191.d.ts +18 -0
  86. package/dist/eip191.d.ts.map +1 -0
  87. package/dist/eip191.js +41 -0
  88. package/dist/eip191.js.map +1 -0
  89. package/dist/index.d.ts +21 -0
  90. package/dist/index.d.ts.map +1 -0
  91. package/dist/index.js +48 -0
  92. package/dist/index.js.map +1 -0
  93. package/dist/runtime-env.d.ts +131 -0
  94. package/dist/runtime-env.d.ts.map +1 -0
  95. package/dist/runtime-env.js +328 -0
  96. package/dist/runtime-env.js.map +1 -0
  97. package/dist/stdio.d.ts +6 -0
  98. package/dist/stdio.d.ts.map +1 -0
  99. package/dist/stdio.js +136 -0
  100. package/dist/stdio.js.map +1 -0
  101. package/package.json +60 -4
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/core/tools.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,189 @@
1
+ /**
2
+ * Shared MCP tool-core types.
3
+ *
4
+ * SHARED CORE — this file lives canonically in `provian-mcp/src/core/` and is
5
+ * mirrored byte-identically into `provian-backend/src/mcp/core/` (the relay's
6
+ * remote /mcp endpoint). Never edit the mirror directly; edit the canonical
7
+ * copy and run `scripts/sync-mcp-core.sh` from the repo root.
8
+ *
9
+ * The core is transport-agnostic: the stdio server (npx @provian/mcp) and the
10
+ * relay's streamable-HTTP /mcp endpoint both assemble the SAME tool set from
11
+ * these definitions. Handlers speak to the Provian REST API over fetch — they
12
+ * never reach into relay internals, so every existing auth path, rate limit,
13
+ * and credential scope applies unchanged.
14
+ */
15
+ /** Agent API credentials (`pvn_live_…` key + `pvns_…` secret). */
16
+ export interface ToolAuth {
17
+ apiKey: string;
18
+ apiSecret: string;
19
+ }
20
+ /** Client-owned identity persisted before the first device registration POST. */
21
+ export interface PendingDeviceRegistration {
22
+ registrationId: string;
23
+ deviceKey: string;
24
+ deviceSecret: string;
25
+ }
26
+ /** Local-only fund-bearing identity persisted before create_wallet networking. */
27
+ export interface PendingAgentWalletRegistration {
28
+ registrationId: string;
29
+ agentId: string;
30
+ agentName: string;
31
+ platform: string;
32
+ constitutionAcceptedAt: string;
33
+ privateKey: string;
34
+ publicKey: string;
35
+ address: string;
36
+ }
37
+ /** Local final identity plus the already-durable credentials needed to replay
38
+ * a tool response without generating a second key or contacting the relay. */
39
+ export interface CompletedAgentWalletRegistration extends PendingAgentWalletRegistration {
40
+ walletId: string;
41
+ apiKey: string;
42
+ apiSecret: string;
43
+ credentialsPersistedTo: string;
44
+ }
45
+ /** Per-call context handed to every tool handler. */
46
+ export interface ToolContext {
47
+ /** Provian relay base URL, no trailing slash (e.g. https://api.provian.ai). */
48
+ baseUrl: string;
49
+ /** Fetch implementation (native fetch on Node 18+). */
50
+ fetchImpl: typeof fetch;
51
+ /**
52
+ * Resolved agent credentials, if any. Local mode: from PROVIAN_API_KEY /
53
+ * PROVIAN_API_SECRET env or ~/.provian/agent-credentials.json. Remote mode:
54
+ * parsed from the caller's `Authorization: Bearer api_key:api_secret`
55
+ * header and forwarded verbatim to the REST API — the relay's EXISTING
56
+ * agent API auth middleware is the sole validator.
57
+ */
58
+ auth: ToolAuth | null;
59
+ /**
60
+ * 'local' — stdio server on the agent's machine. Private keys may be
61
+ * generated/used in-process and credentials persisted to disk.
62
+ * 'remote' — hosted /mcp endpoint. Never persists or generates wallet-key
63
+ * material; create_wallet fails before key generation.
64
+ */
65
+ mode: 'local' | 'remote';
66
+ /**
67
+ * Local mode only: persist freshly minted API credentials so later
68
+ * authenticated tool calls work without manual setup. Returns the path
69
+ * written, or null when persistence was skipped.
70
+ */
71
+ persistCredentials?: (creds: {
72
+ api_key: string;
73
+ api_secret: string;
74
+ wallet_id: string;
75
+ address: string;
76
+ }) => string | null;
77
+ /** Local mode only: load or create one encrypted pending wallet identity
78
+ * before GET /challenge. Handles both default and explicit agent IDs. */
79
+ loadOrCreatePendingAgentWalletRegistration?: (context: {
80
+ relay_url: string;
81
+ agent_name: string;
82
+ requested_agent_id: string | null;
83
+ platform: string;
84
+ }) => PendingAgentWalletRegistration;
85
+ /** Local mode only: authenticate and reload the exact pending bytes after
86
+ * GET /challenge. Must reject any mutation before the create POST. */
87
+ reloadPendingAgentWalletRegistration?: (context: {
88
+ relay_url: string;
89
+ agent_name: string;
90
+ requested_agent_id: string | null;
91
+ platform: string;
92
+ }, expected: PendingAgentWalletRegistration) => PendingAgentWalletRegistration;
93
+ /** Local mode only: return a fully completed identity whose original tool
94
+ * response may have been lost. Must validate the exact relay/name/id/platform
95
+ * context and credential-wallet binding before returning. */
96
+ loadCompletedAgentWalletRegistration?: (context: {
97
+ relay_url: string;
98
+ agent_name: string;
99
+ requested_agent_id: string | null;
100
+ platform: string;
101
+ }) => CompletedAgentWalletRegistration | null;
102
+ /** Promote the encrypted pending key to the final local identity only after
103
+ * wallet credentials and identity have been acknowledged. */
104
+ completePendingAgentWalletRegistration?: (registrationId: string, wallet: {
105
+ wallet_id: string;
106
+ address: string;
107
+ }, context: {
108
+ relay_url: string;
109
+ agent_name: string;
110
+ requested_agent_id: string | null;
111
+ platform: string;
112
+ }) => string;
113
+ /**
114
+ * Local mode only: EIP-191 personal_sign over a UTF-8 message, used by
115
+ * link_external_address's single-call convenience (sign the challenge with
116
+ * a caller-supplied external key without the key leaving the machine).
117
+ * Deliberately ABSENT on the remote endpoint — it refuses private-key
118
+ * material, so the shared core carries no signing dependency.
119
+ */
120
+ signEip191?: (privateKeyHex: string, message: string) => string;
121
+ /**
122
+ * fetch a DOMAIN requester's published Ed25519 keys
123
+ * (`https://<domain>/.well-known/provian-requester.json`) for a signed-challenge verdict.
124
+ * Optional override (tests, a host with its own guarded egress); when absent the core uses its
125
+ * own SSRF-guarded fetch (`fetchRequesterKeysGuarded` in challenge.ts). Must throw on any failure.
126
+ */
127
+ fetchRequesterKeys?: (domain: string) => Promise<ReadonlyArray<{
128
+ kty: string;
129
+ crv?: string;
130
+ x?: string;
131
+ kid: string;
132
+ }>>;
133
+ /**
134
+ * Local mode only: run `fn` with the agent's OWN encrypted sovereign identity,
135
+ * decrypted in-process from the durable keystore (loadCompletedAgentWalletIdentity)
136
+ * under PROVIAN_KEYSTORE_PASSPHRASE. The private key is confined to the signing
137
+ * closures on the provided `id` and is NEVER returned to the caller nor placed
138
+ * in any tool argument or result — this is what lets present sign a
139
+ * binding without the sovereign key ever entering the model
140
+ * context (F32). Deliberately ABSENT on the remote endpoint, which holds no
141
+ * durable key material and is handed pre-signed fields instead. Throws when no
142
+ * completed local identity exists (run create_wallet first).
143
+ */
144
+ withLocalSovereignIdentity?: <T>(fn: (id: {
145
+ address: string;
146
+ walletId: string;
147
+ pubkey: string;
148
+ signEip191: (message: string) => string;
149
+ signPop: (binding: string) => string;
150
+ /**
151
+ * seal this identity's wallet key to a recovery anchor (base64url X25519 public key) and
152
+ * return ONLY the base64url ciphertext (recovery-seal.ts). The key itself never leaves the closure.
153
+ */
154
+ sealRecoveryKey?: (anchorPubkeyB64u: string) => string;
155
+ /** Decrypt only on the owner machine; never exposes the key to a tool argument or result. */
156
+ readThreadMessage?: (ciphertext: string) => import('./thread-reader').ThreadTextView;
157
+ }) => T) => T;
158
+ }
159
+ /** Device credentials for DeviceKey-authenticated PE submission. */
160
+ export interface DeviceAuth {
161
+ deviceKey: string;
162
+ deviceSecret: string;
163
+ }
164
+ /** MCP text content block (the only content type the core emits).
165
+ * Type alias (not interface) so it picks up TypeScript's implicit index
166
+ * signature and stays assignable to the MCP SDK's CallToolResult. */
167
+ export type ToolResultContent = {
168
+ type: 'text';
169
+ text: string;
170
+ };
171
+ /** Shape returned by every tool handler (subset of MCP CallToolResult). */
172
+ export type ToolResult = {
173
+ content: ToolResultContent[];
174
+ isError?: boolean;
175
+ };
176
+ /** A single Provian tool definition, transport-agnostic. */
177
+ export interface ProvianToolDef {
178
+ name: string;
179
+ description: string;
180
+ /** JSON Schema for the tool arguments. */
181
+ inputSchema: Record<string, unknown>;
182
+ /**
183
+ * True when the tool writes on the caller's behalf and therefore requires
184
+ * agent API credentials. Read/bootstrap tools stay usable with no auth.
185
+ */
186
+ requiresAuth: boolean;
187
+ handler: (args: Record<string, unknown>, ctx: ToolContext) => Promise<ToolResult>;
188
+ }
189
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ /**
3
+ * Shared MCP tool-core types.
4
+ *
5
+ * SHARED CORE — this file lives canonically in `provian-mcp/src/core/` and is
6
+ * mirrored byte-identically into `provian-backend/src/mcp/core/` (the relay's
7
+ * remote /mcp endpoint). Never edit the mirror directly; edit the canonical
8
+ * copy and run `scripts/sync-mcp-core.sh` from the repo root.
9
+ *
10
+ * The core is transport-agnostic: the stdio server (npx @provian/mcp) and the
11
+ * relay's streamable-HTTP /mcp endpoint both assemble the SAME tool set from
12
+ * these definitions. Handlers speak to the Provian REST API over fetch — they
13
+ * never reach into relay internals, so every existing auth path, rate limit,
14
+ * and credential scope applies unchanged.
15
+ */
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;GAaG"}
@@ -0,0 +1,46 @@
1
+ /**
2
+ * Local credential resolution for the stdio MCP server.
3
+ *
4
+ * Precedence:
5
+ * 1. PROVIAN_API_KEY + PROVIAN_API_SECRET environment variables
6
+ * 2. ~/.provian/agent-credentials.json — the same hand-droppable file the
7
+ * SDK's register-device / invite-device scripts read
8
+ *
9
+ * The file loader mirrors the SDK's `agent-credentials-file.ts` exactly,
10
+ * including the security posture: on POSIX the file is REFUSED when more
11
+ * permissive than 0600 (it carries a long-lived agent secret; a wrong chmod
12
+ * fails loudly rather than treating the secret as world-readable). Do not
13
+ * weaken the 0600 check.
14
+ */
15
+ import type { ToolAuth } from './core/types';
16
+ export declare const AGENT_CREDS_PATH: string;
17
+ interface AgentCredentialsFile {
18
+ api_key?: string;
19
+ api_secret?: string;
20
+ wallet_id?: string;
21
+ address?: string;
22
+ }
23
+ /**
24
+ * Load + validate ~/.provian/agent-credentials.json. Returns null when the
25
+ * file is missing, too permissive (POSIX), unparseable, or malformed.
26
+ */
27
+ export declare function loadAgentCredentialsFile(credsPath?: string): AgentCredentialsFile | null;
28
+ /** Load only the exact current wallet-bound shape. Legacy API-only files may
29
+ * authenticate existing calls but cannot prove completed-wallet recovery. */
30
+ export declare function loadBoundAgentCredentialsFile(credsPath?: string): Required<AgentCredentialsFile> | null;
31
+ /** Resolve credentials: env first, then the credentials file. */
32
+ export declare function resolveLocalAuth(env?: NodeJS.ProcessEnv, credsPath?: string): ToolAuth | null;
33
+ /**
34
+ * Persist freshly minted credentials to ~/.provian/agent-credentials.json
35
+ * (0600, directory 0700) so subsequent authenticated tool calls work.
36
+ * Replaces only credentials for the same wallet so a response-loss recovery
37
+ * can durably install the newly rotated pair. A different wallet fails closed.
38
+ */
39
+ export declare function persistAgentCredentials(creds: {
40
+ api_key: string;
41
+ api_secret: string;
42
+ wallet_id: string;
43
+ address: string;
44
+ }, credsPath?: string): string | null;
45
+ export {};
46
+ //# sourceMappingURL=credentials.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"credentials.d.ts","sourceRoot":"","sources":["../src/credentials.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAMH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAE7C,eAAO,MAAM,gBAAgB,QAA6D,CAAC;AAE3F,UAAU,oBAAoB;IAC5B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAwCD;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,SAAS,GAAE,MAAyB,GAAG,oBAAoB,GAAG,IAAI,CA0B1G;AAED;6EAC6E;AAC7E,wBAAgB,6BAA6B,CAC3C,SAAS,GAAE,MAAyB,GACnC,QAAQ,CAAC,oBAAoB,CAAC,GAAG,IAAI,CAGvC;AAED,iEAAiE;AACjE,wBAAgB,gBAAgB,CAC9B,GAAG,GAAE,MAAM,CAAC,UAAwB,EACpC,SAAS,GAAE,MAAyB,GACnC,QAAQ,GAAG,IAAI,CAWjB;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CACrC,KAAK,EAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,EAClF,SAAS,GAAE,MAAyB,GACnC,MAAM,GAAG,IAAI,CAsCf"}