@manifest-network/manifest-mcp-fred 0.12.0 → 0.13.0

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
@@ -14,21 +14,5 @@ import { resolveProviderUrl } from "./tools/resolveLeaseProvider.js";
14
14
  import { restartApp } from "./tools/restartApp.js";
15
15
  import { updateApp } from "./tools/updateApp.js";
16
16
  import { WaitForAppReadyOptions, WaitForAppReadyResult, waitForAppReady } from "./tools/waitForAppReady.js";
17
- import { CosmosClientManager, INFRASTRUCTURE_ERROR_CODES, ManifestMCPError, ManifestMCPErrorCode, ManifestMCPServerOptions, ManifestMCPServerOptions as ManifestMCPServerOptions$1, MnemonicServerConfig } from "@manifest-network/manifest-mcp-core";
18
- import { Server } from "@modelcontextprotocol/sdk/server/index.js";
19
-
20
- //#region src/index.d.ts
21
- declare class FredMCPServer {
22
- private mcpServer;
23
- private clientManager;
24
- private walletProvider;
25
- private authTokens;
26
- constructor(options: ManifestMCPServerOptions$1);
27
- getServer(): Server;
28
- getClientManager(): CosmosClientManager;
29
- disconnect(): void;
30
- }
31
- declare function createMnemonicFredServer(config: MnemonicServerConfig): Promise<FredMCPServer>;
32
- //#endregion
33
- export { AuthTimestampTracker, type AuthTokenPayload, type BuildManifestOptions, type BuildManifestPreviewInput, type BuildManifestPreviewResult, type CheckDeploymentReadinessInput, type CheckDeploymentReadinessResult, type ConnectionDetails, type DeployAppInput, type DeployAppResult, type DeployManifestInput, type DeployManifestOptions, type FredActionResponse, type FredInstanceInfo, type FredLeaseInfo, type FredLeaseLogs, type FredLeaseProvision, type FredLeaseRelease, type FredLeaseReleases, type FredLeaseStatus, FredMCPServer, type FredServiceStatus, INFRASTRUCTURE_ERROR_CODES, type InstanceInfo, type LeaseConnectionResponse, MAX_TAIL, type ManifestFormat, ManifestMCPError, ManifestMCPErrorCode, type ManifestMCPServerOptions, type ManifestPreviewServiceInput, type ManifestValidationResult, type PollOptions, ProviderApiError, type ProviderHealthResponse, type ServiceConfig, type ServiceConnectionDetails, type SkuSelector, type SkuSummary, type TerminalChainLeaseState, type TerminalChainState, type TerminalChainStateContext, TerminalChainStateError, type WaitForAppReadyOptions, type WaitForAppReadyResult, appStatus, browseCatalog, buildManifest, buildManifestPreview, buildStackManifest, checkDeploymentReadiness, checkedFetch, createAuthToken, createLeaseDataSignMessage, createMnemonicFredServer, createSignMessage, deployApp, deployManifest, deriveAppNameFromImage, fetchActiveLease, getAppLogs, getLeaseConnectionInfo, getLeaseInfo, getLeaseLogs, getLeaseProvision, getLeaseReleases, getLeaseStatus, getProviderHealth, getServiceNames, isStackManifest, mapWithConcurrency, mergeManifest, metaHashHex, normalizePorts, parseStackManifest, pollLeaseUntilReady, resolveProviderUrl, restartApp, restartLease, updateApp, updateLease, uploadLeaseData, validateManifest, validateProviderUrl, validateServiceName, waitForAppReady };
34
- //# sourceMappingURL=index.d.ts.map
17
+ import { INFRASTRUCTURE_ERROR_CODES, ManifestMCPError, ManifestMCPErrorCode, ManifestMCPServerOptions } from "@manifest-network/manifest-mcp-core";
18
+ export { AuthTimestampTracker, type AuthTokenPayload, type BuildManifestOptions, type BuildManifestPreviewInput, type BuildManifestPreviewResult, type CheckDeploymentReadinessInput, type CheckDeploymentReadinessResult, type ConnectionDetails, type DeployAppInput, type DeployAppResult, type DeployManifestInput, type DeployManifestOptions, type FredActionResponse, type FredInstanceInfo, type FredLeaseInfo, type FredLeaseLogs, type FredLeaseProvision, type FredLeaseRelease, type FredLeaseReleases, type FredLeaseStatus, type FredServiceStatus, INFRASTRUCTURE_ERROR_CODES, type InstanceInfo, type LeaseConnectionResponse, MAX_TAIL, type ManifestFormat, ManifestMCPError, ManifestMCPErrorCode, type ManifestMCPServerOptions, type ManifestPreviewServiceInput, type ManifestValidationResult, type PollOptions, ProviderApiError, type ProviderHealthResponse, type ServiceConfig, type ServiceConnectionDetails, type SkuSelector, type SkuSummary, type TerminalChainLeaseState, type TerminalChainState, type TerminalChainStateContext, TerminalChainStateError, type WaitForAppReadyOptions, type WaitForAppReadyResult, appStatus, browseCatalog, buildManifest, buildManifestPreview, buildStackManifest, checkDeploymentReadiness, checkedFetch, createAuthToken, createLeaseDataSignMessage, createSignMessage, deployApp, deployManifest, deriveAppNameFromImage, fetchActiveLease, getAppLogs, getLeaseConnectionInfo, getLeaseInfo, getLeaseLogs, getLeaseProvision, getLeaseReleases, getLeaseStatus, getProviderHealth, getServiceNames, isStackManifest, mapWithConcurrency, mergeManifest, metaHashHex, normalizePorts, parseStackManifest, pollLeaseUntilReady, resolveProviderUrl, restartApp, restartLease, updateApp, updateLease, uploadLeaseData, validateManifest, validateProviderUrl, validateServiceName, waitForAppReady };
package/dist/index.js CHANGED
@@ -1,14 +1,10 @@
1
1
  import { AuthTimestampTracker, createAuthToken, createLeaseDataSignMessage, createSignMessage } from "./http/auth.js";
