@oobe-protocol-labs/sap-mcp-server 0.9.16 → 0.9.20
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/.env.example +8 -7
- package/CHANGELOG.md +199 -0
- package/README.md +3 -3
- package/USER_DOCS/01_HOSTED_REMOTE_MCP.md +1 -1
- package/USER_DOCS/04_CLIENT_CONFIGS.md +3 -3
- package/USER_DOCS/05_SKILLS_AND_TOOLS.md +16 -8
- package/USER_DOCS/06_DESKTOP_GUI_WIZARD.md +5 -5
- package/config.example.json +5 -4
- package/config.schema.json +7 -2
- package/config.secure-example.json +5 -4
- package/dist/adapters/index.d.ts +7 -1
- package/dist/adapters/index.d.ts.map +1 -1
- package/dist/adapters/index.js +7 -1
- package/dist/adapters/index.js.map +1 -1
- package/dist/adapters/mcp/errors.d.ts +13 -1
- package/dist/adapters/mcp/errors.d.ts.map +1 -1
- package/dist/adapters/mcp/errors.js +13 -1
- package/dist/adapters/mcp/errors.js.map +1 -1
- package/dist/adapters/mcp/index.d.ts +7 -1
- package/dist/adapters/mcp/index.d.ts.map +1 -1
- package/dist/adapters/mcp/index.js +7 -1
- package/dist/adapters/mcp/index.js.map +1 -1
- package/dist/adapters/mcp/prompt-response.d.ts +13 -1
- package/dist/adapters/mcp/prompt-response.d.ts.map +1 -1
- package/dist/adapters/mcp/prompt-response.js +13 -1
- package/dist/adapters/mcp/prompt-response.js.map +1 -1
- package/dist/adapters/mcp/resource-response.d.ts +14 -1
- package/dist/adapters/mcp/resource-response.d.ts.map +1 -1
- package/dist/adapters/mcp/resource-response.js +14 -1
- package/dist/adapters/mcp/resource-response.js.map +1 -1
- package/dist/adapters/mcp/sdk-compat.d.ts +11 -3
- package/dist/adapters/mcp/sdk-compat.d.ts.map +1 -1
- package/dist/adapters/mcp/sdk-compat.js +213 -24
- package/dist/adapters/mcp/sdk-compat.js.map +1 -1
- package/dist/adapters/mcp/tool-response.d.ts +39 -4
- package/dist/adapters/mcp/tool-response.d.ts.map +1 -1
- package/dist/adapters/mcp/tool-response.js +39 -4
- package/dist/adapters/mcp/tool-response.js.map +1 -1
- package/dist/adapters/solana/commitment.d.ts +14 -2
- package/dist/adapters/solana/commitment.d.ts.map +1 -1
- package/dist/adapters/solana/commitment.js +14 -2
- package/dist/adapters/solana/commitment.js.map +1 -1
- package/dist/adapters/solana/connection.d.ts +11 -2
- package/dist/adapters/solana/connection.d.ts.map +1 -1
- package/dist/adapters/solana/connection.js +11 -2
- package/dist/adapters/solana/connection.js.map +1 -1
- package/dist/adapters/solana/index.d.ts +7 -1
- package/dist/adapters/solana/index.d.ts.map +1 -1
- package/dist/adapters/solana/index.js +7 -1
- package/dist/adapters/solana/index.js.map +1 -1
- package/dist/adapters/solana/public-key.d.ts +11 -2
- package/dist/adapters/solana/public-key.d.ts.map +1 -1
- package/dist/adapters/solana/public-key.js +11 -2
- package/dist/adapters/solana/public-key.js.map +1 -1
- package/dist/config/defaults.d.ts +5 -0
- package/dist/config/defaults.d.ts.map +1 -1
- package/dist/config/defaults.js +5 -0
- package/dist/config/defaults.js.map +1 -1
- package/dist/config/env.d.ts +4 -0
- package/dist/config/env.d.ts.map +1 -1
- package/dist/config/env.js +11 -6
- package/dist/config/env.js.map +1 -1
- package/dist/config/index.d.ts +5 -0
- package/dist/config/index.d.ts.map +1 -1
- package/dist/config/index.js +5 -0
- package/dist/config/index.js.map +1 -1
- package/dist/config/mcp-client-injection.d.ts.map +1 -1
- package/dist/config/mcp-client-injection.js +97 -1
- package/dist/config/mcp-client-injection.js.map +1 -1
- package/dist/config/paths.d.ts +5 -0
- package/dist/config/paths.d.ts.map +1 -1
- package/dist/config/paths.js +5 -0
- package/dist/config/paths.js.map +1 -1
- package/dist/config/profiles.d.ts +3 -10
- package/dist/config/profiles.d.ts.map +1 -1
- package/dist/config/profiles.js +5 -0
- package/dist/config/profiles.js.map +1 -1
- package/dist/config/schema.d.ts +5 -0
- package/dist/config/schema.d.ts.map +1 -1
- package/dist/config/schema.js +5 -0
- package/dist/config/schema.js.map +1 -1
- package/dist/config/secure-config.d.ts +5 -0
- package/dist/config/secure-config.d.ts.map +1 -1
- package/dist/config/secure-config.js +5 -0
- package/dist/config/secure-config.js.map +1 -1
- package/dist/config/setup.d.ts +5 -0
- package/dist/config/setup.d.ts.map +1 -1
- package/dist/config/setup.js +5 -0
- package/dist/config/setup.js.map +1 -1
- package/dist/config-cli.d.ts +3 -13
- package/dist/config-cli.d.ts.map +1 -1
- package/dist/config-cli.js +5 -0
- package/dist/config-cli.js.map +1 -1
- package/dist/core/constants.d.ts +25 -6
- package/dist/core/constants.d.ts.map +1 -1
- package/dist/core/constants.js +27 -8
- package/dist/core/constants.js.map +1 -1
- package/dist/core/errors.d.ts +5 -0
- package/dist/core/errors.d.ts.map +1 -1
- package/dist/core/errors.js +5 -0
- package/dist/core/errors.js.map +1 -1
- package/dist/core/guards.d.ts +5 -0
- package/dist/core/guards.d.ts.map +1 -1
- package/dist/core/guards.js +3 -1
- package/dist/core/guards.js.map +1 -1
- package/dist/core/index.d.ts +7 -1
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +7 -1
- package/dist/core/index.js.map +1 -1
- package/dist/core/logger.js +1 -1
- package/dist/core/logger.js.map +1 -1
- package/dist/core/result.d.ts +77 -9
- package/dist/core/result.d.ts.map +1 -1
- package/dist/core/result.js +68 -9
- package/dist/core/result.js.map +1 -1
- package/dist/core/types.d.ts +5 -0
- package/dist/core/types.d.ts.map +1 -1
- package/dist/core/types.js +3 -4
- package/dist/core/types.js.map +1 -1
- package/dist/index.d.ts +5 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -0
- package/dist/index.js.map +1 -1
- package/dist/payments/facilitator-rpc-fallback.d.ts.map +1 -1
- package/dist/payments/facilitator-rpc-fallback.js +95 -0
- package/dist/payments/facilitator-rpc-fallback.js.map +1 -1
- package/dist/payments/hosted-tool-eligibility.d.ts +1 -0
- package/dist/payments/hosted-tool-eligibility.d.ts.map +1 -1
- package/dist/payments/hosted-tool-eligibility.js +1 -0
- package/dist/payments/hosted-tool-eligibility.js.map +1 -1
- package/dist/payments/mcp-session-cache.d.ts +35 -0
- package/dist/payments/mcp-session-cache.d.ts.map +1 -0
- package/dist/payments/mcp-session-cache.js +83 -0
- package/dist/payments/mcp-session-cache.js.map +1 -0
- package/dist/payments/monetization-gate.d.ts +5 -0
- package/dist/payments/monetization-gate.d.ts.map +1 -1
- package/dist/payments/monetization-gate.js +24 -1
- package/dist/payments/monetization-gate.js.map +1 -1
- package/dist/payments/pricing.d.ts +1 -0
- package/dist/payments/pricing.d.ts.map +1 -1
- package/dist/payments/pricing.js +64 -8
- package/dist/payments/pricing.js.map +1 -1
- package/dist/payments/usage-ledger.d.ts +36 -2
- package/dist/payments/usage-ledger.d.ts.map +1 -1
- package/dist/payments/usage-ledger.js +121 -4
- package/dist/payments/usage-ledger.js.map +1 -1
- package/dist/payments/x402-paid-call.d.ts +50 -0
- package/dist/payments/x402-paid-call.d.ts.map +1 -1
- package/dist/payments/x402-paid-call.js +171 -0
- package/dist/payments/x402-paid-call.js.map +1 -1
- package/dist/policy/default-policies.d.ts +18 -2
- package/dist/policy/default-policies.d.ts.map +1 -1
- package/dist/policy/default-policies.js +18 -2
- package/dist/policy/default-policies.js.map +1 -1
- package/dist/policy/index.d.ts +6 -3
- package/dist/policy/index.d.ts.map +1 -1
- package/dist/policy/index.js +6 -3
- package/dist/policy/index.js.map +1 -1
- package/dist/policy/local-policy-engine.d.ts +71 -13
- package/dist/policy/local-policy-engine.d.ts.map +1 -1
- package/dist/policy/local-policy-engine.js +33 -11
- package/dist/policy/local-policy-engine.js.map +1 -1
- package/dist/policy/permission-checks.d.ts +29 -3
- package/dist/policy/permission-checks.d.ts.map +1 -1
- package/dist/policy/permission-checks.js +29 -3
- package/dist/policy/permission-checks.js.map +1 -1
- package/dist/policy/policy-engine.d.ts +22 -2
- package/dist/policy/policy-engine.d.ts.map +1 -1
- package/dist/policy/policy-engine.js +22 -2
- package/dist/policy/policy-engine.js.map +1 -1
- package/dist/policy/policy-types.d.ts +55 -5
- package/dist/policy/policy-types.d.ts.map +1 -1
- package/dist/policy/policy-types.js +8 -1
- package/dist/policy/policy-types.js.map +1 -1
- package/dist/policy/risk-level.d.ts +32 -3
- package/dist/policy/risk-level.d.ts.map +1 -1
- package/dist/policy/risk-level.js +32 -3
- package/dist/policy/risk-level.js.map +1 -1
- package/dist/policy/spending-limits.d.ts +29 -3
- package/dist/policy/spending-limits.d.ts.map +1 -1
- package/dist/policy/spending-limits.js +29 -3
- package/dist/policy/spending-limits.js.map +1 -1
- package/dist/premium/activation-manager.d.ts +43 -0
- package/dist/premium/activation-manager.d.ts.map +1 -0
- package/dist/premium/activation-manager.js +131 -0
- package/dist/premium/activation-manager.js.map +1 -0
- package/dist/premium/builtin-plugins.d.ts +143 -0
- package/dist/premium/builtin-plugins.d.ts.map +1 -0
- package/dist/premium/builtin-plugins.js +394 -0
- package/dist/premium/builtin-plugins.js.map +1 -0
- package/dist/premium/event-store.d.ts +61 -0
- package/dist/premium/event-store.d.ts.map +1 -0
- package/dist/premium/event-store.js +130 -0
- package/dist/premium/event-store.js.map +1 -0
- package/dist/premium/index.d.ts +54 -0
- package/dist/premium/index.d.ts.map +1 -0
- package/dist/premium/index.js +54 -0
- package/dist/premium/index.js.map +1 -0
- package/dist/premium/manifest-builder.d.ts +65 -0
- package/dist/premium/manifest-builder.d.ts.map +1 -0
- package/dist/premium/manifest-builder.js +182 -0
- package/dist/premium/manifest-builder.js.map +1 -0
- package/dist/premium/meme-radar-capabilities.d.ts +38 -0
- package/dist/premium/meme-radar-capabilities.d.ts.map +1 -0
- package/dist/premium/meme-radar-capabilities.js +306 -0
- package/dist/premium/meme-radar-capabilities.js.map +1 -0
- package/dist/premium/metrics.d.ts +27 -0
- package/dist/premium/metrics.d.ts.map +1 -0
- package/dist/premium/metrics.js +65 -0
- package/dist/premium/metrics.js.map +1 -0
- package/dist/premium/plugin-validator.d.ts +39 -0
- package/dist/premium/plugin-validator.d.ts.map +1 -0
- package/dist/premium/plugin-validator.js +325 -0
- package/dist/premium/plugin-validator.js.map +1 -0
- package/dist/premium/private-manifest-loader.d.ts +111 -0
- package/dist/premium/private-manifest-loader.d.ts.map +1 -0
- package/dist/premium/private-manifest-loader.js +285 -0
- package/dist/premium/private-manifest-loader.js.map +1 -0
- package/dist/premium/provider-bridge.d.ts +109 -0
- package/dist/premium/provider-bridge.d.ts.map +1 -0
- package/dist/premium/provider-bridge.js +239 -0
- package/dist/premium/provider-bridge.js.map +1 -0
- package/dist/premium/session-manager.d.ts +125 -0
- package/dist/premium/session-manager.d.ts.map +1 -0
- package/dist/premium/session-manager.js +337 -0
- package/dist/premium/session-manager.js.map +1 -0
- package/dist/premium/stream-broker.d.ts +98 -0
- package/dist/premium/stream-broker.d.ts.map +1 -0
- package/dist/premium/stream-broker.js +199 -0
- package/dist/premium/stream-broker.js.map +1 -0
- package/dist/premium/tech-fundamentals-capabilities.d.ts +37 -0
- package/dist/premium/tech-fundamentals-capabilities.d.ts.map +1 -0
- package/dist/premium/tech-fundamentals-capabilities.js +283 -0
- package/dist/premium/tech-fundamentals-capabilities.js.map +1 -0
- package/dist/premium/trading-capabilities.d.ts +36 -0
- package/dist/premium/trading-capabilities.d.ts.map +1 -0
- package/dist/premium/trading-capabilities.js +205 -0
- package/dist/premium/trading-capabilities.js.map +1 -0
- package/dist/premium/types.d.ts +518 -0
- package/dist/premium/types.d.ts.map +1 -0
- package/dist/premium/types.js +23 -0
- package/dist/premium/types.js.map +1 -0
- package/dist/premium/webhook-engine.d.ts +102 -0
- package/dist/premium/webhook-engine.d.ts.map +1 -0
- package/dist/premium/webhook-engine.js +382 -0
- package/dist/premium/webhook-engine.js.map +1 -0
- package/dist/prompts/context/sap-agent-context.prompt.d.ts +5 -0
- package/dist/prompts/context/sap-agent-context.prompt.d.ts.map +1 -1
- package/dist/prompts/context/sap-agent-context.prompt.js +2 -8
- package/dist/prompts/context/sap-agent-context.prompt.js.map +1 -1
- package/dist/prompts/context/sap-agent-intent-router.prompt.d.ts +14 -0
- package/dist/prompts/context/sap-agent-intent-router.prompt.d.ts.map +1 -0
- package/dist/prompts/context/sap-agent-intent-router.prompt.js +155 -0
- package/dist/prompts/context/sap-agent-intent-router.prompt.js.map +1 -0
- package/dist/prompts/context/sap-agent-start.prompt.js +1 -0
- package/dist/prompts/context/sap-agent-start.prompt.js.map +1 -1
- package/dist/prompts/developer/debug-sap-error.prompt.d.ts +5 -0
- package/dist/prompts/developer/debug-sap-error.prompt.d.ts.map +1 -1
- package/dist/prompts/developer/debug-sap-error.prompt.js +3 -4
- package/dist/prompts/developer/debug-sap-error.prompt.js.map +1 -1
- package/dist/prompts/developer/generate-sap-integration.prompt.d.ts +5 -0
- package/dist/prompts/developer/generate-sap-integration.prompt.d.ts.map +1 -1
- package/dist/prompts/developer/generate-sap-integration.prompt.js +3 -4
- package/dist/prompts/developer/generate-sap-integration.prompt.js.map +1 -1
- package/dist/prompts/developer/index.d.ts +4 -1
- package/dist/prompts/developer/index.d.ts.map +1 -1
- package/dist/prompts/developer/index.js +4 -1
- package/dist/prompts/developer/index.js.map +1 -1
- package/dist/prompts/execution-proof/explain-proof-of-execution.prompt.d.ts +5 -0
- package/dist/prompts/execution-proof/explain-proof-of-execution.prompt.d.ts.map +1 -1
- package/dist/prompts/execution-proof/explain-proof-of-execution.prompt.js +3 -4
- package/dist/prompts/execution-proof/explain-proof-of-execution.prompt.js.map +1 -1
- package/dist/prompts/execution-proof/index.d.ts +4 -1
- package/dist/prompts/execution-proof/index.d.ts.map +1 -1
- package/dist/prompts/execution-proof/index.js +4 -1
- package/dist/prompts/execution-proof/index.js.map +1 -1
- package/dist/prompts/execution-proof/verify-execution-proof.prompt.d.ts +5 -0
- package/dist/prompts/execution-proof/verify-execution-proof.prompt.d.ts.map +1 -1
- package/dist/prompts/execution-proof/verify-execution-proof.prompt.js +3 -4
- package/dist/prompts/execution-proof/verify-execution-proof.prompt.js.map +1 -1
- package/dist/prompts/index.d.ts +4 -1
- package/dist/prompts/index.d.ts.map +1 -1
- package/dist/prompts/index.js +4 -1
- package/dist/prompts/index.js.map +1 -1
- package/dist/prompts/payments/create-paid-api.prompt.d.ts +5 -0
- package/dist/prompts/payments/create-paid-api.prompt.d.ts.map +1 -1
- package/dist/prompts/payments/create-paid-api.prompt.js +3 -4
- package/dist/prompts/payments/create-paid-api.prompt.js.map +1 -1
- package/dist/prompts/payments/explain-x402-settlement.prompt.d.ts +5 -0
- package/dist/prompts/payments/explain-x402-settlement.prompt.d.ts.map +1 -1
- package/dist/prompts/payments/explain-x402-settlement.prompt.js +3 -4
- package/dist/prompts/payments/explain-x402-settlement.prompt.js.map +1 -1
- package/dist/prompts/payments/index.d.ts +4 -1
- package/dist/prompts/payments/index.d.ts.map +1 -1
- package/dist/prompts/payments/index.js +4 -1
- package/dist/prompts/payments/index.js.map +1 -1
- package/dist/prompts/register-prompts.d.ts +18 -2
- package/dist/prompts/register-prompts.d.ts.map +1 -1
- package/dist/prompts/register-prompts.js +21 -3
- package/dist/prompts/register-prompts.js.map +1 -1
- package/dist/prompts/registry/analyze-sap-agent.prompt.d.ts +5 -0
- package/dist/prompts/registry/analyze-sap-agent.prompt.d.ts.map +1 -1
- package/dist/prompts/registry/analyze-sap-agent.prompt.js +3 -4
- package/dist/prompts/registry/analyze-sap-agent.prompt.js.map +1 -1
- package/dist/prompts/registry/index.d.ts +4 -1
- package/dist/prompts/registry/index.d.ts.map +1 -1
- package/dist/prompts/registry/index.js +4 -1
- package/dist/prompts/registry/index.js.map +1 -1
- package/dist/prompts/registry/register-sap-agent.prompt.d.ts +5 -0
- package/dist/prompts/registry/register-sap-agent.prompt.d.ts.map +1 -1
- package/dist/prompts/registry/register-sap-agent.prompt.js +3 -4
- package/dist/prompts/registry/register-sap-agent.prompt.js.map +1 -1
- package/dist/remote/premium-memory.d.ts +90 -0
- package/dist/remote/premium-memory.d.ts.map +1 -0
- package/dist/remote/premium-memory.js +161 -0
- package/dist/remote/premium-memory.js.map +1 -0
- package/dist/remote/premium-routes.d.ts +99 -0
- package/dist/remote/premium-routes.d.ts.map +1 -0
- package/dist/remote/premium-routes.js +346 -0
- package/dist/remote/premium-routes.js.map +1 -0
- package/dist/remote/public-home/sections.d.ts.map +1 -1
- package/dist/remote/public-home/sections.js +7 -1
- package/dist/remote/public-home/sections.js.map +1 -1
- package/dist/remote/public-home/types.d.ts +6 -0
- package/dist/remote/public-home/types.d.ts.map +1 -1
- package/dist/remote/server.d.ts +18 -0
- package/dist/remote/server.d.ts.map +1 -1
- package/dist/remote/server.js +298 -116
- package/dist/remote/server.js.map +1 -1
- package/dist/remote/tx-relay.d.ts +42 -0
- package/dist/remote/tx-relay.d.ts.map +1 -0
- package/dist/remote/tx-relay.js +118 -0
- package/dist/remote/tx-relay.js.map +1 -0
- package/dist/resources/current/sap-current-config.resource.d.ts +5 -0
- package/dist/resources/current/sap-current-config.resource.d.ts.map +1 -1
- package/dist/resources/current/sap-current-config.resource.js +2 -5
- package/dist/resources/current/sap-current-config.resource.js.map +1 -1
- package/dist/resources/execution-proof/index.d.ts +5 -0
- package/dist/resources/execution-proof/index.d.ts.map +1 -1
- package/dist/resources/execution-proof/index.js +5 -0
- package/dist/resources/execution-proof/index.js.map +1 -1
- package/dist/resources/execution-proof/sap-execution-record.resource.d.ts +5 -0
- package/dist/resources/execution-proof/sap-execution-record.resource.d.ts.map +1 -1
- package/dist/resources/execution-proof/sap-execution-record.resource.js +3 -4
- package/dist/resources/execution-proof/sap-execution-record.resource.js.map +1 -1
- package/dist/resources/index.d.ts +5 -0
- package/dist/resources/index.d.ts.map +1 -1
- package/dist/resources/index.js +5 -0
- package/dist/resources/index.js.map +1 -1
- package/dist/resources/memory/index.d.ts +5 -0
- package/dist/resources/memory/index.d.ts.map +1 -1
- package/dist/resources/memory/index.js +5 -0
- package/dist/resources/memory/index.js.map +1 -1
- package/dist/resources/memory/sap-memory.resource.d.ts +5 -0
- package/dist/resources/memory/sap-memory.resource.d.ts.map +1 -1
- package/dist/resources/memory/sap-memory.resource.js +3 -4
- package/dist/resources/memory/sap-memory.resource.js.map +1 -1
- package/dist/resources/profile/sap-active-profile.resource.d.ts +5 -0
- package/dist/resources/profile/sap-active-profile.resource.d.ts.map +1 -1
- package/dist/resources/profile/sap-active-profile.resource.js +2 -5
- package/dist/resources/profile/sap-active-profile.resource.js.map +1 -1
- package/dist/resources/register-resources.d.ts +5 -0
- package/dist/resources/register-resources.d.ts.map +1 -1
- package/dist/resources/register-resources.js +3 -1
- package/dist/resources/register-resources.js.map +1 -1
- package/dist/resources/registry/index.d.ts +5 -0
- package/dist/resources/registry/index.d.ts.map +1 -1
- package/dist/resources/registry/index.js +5 -0
- package/dist/resources/registry/index.js.map +1 -1
- package/dist/resources/registry/sap-agent.resource.d.ts +5 -0
- package/dist/resources/registry/sap-agent.resource.d.ts.map +1 -1
- package/dist/resources/registry/sap-agent.resource.js +3 -4
- package/dist/resources/registry/sap-agent.resource.js.map +1 -1
- package/dist/resources/registry/sap-global-registry.resource.d.ts +18 -4
- package/dist/resources/registry/sap-global-registry.resource.d.ts.map +1 -1
- package/dist/resources/registry/sap-global-registry.resource.js +18 -4
- package/dist/resources/registry/sap-global-registry.resource.js.map +1 -1
- package/dist/resources/reputation/index.d.ts +4 -1
- package/dist/resources/reputation/index.d.ts.map +1 -1
- package/dist/resources/reputation/index.js +4 -1
- package/dist/resources/reputation/index.js.map +1 -1
- package/dist/resources/reputation/sap-reputation.resource.d.ts +18 -4
- package/dist/resources/reputation/sap-reputation.resource.d.ts.map +1 -1
- package/dist/resources/reputation/sap-reputation.resource.js +18 -4
- package/dist/resources/reputation/sap-reputation.resource.js.map +1 -1
- package/dist/resources/tool-schema/index.d.ts +4 -1
- package/dist/resources/tool-schema/index.d.ts.map +1 -1
- package/dist/resources/tool-schema/index.js +4 -1
- package/dist/resources/tool-schema/index.js.map +1 -1
- package/dist/resources/tool-schema/sap-tool-schema.resource.d.ts +18 -4
- package/dist/resources/tool-schema/sap-tool-schema.resource.d.ts.map +1 -1
- package/dist/resources/tool-schema/sap-tool-schema.resource.js +18 -4
- package/dist/resources/tool-schema/sap-tool-schema.resource.js.map +1 -1
- package/dist/sap/index.d.ts +7 -1
- package/dist/sap/index.d.ts.map +1 -1
- package/dist/sap/index.js +7 -1
- package/dist/sap/index.js.map +1 -1
- package/dist/sap/sap-client-manager.d.ts +80 -13
- package/dist/sap/sap-client-manager.d.ts.map +1 -1
- package/dist/sap/sap-client-manager.js +80 -13
- package/dist/sap/sap-client-manager.js.map +1 -1
- package/dist/sap/sap-errors.d.ts +22 -3
- package/dist/sap/sap-errors.d.ts.map +1 -1
- package/dist/sap/sap-errors.js +22 -3
- package/dist/sap/sap-errors.js.map +1 -1
- package/dist/sap/sap-types.d.ts +75 -6
- package/dist/sap/sap-types.d.ts.map +1 -1
- package/dist/sap/sap-types.js +11 -1
- package/dist/sap/sap-types.js.map +1 -1
- package/dist/schemas/common.schema.d.ts +45 -8
- package/dist/schemas/common.schema.d.ts.map +1 -1
- package/dist/schemas/common.schema.js +45 -8
- package/dist/schemas/common.schema.js.map +1 -1
- package/dist/schemas/developer.schema.d.ts +22 -3
- package/dist/schemas/developer.schema.d.ts.map +1 -1
- package/dist/schemas/developer.schema.js +22 -3
- package/dist/schemas/developer.schema.js.map +1 -1
- package/dist/schemas/execution-proof.schema.d.ts +29 -4
- package/dist/schemas/execution-proof.schema.d.ts.map +1 -1
- package/dist/schemas/execution-proof.schema.js +29 -4
- package/dist/schemas/execution-proof.schema.js.map +1 -1
- package/dist/schemas/identity.schema.d.ts +23 -3
- package/dist/schemas/identity.schema.d.ts.map +1 -1
- package/dist/schemas/identity.schema.js +23 -3
- package/dist/schemas/identity.schema.js.map +1 -1
- package/dist/schemas/index.d.ts +11 -1
- package/dist/schemas/index.d.ts.map +1 -1
- package/dist/schemas/index.js +11 -1
- package/dist/schemas/index.js.map +1 -1
- package/dist/schemas/memory.schema.d.ts +23 -3
- package/dist/schemas/memory.schema.d.ts.map +1 -1
- package/dist/schemas/memory.schema.js +23 -3
- package/dist/schemas/memory.schema.js.map +1 -1
- package/dist/schemas/payments.schema.d.ts +24 -3
- package/dist/schemas/payments.schema.d.ts.map +1 -1
- package/dist/schemas/payments.schema.js +24 -3
- package/dist/schemas/payments.schema.js.map +1 -1
- package/dist/schemas/registry.schema.d.ts +36 -4
- package/dist/schemas/registry.schema.d.ts.map +1 -1
- package/dist/schemas/registry.schema.js +36 -4
- package/dist/schemas/registry.schema.js.map +1 -1
- package/dist/schemas/reputation.schema.d.ts +22 -3
- package/dist/schemas/reputation.schema.d.ts.map +1 -1
- package/dist/schemas/reputation.schema.js +22 -3
- package/dist/schemas/reputation.schema.js.map +1 -1
- package/dist/schemas/settlement.schema.d.ts +31 -4
- package/dist/schemas/settlement.schema.d.ts.map +1 -1
- package/dist/schemas/settlement.schema.js +31 -4
- package/dist/schemas/settlement.schema.js.map +1 -1
- package/dist/schemas/tool-schema.schema.d.ts +29 -3
- package/dist/schemas/tool-schema.schema.d.ts.map +1 -1
- package/dist/schemas/tool-schema.schema.js +29 -3
- package/dist/schemas/tool-schema.schema.js.map +1 -1
- package/dist/schemas/transaction.schema.d.ts +23 -3
- package/dist/schemas/transaction.schema.d.ts.map +1 -1
- package/dist/schemas/transaction.schema.js +23 -3
- package/dist/schemas/transaction.schema.js.map +1 -1
- package/dist/security/approval-required.d.ts +19 -2
- package/dist/security/approval-required.d.ts.map +1 -1
- package/dist/security/approval-required.js +19 -2
- package/dist/security/approval-required.js.map +1 -1
- package/dist/security/index.d.ts +7 -1
- package/dist/security/index.d.ts.map +1 -1
- package/dist/security/index.js +7 -1
- package/dist/security/index.js.map +1 -1
- package/dist/security/private-key-guard.d.ts +18 -2
- package/dist/security/private-key-guard.d.ts.map +1 -1
- package/dist/security/private-key-guard.js +19 -2
- package/dist/security/private-key-guard.js.map +1 -1
- package/dist/security/prompt-injection-notes.d.ts +10 -1
- package/dist/security/prompt-injection-notes.d.ts.map +1 -1
- package/dist/security/prompt-injection-notes.js +10 -1
- package/dist/security/prompt-injection-notes.js.map +1 -1
- package/dist/security/unsafe-action-guard.d.ts +36 -10
- package/dist/security/unsafe-action-guard.d.ts.map +1 -1
- package/dist/security/unsafe-action-guard.js +67 -15
- package/dist/security/unsafe-action-guard.js.map +1 -1
- package/dist/server/create-server.d.ts +18 -3
- package/dist/server/create-server.d.ts.map +1 -1
- package/dist/server/create-server.js +18 -3
- package/dist/server/create-server.js.map +1 -1
- package/dist/server/index.d.ts +6 -1
- package/dist/server/index.d.ts.map +1 -1
- package/dist/server/index.js +6 -1
- package/dist/server/index.js.map +1 -1
- package/dist/server/register-capabilities.d.ts +17 -2
- package/dist/server/register-capabilities.d.ts.map +1 -1
- package/dist/server/register-capabilities.js +17 -2
- package/dist/server/register-capabilities.js.map +1 -1
- package/dist/server/server-metadata.d.ts +34 -1
- package/dist/server/server-metadata.d.ts.map +1 -1
- package/dist/server/server-metadata.js +35 -2
- package/dist/server/server-metadata.js.map +1 -1
- package/dist/session/agent-session.d.ts +35 -4
- package/dist/session/agent-session.d.ts.map +1 -1
- package/dist/session/agent-session.js +35 -4
- package/dist/session/agent-session.js.map +1 -1
- package/dist/session/delegated-session.d.ts +31 -3
- package/dist/session/delegated-session.d.ts.map +1 -1
- package/dist/session/delegated-session.js +31 -3
- package/dist/session/delegated-session.js.map +1 -1
- package/dist/session/index.d.ts +7 -1
- package/dist/session/index.d.ts.map +1 -1
- package/dist/session/index.js +7 -1
- package/dist/session/index.js.map +1 -1
- package/dist/session/redis-session-store.d.ts +94 -21
- package/dist/session/redis-session-store.d.ts.map +1 -1
- package/dist/session/redis-session-store.js +87 -20
- package/dist/session/redis-session-store.js.map +1 -1
- package/dist/session/session-limits.d.ts +34 -4
- package/dist/session/session-limits.d.ts.map +1 -1
- package/dist/session/session-limits.js +34 -4
- package/dist/session/session-limits.js.map +1 -1
- package/dist/session/session-permissions.d.ts +57 -7
- package/dist/session/session-permissions.d.ts.map +1 -1
- package/dist/session/session-permissions.js +57 -7
- package/dist/session/session-permissions.js.map +1 -1
- package/dist/session/session-store.d.ts +9 -1
- package/dist/session/session-store.d.ts.map +1 -1
- package/dist/session/session-store.js +18 -3
- package/dist/session/session-store.js.map +1 -1
- package/dist/session/session-types.d.ts +33 -4
- package/dist/session/session-types.d.ts.map +1 -1
- package/dist/session/session-types.js +9 -1
- package/dist/session/session-types.js.map +1 -1
- package/dist/signer/index.d.ts +7 -1
- package/dist/signer/index.d.ts.map +1 -1
- package/dist/signer/index.js +7 -1
- package/dist/signer/index.js.map +1 -1
- package/dist/signer/load-keypair.d.ts +25 -4
- package/dist/signer/load-keypair.d.ts.map +1 -1
- package/dist/signer/load-keypair.js +25 -4
- package/dist/signer/load-keypair.js.map +1 -1
- package/dist/signer/local-keypair-signer.d.ts +16 -2
- package/dist/signer/local-keypair-signer.d.ts.map +1 -1
- package/dist/signer/local-keypair-signer.js +16 -2
- package/dist/signer/local-keypair-signer.js.map +1 -1
- package/dist/signer/signer-resolver.d.ts +19 -2
- package/dist/signer/signer-resolver.d.ts.map +1 -1
- package/dist/signer/signer-resolver.js +26 -3
- package/dist/signer/signer-resolver.js.map +1 -1
- package/dist/signer/signer-types.d.ts +47 -5
- package/dist/signer/signer-types.d.ts.map +1 -1
- package/dist/signer/signer-types.js +13 -1
- package/dist/signer/signer-types.js.map +1 -1
- package/dist/tools/agent-start-tool.js +20 -1
- package/dist/tools/agent-start-tool.js.map +1 -1
- package/dist/tools/client-sdk-tools.d.ts.map +1 -1
- package/dist/tools/client-sdk-tools.js +27 -2
- package/dist/tools/client-sdk-tools.js.map +1 -1
- package/dist/tools/estimate-tool-cost.d.ts +13 -0
- package/dist/tools/estimate-tool-cost.d.ts.map +1 -0
- package/dist/tools/estimate-tool-cost.js +139 -0
- package/dist/tools/estimate-tool-cost.js.map +1 -0
- package/dist/tools/index.d.ts +6 -0
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +7 -0
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/magicblock-tools.d.ts +25 -0
- package/dist/tools/magicblock-tools.d.ts.map +1 -1
- package/dist/tools/magicblock-tools.js +116 -8
- package/dist/tools/magicblock-tools.js.map +1 -1
- package/dist/tools/perp-tools.d.ts +39 -0
- package/dist/tools/perp-tools.d.ts.map +1 -0
- package/dist/tools/perp-tools.js +1110 -0
- package/dist/tools/perp-tools.js.map +1 -0
- package/dist/tools/premium-tools.d.ts +8 -0
- package/dist/tools/premium-tools.d.ts.map +1 -0
- package/dist/tools/premium-tools.js +732 -0
- package/dist/tools/premium-tools.js.map +1 -0
- package/dist/tools/register-tools.d.ts.map +1 -1
- package/dist/tools/register-tools.js +9 -0
- package/dist/tools/register-tools.js.map +1 -1
- package/dist/tools/sap-sdk-tools.d.ts.map +1 -1
- package/dist/tools/sap-sdk-tools.js +42 -32
- package/dist/tools/sap-sdk-tools.js.map +1 -1
- package/dist/tools/x402-paid-call-tool.js +2 -2
- package/dist/tools/x402-paid-call-tool.js.map +1 -1
- package/dist/transports/index.d.ts +6 -1
- package/dist/transports/index.d.ts.map +1 -1
- package/dist/transports/index.js +6 -1
- package/dist/transports/index.js.map +1 -1
- package/dist/transports/stdio.d.ts +17 -5
- package/dist/transports/stdio.d.ts.map +1 -1
- package/dist/transports/stdio.js +17 -5
- package/dist/transports/stdio.js.map +1 -1
- package/dist/tui/wizard-save.d.ts +88 -8
- package/dist/tui/wizard-save.d.ts.map +1 -1
- package/dist/tui/wizard-save.js +77 -8
- package/dist/tui/wizard-save.js.map +1 -1
- package/docs/06_PAYMENTS_X402_AND_PAYSH.md +3 -3
- package/docs/07_ENDPOINTS_AND_CLIENTS.md +4 -1
- package/docs/14_DESKTOP_WIZARD_RELEASE.md +3 -3
- package/docs/16_SAP_AGENT_IDENTITY_PIPELINE.md +6 -0
- package/docs/18_PREMIUM_PLUGIN_RUNTIME.md +108 -0
- package/docs/README.md +12 -0
- package/package.json +8 -9
- package/server.json +3 -3
- package/skills/sap-agent-registry/SKILL.md +6 -0
- package/skills/sap-mcp/SKILL.md +27 -4
- package/skills/sap-mcp/TOOL_REFERENCE.md +4 -1
- package/skills/sap-payments-x402/SKILL.md +22 -8
|
@@ -1,9 +1,25 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* @name session/session-types
|
|
3
|
+
* @description Type definitions for session creation requests, validation results, and session updates.
|
|
4
|
+
*
|
|
5
|
+
* @flow
|
|
6
|
+
* 1. `CreateSessionRequest` is used by session creation MCP tools.
|
|
7
|
+
* 2. `SessionValidationResult` is returned by session validation functions.
|
|
8
|
+
* 3. `SessionUpdate` is used by session mutation operations.
|
|
9
|
+
*
|
|
10
|
+
* @module session/session-types
|
|
3
11
|
*/
|
|
4
12
|
import type { SapAgentSession, SapPermission } from '../core/types.js';
|
|
5
13
|
/**
|
|
6
|
-
*
|
|
14
|
+
* @name CreateSessionRequest
|
|
15
|
+
* @description Request payload for creating a new agent session.
|
|
16
|
+
*
|
|
17
|
+
* @property agentId — Unique identifier for the agent.
|
|
18
|
+
* @property permissions — Array of permissions to grant the session.
|
|
19
|
+
* @property spendingLimits — Spending limits for per-transaction, per-day, and per-session SOL amounts.
|
|
20
|
+
* @property expiresInSeconds — Optional session validity duration in seconds.
|
|
21
|
+
*
|
|
22
|
+
* @usedBy Session creation MCP tools, `session/index.ts`
|
|
7
23
|
*/
|
|
8
24
|
export interface CreateSessionRequest {
|
|
9
25
|
agentId: string;
|
|
@@ -16,7 +32,14 @@ export interface CreateSessionRequest {
|
|
|
16
32
|
expiresInSeconds?: number;
|
|
17
33
|
}
|
|
18
34
|
/**
|
|
19
|
-
*
|
|
35
|
+
* @name SessionValidationResult
|
|
36
|
+
* @description Result of validating a session for a requested action.
|
|
37
|
+
*
|
|
38
|
+
* @property valid — Whether the session passed validation.
|
|
39
|
+
* @property session — The validated session object (present when valid).
|
|
40
|
+
* @property error — Error explanation (present when invalid).
|
|
41
|
+
*
|
|
42
|
+
* @usedBy Session validation functions, `session/index.ts`
|
|
20
43
|
*/
|
|
21
44
|
export interface SessionValidationResult {
|
|
22
45
|
valid: boolean;
|
|
@@ -24,7 +47,13 @@ export interface SessionValidationResult {
|
|
|
24
47
|
error?: string;
|
|
25
48
|
}
|
|
26
49
|
/**
|
|
27
|
-
*
|
|
50
|
+
* @name SessionUpdate
|
|
51
|
+
* @description Partial update payload for modifying an existing session.
|
|
52
|
+
*
|
|
53
|
+
* @property remainingSessionSol — Optional new remaining session balance in SOL.
|
|
54
|
+
* @property permissions — Optional new array of permissions.
|
|
55
|
+
*
|
|
56
|
+
* @usedBy Session mutation MCP tools, `session/index.ts`
|
|
28
57
|
*/
|
|
29
58
|
export interface SessionUpdate {
|
|
30
59
|
remainingSessionSol?: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-types.d.ts","sourceRoot":"","sources":["../../src/session/session-types.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"session-types.d.ts","sourceRoot":"","sources":["../../src/session/session-types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEvE;;;;;;;;;;GAUG;AACH,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,aAAa,EAAE,CAAC;IAC7B,cAAc,EAAE;QACd,oBAAoB,EAAE,MAAM,CAAC;QAC7B,YAAY,EAAE,MAAM,CAAC;QACrB,gBAAgB,EAAE,MAAM,CAAC;KAC1B,CAAC;IACF,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED;;;;;;;;;GASG;AACH,MAAM,WAAW,uBAAuB;IACtC,KAAK,EAAE,OAAO,CAAC;IACf,OAAO,CAAC,EAAE,eAAe,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,aAAa;IAC5B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,WAAW,CAAC,EAAE,aAAa,EAAE,CAAC;CAC/B"}
|
|
@@ -1,5 +1,13 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* @name session/session-types
|
|
3
|
+
* @description Type definitions for session creation requests, validation results, and session updates.
|
|
4
|
+
*
|
|
5
|
+
* @flow
|
|
6
|
+
* 1. `CreateSessionRequest` is used by session creation MCP tools.
|
|
7
|
+
* 2. `SessionValidationResult` is returned by session validation functions.
|
|
8
|
+
* 3. `SessionUpdate` is used by session mutation operations.
|
|
9
|
+
*
|
|
10
|
+
* @module session/session-types
|
|
3
11
|
*/
|
|
4
12
|
export {};
|
|
5
13
|
//# sourceMappingURL=session-types.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-types.js","sourceRoot":"","sources":["../../src/session/session-types.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"session-types.js","sourceRoot":"","sources":["../../src/session/session-types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG"}
|
package/dist/signer/index.d.ts
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* @name signer/index
|
|
3
|
+
* @description Barrel export for the SAP MCP signer module.
|
|
4
|
+
*
|
|
5
|
+
* Re-exports signer type definitions, keypair loading functions, local and external
|
|
6
|
+
* signer factories, and the signer resolver.
|
|
7
|
+
*
|
|
8
|
+
* @module signer/index
|
|
3
9
|
*/
|
|
4
10
|
export type { Signer, SignerMode, SignerConfig, SignerResult, } from './signer-types.js';
|
|
5
11
|
export { loadKeypairFromFile, loadKeypairFromEnv } from './load-keypair.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/signer/index.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/signer/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,YAAY,EACV,MAAM,EACN,UAAU,EACV,YAAY,EACZ,YAAY,GACb,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAC5E,OAAO,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AACrE,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC"}
|
package/dist/signer/index.js
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* @name signer/index
|
|
3
|
+
* @description Barrel export for the SAP MCP signer module.
|
|
4
|
+
*
|
|
5
|
+
* Re-exports signer type definitions, keypair loading functions, local and external
|
|
6
|
+
* signer factories, and the signer resolver.
|
|
7
|
+
*
|
|
8
|
+
* @module signer/index
|
|
3
9
|
*/
|
|
4
10
|
export { loadKeypairFromFile, loadKeypairFromEnv } from './load-keypair.js';
|
|
5
11
|
export { createLocalKeypairSigner } from './local-keypair-signer.js';
|
package/dist/signer/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/signer/index.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/signer/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AASH,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAC5E,OAAO,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AACrE,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC"}
|
|
@@ -1,15 +1,36 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* @name signer/load-keypair
|
|
3
|
+
* @description Loads Solana keypairs from filesystem or environment variables.
|
|
3
4
|
*
|
|
4
|
-
* WARNING: Only use in local-dev-keypair mode. NEVER in production.
|
|
5
|
+
* WARNING: Only use in `local-dev-keypair` mode. NEVER in production.
|
|
6
|
+
*
|
|
7
|
+
* @flow
|
|
8
|
+
* 1. `loadKeypairFromFile` reads a JSON keypair array from disk and constructs a `Keypair`.
|
|
9
|
+
* 2. `loadKeypairFromEnv` reads a base58-encoded secret key from an environment variable.
|
|
10
|
+
*
|
|
11
|
+
* @module signer/load-keypair
|
|
5
12
|
*/
|
|
6
13
|
import { Keypair } from '@solana/web3.js';
|
|
7
14
|
/**
|
|
8
|
-
*
|
|
15
|
+
* @name loadKeypairFromFile
|
|
16
|
+
* @description Loads a Solana keypair from a JSON file on disk.
|
|
17
|
+
*
|
|
18
|
+
* @param walletPath — Filesystem path to the keypair JSON file (array of 64 bytes).
|
|
19
|
+
* @returns A Solana `Keypair` constructed from the secret key.
|
|
20
|
+
* @throws `SignerError` if the file cannot be read or parsed.
|
|
21
|
+
*
|
|
22
|
+
* @usedBy `local-keypair-signer.ts:createLocalKeypairSigner`, `sap-client-manager.ts:SapClientManager.initialize`
|
|
9
23
|
*/
|
|
10
24
|
export declare function loadKeypairFromFile(walletPath: string): Keypair;
|
|
11
25
|
/**
|
|
12
|
-
*
|
|
26
|
+
* @name loadKeypairFromEnv
|
|
27
|
+
* @description Loads a Solana keypair from a base58-encoded environment variable.
|
|
28
|
+
*
|
|
29
|
+
* @param envVar — Name of the environment variable containing the base58-encoded secret key.
|
|
30
|
+
* @returns A Solana `Keypair` constructed from the decoded secret key.
|
|
31
|
+
* @throws `SignerError` if the environment variable is not set.
|
|
32
|
+
*
|
|
33
|
+
* @usedBy Signer initialization in environments where file-based keypairs are not available.
|
|
13
34
|
*/
|
|
14
35
|
export declare function loadKeypairFromEnv(envVar: string): Promise<Keypair>;
|
|
15
36
|
//# sourceMappingURL=load-keypair.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"load-keypair.d.ts","sourceRoot":"","sources":["../../src/signer/load-keypair.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"load-keypair.d.ts","sourceRoot":"","sources":["../../src/signer/load-keypair.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAK1C;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAW/D;AAED;;;;;;;;;GASG;AACH,wBAAsB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAczE"}
|
|
@@ -1,14 +1,28 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* @name signer/load-keypair
|
|
3
|
+
* @description Loads Solana keypairs from filesystem or environment variables.
|
|
3
4
|
*
|
|
4
|
-
* WARNING: Only use in local-dev-keypair mode. NEVER in production.
|
|
5
|
+
* WARNING: Only use in `local-dev-keypair` mode. NEVER in production.
|
|
6
|
+
*
|
|
7
|
+
* @flow
|
|
8
|
+
* 1. `loadKeypairFromFile` reads a JSON keypair array from disk and constructs a `Keypair`.
|
|
9
|
+
* 2. `loadKeypairFromEnv` reads a base58-encoded secret key from an environment variable.
|
|
10
|
+
*
|
|
11
|
+
* @module signer/load-keypair
|
|
5
12
|
*/
|
|
6
13
|
import { Keypair } from '@solana/web3.js';
|
|
7
14
|
import { readFileSync } from 'fs';
|
|
8
15
|
import { logger } from '../core/logger.js';
|
|
9
16
|
import { SignerError } from '../core/errors.js';
|
|
10
17
|
/**
|
|
11
|
-
*
|
|
18
|
+
* @name loadKeypairFromFile
|
|
19
|
+
* @description Loads a Solana keypair from a JSON file on disk.
|
|
20
|
+
*
|
|
21
|
+
* @param walletPath — Filesystem path to the keypair JSON file (array of 64 bytes).
|
|
22
|
+
* @returns A Solana `Keypair` constructed from the secret key.
|
|
23
|
+
* @throws `SignerError` if the file cannot be read or parsed.
|
|
24
|
+
*
|
|
25
|
+
* @usedBy `local-keypair-signer.ts:createLocalKeypairSigner`, `sap-client-manager.ts:SapClientManager.initialize`
|
|
12
26
|
*/
|
|
13
27
|
export function loadKeypairFromFile(walletPath) {
|
|
14
28
|
logger.debug('Loading keypair from file', { walletPath: '[REDACTED]' });
|
|
@@ -23,7 +37,14 @@ export function loadKeypairFromFile(walletPath) {
|
|
|
23
37
|
}
|
|
24
38
|
}
|
|
25
39
|
/**
|
|
26
|
-
*
|
|
40
|
+
* @name loadKeypairFromEnv
|
|
41
|
+
* @description Loads a Solana keypair from a base58-encoded environment variable.
|
|
42
|
+
*
|
|
43
|
+
* @param envVar — Name of the environment variable containing the base58-encoded secret key.
|
|
44
|
+
* @returns A Solana `Keypair` constructed from the decoded secret key.
|
|
45
|
+
* @throws `SignerError` if the environment variable is not set.
|
|
46
|
+
*
|
|
47
|
+
* @usedBy Signer initialization in environments where file-based keypairs are not available.
|
|
27
48
|
*/
|
|
28
49
|
export async function loadKeypairFromEnv(envVar) {
|
|
29
50
|
const secretKeyBase58 = process.env[envVar];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"load-keypair.js","sourceRoot":"","sources":["../../src/signer/load-keypair.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"load-keypair.js","sourceRoot":"","sources":["../../src/signer/load-keypair.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;AAClC,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD;;;;;;;;;GASG;AACH,MAAM,UAAU,mBAAmB,CAAC,UAAkB;IACpD,MAAM,CAAC,KAAK,CAAC,2BAA2B,EAAE,EAAE,UAAU,EAAE,YAAY,EAAE,CAAC,CAAC;IAExE,IAAI,CAAC;QACH,MAAM,eAAe,GAAG,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QAC1D,MAAM,SAAS,GAAG,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC;QAC/D,OAAO,OAAO,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;IAC1C,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,KAAK,CAAC,wBAAwB,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QAClD,MAAM,IAAI,WAAW,CAAC,mCAAmC,CAAC,CAAC;IAC7D,CAAC;AACH,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,MAAc;IACrD,MAAM,eAAe,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAE5C,IAAI,CAAC,eAAe,EAAE,CAAC;QACrB,MAAM,IAAI,WAAW,CAAC,wBAAwB,MAAM,UAAU,CAAC,CAAC;IAClE,CAAC;IAED,0CAA0C;IAC1C,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC;IAClC,MAAM,SAAS,GAAG,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC;IAExE,MAAM,CAAC,KAAK,CAAC,iCAAiC,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;IAE9H,OAAO,OAAO,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;AAC1C,CAAC"}
|
|
@@ -1,13 +1,27 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* @name signer/local-keypair-signer
|
|
3
|
+
* @description Local hot-key signer for development and local-dev-keypair mode.
|
|
3
4
|
*
|
|
4
5
|
* WARNING: This is a local hot-key signer. The hosted SAP MCP server never
|
|
5
6
|
* receives keypair bytes, but production custody should prefer an external
|
|
6
7
|
* signer, hardware wallet, delegated session, or a tightly capped profile.
|
|
8
|
+
*
|
|
9
|
+
* @flow
|
|
10
|
+
* 1. `createLocalKeypairSigner` loads a keypair from file via `loadKeypairFromFile`.
|
|
11
|
+
* 2. Returns a `Signer` object with `publicKey`, `signTransaction`, and `signAllTransactions`
|
|
12
|
+
* that sign transactions locally using the loaded keypair.
|
|
13
|
+
*
|
|
14
|
+
* @module signer/local-keypair-signer
|
|
7
15
|
*/
|
|
8
16
|
import type { Signer } from './signer-types.js';
|
|
9
17
|
/**
|
|
10
|
-
*
|
|
18
|
+
* @name createLocalKeypairSigner
|
|
19
|
+
* @description Creates a local `Signer` backed by a keypair loaded from disk.
|
|
20
|
+
*
|
|
21
|
+
* @param walletPath — Filesystem path to the keypair JSON file.
|
|
22
|
+
* @returns A `Signer` implementation that signs `Transaction` and `VersionedTransaction` objects locally.
|
|
23
|
+
*
|
|
24
|
+
* @usedBy `signer-resolver.ts:resolveSigner` when mode is `local-keypair`.
|
|
11
25
|
*/
|
|
12
26
|
export declare function createLocalKeypairSigner(walletPath: string): Signer;
|
|
13
27
|
//# sourceMappingURL=local-keypair-signer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"local-keypair-signer.d.ts","sourceRoot":"","sources":["../../src/signer/local-keypair-signer.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"local-keypair-signer.d.ts","sourceRoot":"","sources":["../../src/signer/local-keypair-signer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAKH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAEhD;;;;;;;;GAQG;AACH,wBAAgB,wBAAwB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAoCnE"}
|
|
@@ -1,15 +1,29 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* @name signer/local-keypair-signer
|
|
3
|
+
* @description Local hot-key signer for development and local-dev-keypair mode.
|
|
3
4
|
*
|
|
4
5
|
* WARNING: This is a local hot-key signer. The hosted SAP MCP server never
|
|
5
6
|
* receives keypair bytes, but production custody should prefer an external
|
|
6
7
|
* signer, hardware wallet, delegated session, or a tightly capped profile.
|
|
8
|
+
*
|
|
9
|
+
* @flow
|
|
10
|
+
* 1. `createLocalKeypairSigner` loads a keypair from file via `loadKeypairFromFile`.
|
|
11
|
+
* 2. Returns a `Signer` object with `publicKey`, `signTransaction`, and `signAllTransactions`
|
|
12
|
+
* that sign transactions locally using the loaded keypair.
|
|
13
|
+
*
|
|
14
|
+
* @module signer/local-keypair-signer
|
|
7
15
|
*/
|
|
8
16
|
import { Transaction, VersionedTransaction } from '@solana/web3.js';
|
|
9
17
|
import { logger } from '../core/logger.js';
|
|
10
18
|
import { loadKeypairFromFile } from './load-keypair.js';
|
|
11
19
|
/**
|
|
12
|
-
*
|
|
20
|
+
* @name createLocalKeypairSigner
|
|
21
|
+
* @description Creates a local `Signer` backed by a keypair loaded from disk.
|
|
22
|
+
*
|
|
23
|
+
* @param walletPath — Filesystem path to the keypair JSON file.
|
|
24
|
+
* @returns A `Signer` implementation that signs `Transaction` and `VersionedTransaction` objects locally.
|
|
25
|
+
*
|
|
26
|
+
* @usedBy `signer-resolver.ts:resolveSigner` when mode is `local-keypair`.
|
|
13
27
|
*/
|
|
14
28
|
export function createLocalKeypairSigner(walletPath) {
|
|
15
29
|
logger.info('Creating local keypair signer', { walletPath: '[REDACTED]' });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"local-keypair-signer.js","sourceRoot":"","sources":["../../src/signer/local-keypair-signer.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"local-keypair-signer.js","sourceRoot":"","sources":["../../src/signer/local-keypair-signer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACpE,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAGxD;;;;;;;;GAQG;AACH,MAAM,UAAU,wBAAwB,CAAC,UAAkB;IACzD,MAAM,CAAC,IAAI,CAAC,+BAA+B,EAAE,EAAE,UAAU,EAAE,YAAY,EAAE,CAAC,CAAC;IAE3E,MAAM,OAAO,GAAG,mBAAmB,CAAC,UAAU,CAAC,CAAC;IAEhD,MAAM,CAAC,IAAI,CAAC,8BAA8B,EAAE;QAC1C,OAAO,EAAE,YAAY;QACrB,cAAc,EAAE,gCAAgC;QAChD,cAAc,EAAE,qFAAqF;KACtG,CAAC,CAAC;IAEH,OAAO;QACL,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,eAAe,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE;YAC5B,IAAI,EAAE,YAAY,oBAAoB,EAAE,CAAC;gBACvC,EAAE,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;YACrB,CAAC;iBAAM,IAAI,EAAE,YAAY,WAAW,EAAE,CAAC;gBACrC,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;YAC1B,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;YAClD,CAAC;YACD,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,mBAAmB,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;YACjC,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC;gBACrB,IAAI,EAAE,YAAY,oBAAoB,EAAE,CAAC;oBACvC,EAAE,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;gBACrB,CAAC;qBAAM,IAAI,EAAE,YAAY,WAAW,EAAE,CAAC;oBACrC,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;gBAC1B,CAAC;qBAAM,CAAC;oBACN,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;gBAClD,CAAC;YACH,CAAC;YACD,OAAO,GAAG,CAAC;QACb,CAAC;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -1,10 +1,27 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* @name signer/signer-resolver
|
|
3
|
+
* @description Resolves the appropriate signer implementation based on SAP MCP configuration mode.
|
|
4
|
+
*
|
|
5
|
+
* @flow
|
|
6
|
+
* 1. `resolveSigner` reads the config mode and determines the signer mode via `getSignerModeFromConfig`.
|
|
7
|
+
* 2. For `local-keypair` mode, creates a local keypair signer from `walletPath`.
|
|
8
|
+
* 3. For `external` mode, creates an external signer from `externalSignerUrl`.
|
|
9
|
+
* 4. For `none` mode (readonly), returns a result with no signer.
|
|
10
|
+
* 5. For `delegated` mode, throws — delegated signers are session-bound and resolved at runtime.
|
|
11
|
+
*
|
|
12
|
+
* @module signer/signer-resolver
|
|
3
13
|
*/
|
|
4
14
|
import type { SapMcpConfig } from '../core/types.js';
|
|
5
15
|
import type { SignerResult } from './signer-types.js';
|
|
6
16
|
/**
|
|
7
|
-
*
|
|
17
|
+
* @name resolveSigner
|
|
18
|
+
* @description Resolves and creates a signer instance based on the SAP MCP configuration.
|
|
19
|
+
*
|
|
20
|
+
* @param config — SAP MCP configuration with mode, wallet path, and external signer URL.
|
|
21
|
+
* @returns A `SignerResult` containing the signer, mode, and optional public key.
|
|
22
|
+
* @throws `SignerError` if required config is missing for the resolved mode, or if the mode is `delegated`.
|
|
23
|
+
*
|
|
24
|
+
* @usedBy `create-server.ts:createSapMcpServer`.
|
|
8
25
|
*/
|
|
9
26
|
export declare function resolveSigner(config: SapMcpConfig): Promise<SignerResult>;
|
|
10
27
|
//# sourceMappingURL=signer-resolver.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"signer-resolver.d.ts","sourceRoot":"","sources":["../../src/signer/signer-resolver.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"signer-resolver.d.ts","sourceRoot":"","sources":["../../src/signer/signer-resolver.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAIH,OAAO,KAAK,EAAE,YAAY,EAAiB,MAAM,kBAAkB,CAAC;AACpE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAItD;;;;;;;;;GASG;AACH,wBAAsB,aAAa,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC,CAuC/E"}
|
|
@@ -1,12 +1,29 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* @name signer/signer-resolver
|
|
3
|
+
* @description Resolves the appropriate signer implementation based on SAP MCP configuration mode.
|
|
4
|
+
*
|
|
5
|
+
* @flow
|
|
6
|
+
* 1. `resolveSigner` reads the config mode and determines the signer mode via `getSignerModeFromConfig`.
|
|
7
|
+
* 2. For `local-keypair` mode, creates a local keypair signer from `walletPath`.
|
|
8
|
+
* 3. For `external` mode, creates an external signer from `externalSignerUrl`.
|
|
9
|
+
* 4. For `none` mode (readonly), returns a result with no signer.
|
|
10
|
+
* 5. For `delegated` mode, throws — delegated signers are session-bound and resolved at runtime.
|
|
11
|
+
*
|
|
12
|
+
* @module signer/signer-resolver
|
|
3
13
|
*/
|
|
4
14
|
import { logger } from '../core/logger.js';
|
|
5
15
|
import { SignerError } from '../core/errors.js';
|
|
6
16
|
import { createLocalKeypairSigner } from './local-keypair-signer.js';
|
|
7
17
|
import { createExternalSigner } from './external-signer.js';
|
|
8
18
|
/**
|
|
9
|
-
*
|
|
19
|
+
* @name resolveSigner
|
|
20
|
+
* @description Resolves and creates a signer instance based on the SAP MCP configuration.
|
|
21
|
+
*
|
|
22
|
+
* @param config — SAP MCP configuration with mode, wallet path, and external signer URL.
|
|
23
|
+
* @returns A `SignerResult` containing the signer, mode, and optional public key.
|
|
24
|
+
* @throws `SignerError` if required config is missing for the resolved mode, or if the mode is `delegated`.
|
|
25
|
+
*
|
|
26
|
+
* @usedBy `create-server.ts:createSapMcpServer`.
|
|
10
27
|
*/
|
|
11
28
|
export async function resolveSigner(config) {
|
|
12
29
|
const mode = getSignerModeFromConfig(config);
|
|
@@ -43,7 +60,13 @@ export async function resolveSigner(config) {
|
|
|
43
60
|
}
|
|
44
61
|
}
|
|
45
62
|
/**
|
|
46
|
-
*
|
|
63
|
+
* @name getSignerModeFromConfig
|
|
64
|
+
* @description Maps the SAP MCP config mode to a `SapSignerMode` value.
|
|
65
|
+
*
|
|
66
|
+
* @param config — SAP MCP configuration.
|
|
67
|
+
* @returns The resolved signer mode: `none`, `local-keypair`, `external`, or `delegated`.
|
|
68
|
+
*
|
|
69
|
+
* @internal
|
|
47
70
|
*/
|
|
48
71
|
function getSignerModeFromConfig(config) {
|
|
49
72
|
switch (config.mode) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"signer-resolver.js","sourceRoot":"","sources":["../../src/signer/signer-resolver.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"signer-resolver.js","sourceRoot":"","sources":["../../src/signer/signer-resolver.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGhD,OAAO,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AACrE,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAE5D;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,MAAoB;IACtD,MAAM,IAAI,GAAG,uBAAuB,CAAC,MAAM,CAAC,CAAC;IAE7C,MAAM,CAAC,KAAK,CAAC,kBAAkB,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;IAE7E,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,MAAM;YACT,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;QAE1B,KAAK,eAAe,CAAC,CAAC,CAAC;YACrB,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;gBACvB,MAAM,IAAI,WAAW,CAAC,qDAAqD,CAAC,CAAC;YAC/E,CAAC;YACD,MAAM,WAAW,GAAG,wBAAwB,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;YAChE,OAAO;gBACL,IAAI,EAAE,eAAe;gBACrB,MAAM,EAAE,WAAW;gBACnB,SAAS,EAAE,WAAW,CAAC,SAAS,CAAC,QAAQ,EAAE;aAC5C,CAAC;QACJ,CAAC;QAED,KAAK,UAAU,CAAC,CAAC,CAAC;YAChB,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC;gBAC9B,MAAM,IAAI,WAAW,CAAC,2DAA2D,CAAC,CAAC;YACrF,CAAC;YACD,MAAM,cAAc,GAAG,MAAM,oBAAoB,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC;YAC5E,OAAO;gBACL,IAAI,EAAE,UAAU;gBAChB,MAAM,EAAE,cAAc;gBACtB,SAAS,EAAE,cAAc,CAAC,SAAS,CAAC,QAAQ,EAAE;aAC/C,CAAC;QACJ,CAAC;QAED,KAAK,WAAW;YACd,MAAM,IAAI,WAAW,CAAC,gGAAgG,CAAC,CAAC;QAE1H;YACE,MAAM,IAAI,WAAW,CAAC,wBAAwB,IAAI,EAAE,CAAC,CAAC;IAC1D,CAAC;AACH,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,uBAAuB,CAAC,MAAoB;IACnD,QAAQ,MAAM,CAAC,IAAI,EAAE,CAAC;QACpB,KAAK,UAAU;YACb,OAAO,MAAM,CAAC;QAChB,KAAK,YAAY;YACf,IAAI,MAAM,CAAC,iBAAiB,EAAE,CAAC;gBAC7B,OAAO,UAAU,CAAC;YACpB,CAAC;YACD,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;gBACtB,OAAO,eAAe,CAAC;YACzB,CAAC;YACD,OAAO,MAAM,CAAC;QAChB,KAAK,mBAAmB;YACtB,OAAO,eAAe,CAAC;QACzB,KAAK,iBAAiB;YACpB,OAAO,UAAU,CAAC;QACpB,KAAK,mBAAmB;YACtB,OAAO,WAAW,CAAC;QACrB;YACE,OAAO,MAAM,CAAC;IAClB,CAAC;AACH,CAAC"}
|
|
@@ -1,10 +1,29 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* @name signer/signer-types
|
|
3
|
+
* @description Core type definitions for the SAP MCP signer subsystem.
|
|
4
|
+
*
|
|
5
|
+
* Defines the `Signer` interface, signer modes, signer configuration, and the
|
|
6
|
+
* result of signer resolution. These types flow through the signer resolver,
|
|
7
|
+
* local keypair signer, and external signer modules.
|
|
8
|
+
*
|
|
9
|
+
* @flow
|
|
10
|
+
* 1. `signer-resolver.ts` uses `SignerResult` to return the resolved signer.
|
|
11
|
+
* 2. `local-keypair-signer.ts` and `external-signer.ts` implement the `Signer` interface.
|
|
12
|
+
* 3. `signer/index.ts` re-exports all types for external consumers.
|
|
13
|
+
*
|
|
14
|
+
* @module signer/signer-types
|
|
3
15
|
*/
|
|
4
16
|
import type { PublicKey, Transaction, VersionedTransaction } from '@solana/web3.js';
|
|
5
17
|
import type { SapAgentSession } from '../core/types.js';
|
|
6
18
|
/**
|
|
7
|
-
* Signer
|
|
19
|
+
* @name Signer
|
|
20
|
+
* @description Interface for signing Solana transactions in the SAP MCP runtime.
|
|
21
|
+
*
|
|
22
|
+
* @property publicKey — The signer's Solana public key.
|
|
23
|
+
* @property signTransaction — Signs a single transaction (legacy or versioned).
|
|
24
|
+
* @property signAllTransactions — Signs multiple transactions in batch.
|
|
25
|
+
*
|
|
26
|
+
* @usedBy `local-keypair-signer.ts`, `external-signer.ts`, `core/types.ts:SapMcpContext`
|
|
8
27
|
*/
|
|
9
28
|
export interface Signer {
|
|
10
29
|
publicKey: PublicKey;
|
|
@@ -12,11 +31,27 @@ export interface Signer {
|
|
|
12
31
|
signAllTransactions: <T extends Transaction | VersionedTransaction>(txs: T[]) => Promise<T[]>;
|
|
13
32
|
}
|
|
14
33
|
/**
|
|
15
|
-
*
|
|
34
|
+
* @name SignerMode
|
|
35
|
+
* @description The operational mode of the signer in the SAP MCP runtime.
|
|
36
|
+
*
|
|
37
|
+
* - `none` — Read-only mode, no signing capability.
|
|
38
|
+
* - `local-keypair` — Local hot-key signer loaded from disk.
|
|
39
|
+
* - `external` — External signer reached over HTTP.
|
|
40
|
+
* - `delegated` — Session-bound delegated signer (resolved per-session).
|
|
41
|
+
*
|
|
42
|
+
* @usedBy `SignerConfig.mode`, `SignerResult.mode`, `signer-resolver.ts`
|
|
16
43
|
*/
|
|
17
44
|
export type SignerMode = 'none' | 'local-keypair' | 'external' | 'delegated';
|
|
18
45
|
/**
|
|
19
|
-
*
|
|
46
|
+
* @name SignerConfig
|
|
47
|
+
* @description Configuration for constructing a signer instance.
|
|
48
|
+
*
|
|
49
|
+
* @property mode — The signer operational mode.
|
|
50
|
+
* @property walletPath — Optional filesystem path to a local keypair file.
|
|
51
|
+
* @property externalSignerUrl — Optional URL for an external signer service.
|
|
52
|
+
* @property delegatedSession — Optional session for delegated signing.
|
|
53
|
+
*
|
|
54
|
+
* @usedBy Signer construction logic across the signer module.
|
|
20
55
|
*/
|
|
21
56
|
export interface SignerConfig {
|
|
22
57
|
mode: SignerMode;
|
|
@@ -25,7 +60,14 @@ export interface SignerConfig {
|
|
|
25
60
|
delegatedSession?: SapAgentSession;
|
|
26
61
|
}
|
|
27
62
|
/**
|
|
28
|
-
*
|
|
63
|
+
* @name SignerResult
|
|
64
|
+
* @description Result of resolving a signer from configuration.
|
|
65
|
+
*
|
|
66
|
+
* @property signer — The resolved `Signer` instance (absent when mode is `none`).
|
|
67
|
+
* @property mode — The resolved signer mode.
|
|
68
|
+
* @property publicKey — Optional base58-encoded public key of the signer.
|
|
69
|
+
*
|
|
70
|
+
* @usedBy `signer-resolver.ts:resolveSigner`, `create-server.ts:createSapMcpServer`
|
|
29
71
|
*/
|
|
30
72
|
export interface SignerResult {
|
|
31
73
|
signer?: Signer;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"signer-types.d.ts","sourceRoot":"","sources":["../../src/signer/signer-types.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"signer-types.d.ts","sourceRoot":"","sources":["../../src/signer/signer-types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACpF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAExD;;;;;;;;;GASG;AACH,MAAM,WAAW,MAAM;IACrB,SAAS,EAAE,SAAS,CAAC;IACrB,eAAe,EAAE,CAAC,CAAC,SAAS,WAAW,GAAG,oBAAoB,EAAE,EAAE,EAAE,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC;IACrF,mBAAmB,EAAE,CAAC,CAAC,SAAS,WAAW,GAAG,oBAAoB,EAAE,GAAG,EAAE,CAAC,EAAE,KAAK,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;CAC/F;AAED;;;;;;;;;;GAUG;AACH,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,eAAe,GAAG,UAAU,GAAG,WAAW,CAAC;AAE7E;;;;;;;;;;GAUG;AACH,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,UAAU,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,gBAAgB,CAAC,EAAE,eAAe,CAAC;CACpC;AAED;;;;;;;;;GASG;AACH,MAAM,WAAW,YAAY;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,UAAU,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB"}
|
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* @name signer/signer-types
|
|
3
|
+
* @description Core type definitions for the SAP MCP signer subsystem.
|
|
4
|
+
*
|
|
5
|
+
* Defines the `Signer` interface, signer modes, signer configuration, and the
|
|
6
|
+
* result of signer resolution. These types flow through the signer resolver,
|
|
7
|
+
* local keypair signer, and external signer modules.
|
|
8
|
+
*
|
|
9
|
+
* @flow
|
|
10
|
+
* 1. `signer-resolver.ts` uses `SignerResult` to return the resolved signer.
|
|
11
|
+
* 2. `local-keypair-signer.ts` and `external-signer.ts` implement the `Signer` interface.
|
|
12
|
+
* 3. `signer/index.ts` re-exports all types for external consumers.
|
|
13
|
+
*
|
|
14
|
+
* @module signer/signer-types
|
|
3
15
|
*/
|
|
4
16
|
export {};
|
|
5
17
|
//# sourceMappingURL=signer-types.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"signer-types.js","sourceRoot":"","sources":["../../src/signer/signer-types.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"signer-types.js","sourceRoot":"","sources":["../../src/signer/signer-types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG"}
|
|
@@ -236,6 +236,18 @@ function buildAgentNextActionPayload(input) {
|
|
|
236
236
|
forbiddenActions: [...baseForbidden, 'Do not hand-roll PAYMENT-SIGNATURE headers for hosted SAP tools.'],
|
|
237
237
|
});
|
|
238
238
|
}
|
|
239
|
+
if (containsAny(combined, ['pricing_menu', 'pricing menu', 'accountnotinitialized', 'account not initialized', 'error number: 3012', 'anchor 3012', '3012'])) {
|
|
240
|
+
return nextAction({
|
|
241
|
+
classification: 'sap_registry_account_lifecycle',
|
|
242
|
+
retryable: false,
|
|
243
|
+
safeToRetryNow: false,
|
|
244
|
+
paymentCharged: 'no',
|
|
245
|
+
nextTool: 'sap_protocol_invariants',
|
|
246
|
+
nextAction: 'Do not repair the runtime and do not retry the same write. Inspect SAP protocol invariants and the agent registration/update lifecycle; the registry account set is missing a required on-chain PDA such as pricing_menu.',
|
|
247
|
+
userMessage: 'The local bridge is not the problem. The SAP registry write reached the on-chain program, but a required registry account such as pricing_menu is not initialized for this agent lifecycle.',
|
|
248
|
+
forbiddenActions: [...baseForbidden, 'Do not classify Anchor 3012/pricing_menu as missing sap_payments.', 'Do not retry paid or local writes until the account lifecycle is fixed or the SDK/server has an initializer path.'],
|
|
249
|
+
});
|
|
250
|
+
}
|
|
239
251
|
if (containsAny(combined, ['hosted_local_signer_required', 'local signer required', 'hosted server cannot sign', 'no signer configured'])) {
|
|
240
252
|
return nextAction({
|
|
241
253
|
classification: 'local_signer_route_required',
|
|
@@ -475,6 +487,12 @@ function buildAgentStartPayload(context, goal) {
|
|
|
475
487
|
required: false,
|
|
476
488
|
reason: 'Read the machine-readable x402/pay.sh pricing tiers before paid hosted tools or marketplace execution.',
|
|
477
489
|
},
|
|
490
|
+
{
|
|
491
|
+
namespace: 'hosted sap',
|
|
492
|
+
tool: 'sap_estimate_tool_cost',
|
|
493
|
+
required: false,
|
|
494
|
+
reason: 'Before any paid tool call, pass the tool name to get the exact tier, estimated USD cost, and recommended maxPriceUsd. Avoids silent cap aborts.',
|
|
495
|
+
},
|
|
478
496
|
{
|
|
479
497
|
namespace: 'hosted sap',
|
|
480
498
|
tool: 'sap_skills_upgrade_plan',
|
|
@@ -536,8 +554,9 @@ function buildAgentStartPayload(context, goal) {
|
|
|
536
554
|
'For initial orientation, use free exact/base reads first: sap_agent_context, sap_get_agent, sap_get_agent_profile, sap_get_agent_stats, sap_is_agent_active, sap_get_global_state, or sap_list_agents with limit <= 20 and view: compact. Use paid sap_discover_agents or sap_list_all_agents only when the user needs search, enrichment, analytics, or larger pages.',
|
|
537
555
|
'If a capability-filtered SAP agent lookup returns zero rows, retry with query or wallet before saying the agent is absent because secondary indexes can lag AgentAccount rows.',
|
|
538
556
|
'For free reads, call hosted tools directly.',
|
|
557
|
+
'Before any paid call, verify USDC and SOL balances using free core balance tools: sol_get_balance, spl-token_getBalance, spl-token_getTokenAccounts, or magicblock_balance. Use paid read-premium holdings tools only when the user needs enriched portfolio context. An agent without USDC cannot make paid calls.',
|
|
539
558
|
'For paid/write calls, use sap_payments_call_paid_tool from the local sap_payments bridge when available.',
|
|
540
|
-
'Before paid calls, use
|
|
559
|
+
'Before paid calls, use sap_estimate_tool_cost to know the exact tier and estimated USD cost of a specific tool, or sap_pricing_catalog for the full tier overview. The x402 challenge itself is the final price source of truth.',
|
|
541
560
|
'For external HTTP x402 agent endpoints discovered through SAP registry metadata, use sap_payments_call_external_x402 instead of hand-rolled HTTP/sign/retry scripts.',
|
|
542
561
|
'If sap_payments is missing, ask the user to run the wizard repair flow and restart the agent runtime.',
|
|
543
562
|
'If hosted sap_register_agent returns hosted_local_signer_required, do not retry the hosted direct write. No x402 payment was charged; call local sap_payments_register_agent with the same registration fields and confirm: true.',
|