2
- import { AuthTokenService } from "./http/auth-token-service.js";
3
- import { resolveGuardedFetch } from "./server/fetch-gate.js";
4
- import { registerPrompts } from "./server/register-prompts.js";
5
- import { registerResources } from "./server/register-resources.js";
6
2
  import { ProviderApiError, checkedFetch, getLeaseConnectionInfo, getProviderHealth, uploadLeaseData, validateProviderUrl } from "./http/provider.js";
7
3
  import { MAX_TAIL, TerminalChainStateError, getLeaseInfo, getLeaseLogs, getLeaseProvision, getLeaseReleases, getLeaseStatus, pollLeaseUntilReady, restartLease, updateLease } from "./http/fred.js";
4
+ import { buildManifest, buildStackManifest, deriveAppNameFromImage, getServiceNames, isStackManifest, mergeManifest, metaHashHex, normalizePorts, parseStackManifest, validateManifest, validateServiceName } from "./manifest.js";
8
5
  import { resolveProviderUrl } from "./tools/resolveLeaseProvider.js";
9
6
  import { appStatus } from "./tools/appStatus.js";
10
7
  import { browseCatalog, mapWithConcurrency } from "./tools/browseCatalog.js";
11
- import { buildManifest, buildStackManifest, deriveAppNameFromImage, getServiceNames, isStackManifest, mergeManifest, metaHashHex, normalizePorts, parseStackManifest, validateManifest, validateServiceName } from "./manifest.js";
12
8
  import { buildManifestPreview } from "./tools/buildManifestPreview.js";
13
9
  import { checkDeploymentReadiness } from "./tools/checkDeploymentReadiness.js";
14
10
  import { deployManifest } from "./tools/deployManifest.js";
@@ -18,53 +14,5 @@ import { getAppLogs } from "./tools/getLogs.js";
18
14
  import { restartApp } from "./tools/restartApp.js";
19
15
  import { updateApp } from "./tools/updateApp.js";
20
16
  import { waitForAppReady } from "./tools/waitForAppReady.js";
21
- import { registerTools } from "./server/register-tools.js";
22
- import { CosmosClientManager, INFRASTRUCTURE_ERROR_CODES, ManifestMCPError, ManifestMCPErrorCode, VERSION, createMnemonicServer, createValidatedConfig } from "@manifest-network/manifest-mcp-core";
23
- import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
24
- //#region src/index.ts
25
- var FredMCPServer = class {
26
- constructor(options) {
27
- const config = createValidatedConfig(options.config);
28
- this.walletProvider = options.walletProvider;
29
- this.clientManager = CosmosClientManager.getInstance(config, this.walletProvider);
30
- this.authTokens = new AuthTokenService(this.walletProvider);
31
- this.mcpServer = new McpServer({
32
- name: "@manifest-network/manifest-mcp-fred",
33
- version: VERSION
34
- }, { capabilities: {
35
- tools: {},
36
- resources: {},
37
- prompts: {}
38
- } });
39
- const fetchFn = resolveGuardedFetch(typeof process !== "undefined" ? process.env.MANIFEST_FRED_FETCH_GUARDED : void 0, typeof process !== "undefined" && !!process.versions?.node);
40
- registerTools({
41
- mcpServer: this.mcpServer,
42
- clientManager: this.clientManager,
43
- walletProvider: this.walletProvider,
44
- authTokens: this.authTokens,
45
- fetchFn
46
- });
47
- registerResources({
48
- mcpServer: this.mcpServer,
49
- clientManager: this.clientManager,
50
- walletProvider: this.walletProvider
51
- });
52
- registerPrompts(this.mcpServer);
53
- }
54
- getServer() {
55
- return this.mcpServer.server;
56
- }
57
- getClientManager() {
58
- return this.clientManager;
59
- }
60
- disconnect() {
61
- this.clientManager.disconnect();
62
- }
63
- };
64
- function createMnemonicFredServer(config) {
65
- return createMnemonicServer(config, FredMCPServer);
66
- }
67
- //#endregion
68
- export { AuthTimestampTracker, FredMCPServer, INFRASTRUCTURE_ERROR_CODES, MAX_TAIL, ManifestMCPError, ManifestMCPErrorCode, ProviderApiError, TerminalChainStateError, appStatus, browseCatalog, buildManifest, buildManifestPreview, buildStackManifest, checkDeploymentReadiness, checkedFetch, createAuthToken, createLeaseDataSignMessage, createMnemonicFredServer, createSignMessage, deployApp, deployManifest, deriveAppNameFromImage, fetchActiveLease, getAppLogs, getLeaseConnectionInfo, getLeaseInfo, getLeaseLogs, getLeaseProvision, getLeaseReleases, getLeaseStatus, getProviderHealth, getServiceNames, isStackManifest, mapWithConcurrency, mergeManifest, metaHashHex, normalizePorts, parseStackManifest, pollLeaseUntilReady, resolveProviderUrl, restartApp, restartLease, updateApp, updateLease, uploadLeaseData, validateManifest, validateProviderUrl, validateServiceName, waitForAppReady };
69
-
70
- //# sourceMappingURL=index.js.map
17
+ import { INFRASTRUCTURE_ERROR_CODES, ManifestMCPError, ManifestMCPErrorCode } from "@manifest-network/manifest-mcp-core";
18
+ export { AuthTimestampTracker, INFRASTRUCTURE_ERROR_CODES, MAX_TAIL, ManifestMCPError, ManifestMCPErrorCode, ProviderApiError, TerminalChainStateError, appStatus, browseCatalog, buildManifest, buildManifestPreview, buildStackManifest, checkDeploymentReadiness, checkedFetch, createAuthToken, createLeaseDataSignMessage, createSignMessage, deployApp, deployManifest, deriveAppNameFromImage, fetchActiveLease, getAppLogs, getLeaseConnectionInfo, getLeaseInfo, getLeaseLogs, getLeaseProvision, getLeaseReleases, getLeaseStatus, getProviderHealth, getServiceNames, isStackManifest, mapWithConcurrency, mergeManifest, metaHashHex, normalizePorts, parseStackManifest, pollLeaseUntilReady, resolveProviderUrl, restartApp, restartLease, updateApp, updateLease, uploadLeaseData, validateManifest, validateProviderUrl, validateServiceName, waitForAppReady };
@@ -0,0 +1,18 @@
1
+ import { CosmosClientManager, ManifestMCPServerOptions, ManifestMCPServerOptions as ManifestMCPServerOptions$1, MnemonicServerConfig } from "@manifest-network/manifest-mcp-core";
2
+ import { Server } from "@modelcontextprotocol/sdk/server/index.js";
3
+
4
+ //#region src/server/index.d.ts
5
+ declare class FredMCPServer {
6
+ private mcpServer;
7
+ private clientManager;
8
+ private walletProvider;
9
+ private authTokens;
10
+ constructor(options: ManifestMCPServerOptions$1);
11
+ getServer(): Server;
12
+ getClientManager(): CosmosClientManager;
13
+ disconnect(): void;
14
+ }
15
+ declare function createMnemonicFredServer(config: MnemonicServerConfig): Promise<FredMCPServer>;
16
+ //#endregion
17
+ export { FredMCPServer, type ManifestMCPServerOptions, createMnemonicFredServer };
18
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","names":[],"sources":["../../src/server/index.ts"],"mappings":";;;;cAyBa,aAAA;EAAA,QACH,SAAA;EAAA,QACA,aAAA;EAAA,QACA,cAAA;EAAA,QACA,UAAA;cAEI,OAAA,EAAS,0BAAA;EAiDrB,SAAA,IAAa,MAAA;EAIb,gBAAA,IAAoB,mBAAA;EAIpB,UAAA;AAAA;AAAA,iBAKc,wBAAA,CACd,MAAA,EAAQ,oBAAA,GACP,OAAA,CAAQ,aAAA"}
@@ -0,0 +1,54 @@
1
+ import { AuthTokenService } from "../http/auth-token-service.js";
2
+ import { resolveGuardedFetch } from "./fetch-gate.js";
3
+ import { registerPrompts } from "./register-prompts.js";
4
+ import { registerResources } from "./register-resources.js";
5
+ import { registerTools } from "./register-tools.js";
6
+ import { CosmosClientManager, VERSION, createMnemonicServer, createValidatedConfig } from "@manifest-network/manifest-mcp-core";
7
+ import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
8
+ //#region src/server/index.ts
9
+ var FredMCPServer = class {
10
+ constructor(options) {
11
+ const config = createValidatedConfig(options.config);
12
+ this.walletProvider = options.walletProvider;
13
+ this.clientManager = CosmosClientManager.getInstance(config, this.walletProvider);
14
+ this.authTokens = new AuthTokenService(this.walletProvider);
15
+ this.mcpServer = new McpServer({
16
+ name: "@manifest-network/manifest-mcp-fred",
17
+ version: VERSION
18
+ }, { capabilities: {
19
+ tools: {},
20
+ resources: {},
21
+ prompts: {}
22
+ } });
23
+ const fetchFn = resolveGuardedFetch(typeof process !== "undefined" ? process.env.MANIFEST_FRED_FETCH_GUARDED : void 0, typeof process !== "undefined" && !!process.versions?.node);
24
+ registerTools({
25
+ mcpServer: this.mcpServer,
26
+ clientManager: this.clientManager,
27
+ walletProvider: this.walletProvider,
28
+ authTokens: this.authTokens,
29
+ fetchFn
30
+ });
31
+ registerResources({
32
+ mcpServer: this.mcpServer,
33
+ clientManager: this.clientManager,
34
+ walletProvider: this.walletProvider
35
+ });
36
+ registerPrompts(this.mcpServer);
37
+ }
38
+ getServer() {
39
+ return this.mcpServer.server;
40
+ }
41
+ getClientManager() {
42
+ return this.clientManager;
43
+ }
44
+ disconnect() {
45
+ this.clientManager.disconnect();
46
+ }
47
+ };
48
+ function createMnemonicFredServer(config) {
49
+ return createMnemonicServer(config, FredMCPServer);
50
+ }
51
+ //#endregion
52
+ export { FredMCPServer, createMnemonicFredServer };
53
+
54
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../src/server/index.ts"],"sourcesContent":["// MCP-server entry for fred, exported at the Node-only\n// `@manifest-network/manifest-mcp-fred/server` subpath. Kept OUT of the main\n// barrel (`../index.ts`) so browser consumers of fred's capability functions\n// (`deployManifest`, `restartApp`, …) don't drag in the MCP server machinery\n// (`McpServer`, `register-*`, the SSRF `fetch-gate` → core's Node-only\n// `/guarded-fetch`). Same barrel-hygiene split ENG-281 applied to core. (ENG-287)\nimport type { WalletProvider } from '@manifest-network/manifest-mcp-core';\nimport {\n CosmosClientManager,\n createMnemonicServer,\n createValidatedConfig,\n type ManifestMCPServerOptions,\n type MnemonicServerConfig,\n VERSION,\n} from '@manifest-network/manifest-mcp-core';\nimport type { Server } from '@modelcontextprotocol/sdk/server/index.js';\nimport { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';\nimport { AuthTokenService } from '../http/auth-token-service.js';\nimport { resolveGuardedFetch } from './fetch-gate.js';\nimport { registerPrompts } from './register-prompts.js';\nimport { registerResources } from './register-resources.js';\nimport { registerTools } from './register-tools.js';\n\nexport type { ManifestMCPServerOptions } from '@manifest-network/manifest-mcp-core';\n\nexport class FredMCPServer {\n private mcpServer: McpServer;\n private clientManager: CosmosClientManager;\n private walletProvider: WalletProvider;\n private authTokens: AuthTokenService;\n\n constructor(options: ManifestMCPServerOptions) {\n const config = createValidatedConfig(options.config);\n this.walletProvider = options.walletProvider;\n this.clientManager = CosmosClientManager.getInstance(\n config,\n this.walletProvider,\n );\n this.authTokens = new AuthTokenService(this.walletProvider);\n\n this.mcpServer = new McpServer(\n {\n name: '@manifest-network/manifest-mcp-fred',\n version: VERSION,\n },\n {\n capabilities: {\n tools: {},\n resources: {},\n prompts: {},\n },\n },\n );\n\n // SSRF guard (ENG-268). Fred fetches provider/Fred APIs at URLs sourced\n // from on-chain SKU records, so a malicious provider could point them at\n // an internal host. Route all outbound HTTP through an SSRF-guarded fetch\n // by default; operators opt out with MANIFEST_FRED_FETCH_GUARDED=0.\n const fetchFn = resolveGuardedFetch(\n typeof process !== 'undefined'\n ? process.env.MANIFEST_FRED_FETCH_GUARDED\n : undefined,\n typeof process !== 'undefined' && !!process.versions?.node,\n );\n\n registerTools({\n mcpServer: this.mcpServer,\n clientManager: this.clientManager,\n walletProvider: this.walletProvider,\n authTokens: this.authTokens,\n fetchFn,\n });\n registerResources({\n mcpServer: this.mcpServer,\n clientManager: this.clientManager,\n walletProvider: this.walletProvider,\n });\n registerPrompts(this.mcpServer);\n }\n\n getServer(): Server {\n return this.mcpServer.server;\n }\n\n getClientManager(): CosmosClientManager {\n return this.clientManager;\n }\n\n disconnect(): void {\n this.clientManager.disconnect();\n }\n}\n\nexport function createMnemonicFredServer(\n config: MnemonicServerConfig,\n): Promise<FredMCPServer> {\n return createMnemonicServer(config, FredMCPServer);\n}\n"],"mappings":";;;;;;;;AAyBA,IAAa,gBAAb,MAA2B;CAMzB,YAAY,SAAmC;EAC7C,MAAM,SAAS,sBAAsB,QAAQ,MAAM;EACnD,KAAK,iBAAiB,QAAQ;EAC9B,KAAK,gBAAgB,oBAAoB,YACvC,QACA,KAAK,cACP;EACA,KAAK,aAAa,IAAI,iBAAiB,KAAK,cAAc;EAE1D,KAAK,YAAY,IAAI,UACnB;GACE,MAAM;GACN,SAAS;EACX,GACA,EACE,cAAc;GACZ,OAAO,CAAC;GACR,WAAW,CAAC;GACZ,SAAS,CAAC;EACZ,EACF,CACF;EAMA,MAAM,UAAU,oBACd,OAAO,YAAY,cACf,QAAQ,IAAI,8BACZ,KAAA,GACJ,OAAO,YAAY,eAAe,CAAC,CAAC,QAAQ,UAAU,IACxD;EAEA,cAAc;GACZ,WAAW,KAAK;GAChB,eAAe,KAAK;GACpB,gBAAgB,KAAK;GACrB,YAAY,KAAK;GACjB;EACF,CAAC;EACD,kBAAkB;GAChB,WAAW,KAAK;GAChB,eAAe,KAAK;GACpB,gBAAgB,KAAK;EACvB,CAAC;EACD,gBAAgB,KAAK,SAAS;CAChC;CAEA,YAAoB;EAClB,OAAO,KAAK,UAAU;CACxB;CAEA,mBAAwC;EACtC,OAAO,KAAK;CACd;CAEA,aAAmB;EACjB,KAAK,cAAc,WAAW;CAChC;AACF;AAEA,SAAgB,yBACd,QACwB;CACxB,OAAO,qBAAqB,QAAQ,aAAa;AACnD"}
@@ -1,7 +1,7 @@
1
1
  import { getLeaseConnectionInfo, uploadLeaseData } from "../http/provider.js";
2
2
  import { TerminalChainStateError, pollLeaseUntilReady } from "../http/fred.js";
3
- import { resolveProviderUrl } from "./resolveLeaseProvider.js";
4
3
  import { getServiceNames, metaHashHex, validateManifest } from "../manifest.js";
4
+ import { resolveProviderUrl } from "./resolveLeaseProvider.js";
5
5
  import { MAX_PAGE_LIMIT, ManifestMCPError, ManifestMCPErrorCode, cosmosTx, createPagination, logger, requireUuid, sanitizeForLogging, setItemCustomDomain } from "@manifest-network/manifest-mcp-core";
6
6
  //#region src/tools/deployManifest.ts
7
7
  function extractLeaseUuid(txResult) {
@@ -1,6 +1,6 @@
1
1
  import { updateLease } from "../http/fred.js";
2
- import { resolveProviderUrl } from "./resolveLeaseProvider.js";
3
2
  import { isStackManifest, mergeManifest, validateServiceName } from "../manifest.js";
3
+ import { resolveProviderUrl } from "./resolveLeaseProvider.js";
4
4
  import { fetchActiveLease } from "./fetchActiveLease.js";
5
5
  import { ManifestMCPError, ManifestMCPErrorCode } from "@manifest-network/manifest-mcp-core";
6
6
  //#region src/tools/updateApp.ts
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@manifest-network/manifest-mcp-fred",
3
- "version": "0.12.0",
3
+ "version": "0.13.0",
4
4
  "description": "MCP server for Manifest provider (Fred) operations (deploy, status, logs, restart, update)",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -9,6 +9,11 @@
9
9
  ".": {
10
10
  "import": "./dist/index.js",
11
11
  "types": "./dist/index.d.ts"
12
+ },
13
+ "./server": {
14
+ "types": "./dist/server/index.d.ts",
15
+ "node": "./dist/server/index.js",
16
+ "default": null
12
17
  }
13
18
  },
14
19
  "scripts": {
@@ -46,7 +51,7 @@
46
51
  ],
47
52
  "dependencies": {
48
53
  "@cosmjs/encoding": "0.32.4",
49
- "@manifest-network/manifest-mcp-core": "^0.12.0",
54
+ "@manifest-network/manifest-mcp-core": "^0.13.0",
50
55
  "@modelcontextprotocol/sdk": "1.29.0",
51
56
  "zod": "^4.3.6"
52
57
  },
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","names":[],"sources":["../src/index.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;cAyHa,aAAA;EAAA,QACH,SAAA;EAAA,QACA,aAAA;EAAA,QACA,cAAA;EAAA,QACA,UAAA;cAEI,OAAA,EAAS,0BAAA;EAiDrB,SAAA,IAAa,MAAA;EAIb,gBAAA,IAAoB,mBAAA;EAIpB,UAAA;AAAA;AAAA,iBAKc,wBAAA,CACd,MAAA,EAAQ,oBAAA,GACP,OAAA,CAAQ,aAAA"}
package/dist/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["../src/index.ts"],"sourcesContent":["import type { WalletProvider } from '@manifest-network/manifest-mcp-core';\nimport {\n CosmosClientManager,\n createMnemonicServer,\n createValidatedConfig,\n type ManifestMCPServerOptions,\n type MnemonicServerConfig,\n VERSION,\n} from '@manifest-network/manifest-mcp-core';\nimport type { Server } from '@modelcontextprotocol/sdk/server/index.js';\nimport { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';\nimport { AuthTokenService } from './http/auth-token-service.js';\nimport { resolveGuardedFetch } from './server/fetch-gate.js';\nimport { registerPrompts } from './server/register-prompts.js';\nimport { registerResources } from './server/register-resources.js';\nimport { registerTools } from './server/register-tools.js';\n\nexport type { ManifestMCPServerOptions } from '@manifest-network/manifest-mcp-core';\nexport {\n INFRASTRUCTURE_ERROR_CODES,\n ManifestMCPError,\n ManifestMCPErrorCode,\n} from '@manifest-network/manifest-mcp-core';\nexport {\n AuthTimestampTracker,\n type AuthTokenPayload,\n createAuthToken,\n createLeaseDataSignMessage,\n createSignMessage,\n} from './http/auth.js';\nexport {\n type FredActionResponse,\n type FredInstanceInfo,\n type FredLeaseInfo,\n type FredLeaseLogs,\n type FredLeaseProvision,\n type FredLeaseRelease,\n type FredLeaseReleases,\n type FredLeaseStatus,\n type FredServiceStatus,\n getLeaseInfo,\n getLeaseLogs,\n getLeaseProvision,\n getLeaseReleases,\n getLeaseStatus,\n MAX_TAIL,\n type PollOptions,\n pollLeaseUntilReady,\n restartLease,\n type TerminalChainLeaseState,\n type TerminalChainState,\n type TerminalChainStateContext,\n TerminalChainStateError,\n updateLease,\n} from './http/fred.js';\nexport {\n type ConnectionDetails,\n checkedFetch,\n getLeaseConnectionInfo,\n getProviderHealth,\n type InstanceInfo,\n type LeaseConnectionResponse,\n ProviderApiError,\n type ProviderHealthResponse,\n type ServiceConnectionDetails,\n uploadLeaseData,\n validateProviderUrl,\n} from './http/provider.js';\nexport {\n type BuildManifestOptions,\n buildManifest,\n buildStackManifest,\n deriveAppNameFromImage,\n getServiceNames,\n isStackManifest,\n type ManifestFormat,\n type ManifestValidationResult,\n mergeManifest,\n metaHashHex,\n normalizePorts,\n parseStackManifest,\n validateManifest,\n validateServiceName,\n} from './manifest.js';\nexport { appStatus } from './tools/appStatus.js';\nexport { browseCatalog, mapWithConcurrency } from './tools/browseCatalog.js';\nexport {\n type BuildManifestPreviewInput,\n type BuildManifestPreviewResult,\n buildManifestPreview,\n type ManifestPreviewServiceInput,\n} from './tools/buildManifestPreview.js';\nexport {\n type CheckDeploymentReadinessInput,\n type CheckDeploymentReadinessResult,\n checkDeploymentReadiness,\n type SkuSummary,\n} from './tools/checkDeploymentReadiness.js';\nexport {\n type DeployAppInput,\n type DeployAppResult,\n deployApp,\n type ServiceConfig,\n} from './tools/deployApp.js';\nexport {\n type DeployManifestInput,\n type DeployManifestOptions,\n deployManifest,\n type SkuSelector,\n} from './tools/deployManifest.js';\nexport { fetchActiveLease } from './tools/fetchActiveLease.js';\nexport { getAppLogs } from './tools/getLogs.js';\nexport { resolveProviderUrl } from './tools/resolveLeaseProvider.js';\nexport { restartApp } from './tools/restartApp.js';\nexport { updateApp } from './tools/updateApp.js';\nexport {\n type WaitForAppReadyOptions,\n type WaitForAppReadyResult,\n waitForAppReady,\n} from './tools/waitForAppReady.js';\n\nexport class FredMCPServer {\n private mcpServer: McpServer;\n private clientManager: CosmosClientManager;\n private walletProvider: WalletProvider;\n private authTokens: AuthTokenService;\n\n constructor(options: ManifestMCPServerOptions) {\n const config = createValidatedConfig(options.config);\n this.walletProvider = options.walletProvider;\n this.clientManager = CosmosClientManager.getInstance(\n config,\n this.walletProvider,\n );\n this.authTokens = new AuthTokenService(this.walletProvider);\n\n this.mcpServer = new McpServer(\n {\n name: '@manifest-network/manifest-mcp-fred',\n version: VERSION,\n },\n {\n capabilities: {\n tools: {},\n resources: {},\n prompts: {},\n },\n },\n );\n\n // SSRF guard (ENG-268). Fred fetches provider/Fred APIs at URLs sourced\n // from on-chain SKU records, so a malicious provider could point them at\n // an internal host. Route all outbound HTTP through an SSRF-guarded fetch\n // by default; operators opt out with MANIFEST_FRED_FETCH_GUARDED=0.\n const fetchFn = resolveGuardedFetch(\n typeof process !== 'undefined'\n ? process.env.MANIFEST_FRED_FETCH_GUARDED\n : undefined,\n typeof process !== 'undefined' && !!process.versions?.node,\n );\n\n registerTools({\n mcpServer: this.mcpServer,\n clientManager: this.clientManager,\n walletProvider: this.walletProvider,\n authTokens: this.authTokens,\n fetchFn,\n });\n registerResources({\n mcpServer: this.mcpServer,\n clientManager: this.clientManager,\n walletProvider: this.walletProvider,\n });\n registerPrompts(this.mcpServer);\n }\n\n getServer(): Server {\n return this.mcpServer.server;\n }\n\n getClientManager(): CosmosClientManager {\n return this.clientManager;\n }\n\n disconnect(): void {\n this.clientManager.disconnect();\n }\n}\n\nexport function createMnemonicFredServer(\n config: MnemonicServerConfig,\n): Promise<FredMCPServer> {\n return createMnemonicServer(config, FredMCPServer);\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAyHA,IAAa,gBAAb,MAA2B;CAMzB,YAAY,SAAmC;EAC7C,MAAM,SAAS,sBAAsB,QAAQ,MAAM;EACnD,KAAK,iBAAiB,QAAQ;EAC9B,KAAK,gBAAgB,oBAAoB,YACvC,QACA,KAAK,cACP;EACA,KAAK,aAAa,IAAI,iBAAiB,KAAK,cAAc;EAE1D,KAAK,YAAY,IAAI,UACnB;GACE,MAAM;GACN,SAAS;EACX,GACA,EACE,cAAc;GACZ,OAAO,CAAC;GACR,WAAW,CAAC;GACZ,SAAS,CAAC;EACZ,EACF,CACF;EAMA,MAAM,UAAU,oBACd,OAAO,YAAY,cACf,QAAQ,IAAI,8BACZ,KAAA,GACJ,OAAO,YAAY,eAAe,CAAC,CAAC,QAAQ,UAAU,IACxD;EAEA,cAAc;GACZ,WAAW,KAAK;GAChB,eAAe,KAAK;GACpB,gBAAgB,KAAK;GACrB,YAAY,KAAK;GACjB;EACF,CAAC;EACD,kBAAkB;GAChB,WAAW,KAAK;GAChB,eAAe,KAAK;GACpB,gBAAgB,KAAK;EACvB,CAAC;EACD,gBAAgB,KAAK,SAAS;CAChC;CAEA,YAAoB;EAClB,OAAO,KAAK,UAAU;CACxB;CAEA,mBAAwC;EACtC,OAAO,KAAK;CACd;CAEA,aAAmB;EACjB,KAAK,cAAc,WAAW;CAChC;AACF;AAEA,SAAgB,yBACd,QACwB;CACxB,OAAO,qBAAqB,QAAQ,aAAa;AACnD"}