@oobe-protocol-labs/sap-mcp-server 0.9.2 → 0.9.3
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 +731 -0
- package/README.md +9 -3
- package/USER_DOCS/00_START_HERE.md +51 -4
- package/USER_DOCS/01_HOSTED_REMOTE_MCP.md +1 -1
- package/USER_DOCS/03_PAYMENTS_X402_PAYSH.md +32 -3
- package/USER_DOCS/04_CLIENT_CONFIGS.md +14 -7
- package/USER_DOCS/05_SKILLS_AND_TOOLS.md +68 -8
- package/USER_DOCS/06_DESKTOP_GUI_WIZARD.md +20 -14
- package/USER_DOCS/07_SMITHERY_AND_MARKETPLACES.md +7 -0
- package/config.example.json +5 -4
- package/config.schema.json +9 -4
- 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 +232 -25
- package/dist/adapters/mcp/sdk-compat.js.map +1 -1
- package/dist/adapters/mcp/tool-response.d.ts +51 -3
- package/dist/adapters/mcp/tool-response.d.ts.map +1 -1
- package/dist/adapters/mcp/tool-response.js +48 -3
- 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 +15 -10
- 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 +136 -33
- package/dist/config/mcp-client-injection.js.map +1 -1
- package/dist/config/paths.d.ts +14 -1
- package/dist/config/paths.d.ts.map +1 -1
- package/dist/config/paths.js +20 -1
- 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/wizard.d.ts +6 -0
- package/dist/config/wizard.d.ts.map +1 -1
- package/dist/config/wizard.js +102 -18
- package/dist/config/wizard.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 +14 -1
- package/dist/config-cli.js.map +1 -1
- package/dist/core/constants.d.ts +33 -6
- package/dist/core/constants.d.ts.map +1 -1
- package/dist/core/constants.js +38 -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/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/memory/async-processor.d.ts +107 -0
- package/dist/memory/async-processor.d.ts.map +1 -0
- package/dist/memory/async-processor.js +204 -0
- package/dist/memory/async-processor.js.map +1 -0
- package/dist/memory/auto-record.d.ts +47 -0
- package/dist/memory/auto-record.d.ts.map +1 -0
- package/dist/memory/auto-record.js +133 -0
- package/dist/memory/auto-record.js.map +1 -0
- package/dist/memory/database.d.ts +103 -0
- package/dist/memory/database.d.ts.map +1 -0
- package/dist/memory/database.js +337 -0
- package/dist/memory/database.js.map +1 -0
- package/dist/memory/hermes-bridge.d.ts +70 -0
- package/dist/memory/hermes-bridge.d.ts.map +1 -0
- package/dist/memory/hermes-bridge.js +155 -0
- package/dist/memory/hermes-bridge.js.map +1 -0
- package/dist/memory/index.d.ts +23 -0
- package/dist/memory/index.d.ts.map +1 -0
- package/dist/memory/index.js +22 -0
- package/dist/memory/index.js.map +1 -0
- package/dist/memory/memory-store.d.ts +76 -0
- package/dist/memory/memory-store.d.ts.map +1 -0
- package/dist/memory/memory-store.js +231 -0
- package/dist/memory/memory-store.js.map +1 -0
- package/dist/memory/stream-buffer-store.d.ts +69 -0
- package/dist/memory/stream-buffer-store.d.ts.map +1 -0
- package/dist/memory/stream-buffer-store.js +182 -0
- package/dist/memory/stream-buffer-store.js.map +1 -0
- package/dist/memory/tool-call-store.d.ts +68 -0
- package/dist/memory/tool-call-store.d.ts.map +1 -0
- package/dist/memory/tool-call-store.js +189 -0
- package/dist/memory/tool-call-store.js.map +1 -0
- package/dist/memory/types.d.ts +197 -0
- package/dist/memory/types.d.ts.map +1 -0
- package/dist/memory/types.js +15 -0
- package/dist/memory/types.js.map +1 -0
- package/dist/memory/utils.d.ts +30 -0
- package/dist/memory/utils.d.ts.map +1 -0
- package/dist/memory/utils.js +47 -0
- package/dist/memory/utils.js.map +1 -0
- 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 +22 -0
- package/dist/payments/hosted-tool-eligibility.d.ts.map +1 -0
- package/dist/payments/hosted-tool-eligibility.js +173 -0
- package/dist/payments/hosted-tool-eligibility.js.map +1 -0
- package/dist/payments/index.d.ts +2 -2
- package/dist/payments/index.d.ts.map +1 -1
- package/dist/payments/index.js +1 -1
- package/dist/payments/index.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 +33 -0
- package/dist/payments/monetization-gate.d.ts.map +1 -1
- package/dist/payments/monetization-gate.js +124 -12
- package/dist/payments/monetization-gate.js.map +1 -1
- package/dist/payments/pricing.d.ts +31 -0
- package/dist/payments/pricing.d.ts.map +1 -1
- package/dist/payments/pricing.js +317 -19
- 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 +121 -0
- package/dist/payments/x402-paid-call.d.ts.map +1 -1
- package/dist/payments/x402-paid-call.js +428 -1
- 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 +165 -0
- package/dist/premium/builtin-plugins.d.ts.map +1 -0
- package/dist/premium/builtin-plugins.js +422 -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 +133 -0
- package/dist/premium/provider-bridge.d.ts.map +1 -0
- package/dist/premium/provider-bridge.js +349 -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 +138 -0
- package/dist/premium/webhook-engine.d.ts.map +1 -0
- package/dist/premium/webhook-engine.js +516 -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 +20 -16
- 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 +7 -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 +4 -5
- 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 +22 -23
- 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 +347 -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 +23 -4
- package/dist/remote/public-home/sections.js.map +1 -1
- package/dist/remote/public-home/types.d.ts +9 -0
- package/dist/remote/public-home/types.d.ts.map +1 -1
- package/dist/remote/server.d.ts +20 -0
- package/dist/remote/server.d.ts.map +1 -1
- package/dist/remote/server.js +369 -8
- 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 +38 -6
- 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/tool-permissions.d.ts.map +1 -1
- package/dist/security/tool-permissions.js +12 -0
- package/dist/security/tool-permissions.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 +35 -1
- package/dist/server/server-metadata.d.ts.map +1 -1
- package/dist/server/server-metadata.js +36 -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 +19 -3
- package/dist/signer/local-keypair-signer.d.ts.map +1 -1
- package/dist/signer/local-keypair-signer.js +24 -4
- 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/strategies/strategy-store.d.ts +82 -0
- package/dist/strategies/strategy-store.d.ts.map +1 -0
- package/dist/strategies/strategy-store.js +165 -0
- package/dist/strategies/strategy-store.js.map +1 -0
- package/dist/tools/agent-start-tool.d.ts.map +1 -1
- package/dist/tools/agent-start-tool.js +481 -5
- 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 +32 -7
- 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 +8 -0
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +11 -0
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/magicblock-tools.d.ts +31 -6
- package/dist/tools/magicblock-tools.d.ts.map +1 -1
- package/dist/tools/magicblock-tools.js +178 -53
- package/dist/tools/magicblock-tools.js.map +1 -1
- package/dist/tools/memory-tools.d.ts +26 -0
- package/dist/tools/memory-tools.d.ts.map +1 -0
- package/dist/tools/memory-tools.js +533 -0
- package/dist/tools/memory-tools.js.map +1 -0
- 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 +1102 -0
- package/dist/tools/premium-tools.js.map +1 -0
- package/dist/tools/profile-tools.d.ts.map +1 -1
- package/dist/tools/profile-tools.js +18 -1
- package/dist/tools/profile-tools.js.map +1 -1
- package/dist/tools/quick-context-tool.d.ts +16 -0
- package/dist/tools/quick-context-tool.d.ts.map +1 -0
- package/dist/tools/quick-context-tool.js +304 -0
- package/dist/tools/quick-context-tool.js.map +1 -0
- package/dist/tools/register-tools.d.ts.map +1 -1
- package/dist/tools/register-tools.js +17 -0
- package/dist/tools/register-tools.js.map +1 -1
- package/dist/tools/sap-sdk-tools.d.ts +419 -0
- package/dist/tools/sap-sdk-tools.d.ts.map +1 -1
- package/dist/tools/sap-sdk-tools.js +1547 -126
- package/dist/tools/sap-sdk-tools.js.map +1 -1
- package/dist/tools/sap-sns-tools.d.ts +2 -2
- package/dist/tools/sap-sns-tools.d.ts.map +1 -1
- package/dist/tools/sap-sns-tools.js +12 -8
- package/dist/tools/sap-sns-tools.js.map +1 -1
- package/dist/tools/skills-tools.d.ts +16 -0
- package/dist/tools/skills-tools.d.ts.map +1 -1
- package/dist/tools/skills-tools.js +282 -5
- package/dist/tools/skills-tools.js.map +1 -1
- package/dist/tools/tool-aliases.d.ts.map +1 -1
- package/dist/tools/tool-aliases.js +7 -0
- package/dist/tools/tool-aliases.js.map +1 -1
- package/dist/tools/transaction-tools.d.ts +135 -0
- package/dist/tools/transaction-tools.d.ts.map +1 -1
- package/dist/tools/transaction-tools.js +515 -16
- package/dist/tools/transaction-tools.js.map +1 -1
- package/dist/tools/x402-paid-call-tool.d.ts.map +1 -1
- package/dist/tools/x402-paid-call-tool.js +756 -23
- 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/dist/wizard-core/desktop-flow.d.ts.map +1 -1
- package/dist/wizard-core/desktop-flow.js +4 -2
- package/dist/wizard-core/desktop-flow.js.map +1 -1
- package/docs/03_CONFIGURATION_AND_WIZARD.md +5 -3
- package/docs/06_PAYMENTS_X402_AND_PAYSH.md +82 -4
- package/docs/07_ENDPOINTS_AND_CLIENTS.md +7 -3
- package/docs/09_TOOLS_SKILLS_AND_AGENT_GUIDE.md +21 -3
- package/docs/14_DESKTOP_WIZARD_RELEASE.md +8 -6
- package/docs/16_SAP_AGENT_IDENTITY_PIPELINE.md +304 -0
- package/docs/18_PREMIUM_PLUGIN_RUNTIME.md +108 -0
- package/docs/BRANCH_AND_CI.md +67 -0
- package/docs/README.md +19 -2
- package/docs/magicblock-tools.md +70 -29
- package/package.json +10 -6
- package/server.json +3 -3
- package/skills/README.md +12 -2
- package/skills/sap-agent-registry/SKILL.md +99 -4
- package/skills/sap-defi/SKILL.md +8 -4
- package/skills/sap-discovery-indexing/SKILL.md +26 -4
- package/skills/sap-escrow-settlement/SKILL.md +22 -4
- package/skills/sap-mcp/SKILL.md +140 -22
- package/skills/sap-mcp/TOOL_REFERENCE.md +47 -7
- package/skills/sap-nft-metaplex/SKILL.md +22 -0
- package/skills/sap-operations/SKILL.md +32 -3
- package/skills/sap-payments-x402/SKILL.md +85 -8
- package/skills/sap-sns/SKILL.md +32 -10
- package/smithery.config.schema.json +7 -0
|
@@ -1,12 +1,27 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* @name server/register-capabilities
|
|
3
|
+
* @description Registers all MCP server capabilities (tools, resources, and prompts) on the server instance.
|
|
4
|
+
*
|
|
5
|
+
* @flow
|
|
6
|
+
* 1. Registers SAP Protocol, Synapse AgentKit, network, and transaction tools via `registerTools`.
|
|
7
|
+
* 2. Registers on-chain resources via `registerResources`.
|
|
8
|
+
* 3. Registers interactive prompts via `registerPrompts`.
|
|
9
|
+
*
|
|
10
|
+
* @module server/register-capabilities
|
|
3
11
|
*/
|
|
4
12
|
import { registerTools } from '../tools/register-tools.js';
|
|
5
13
|
import { registerResources } from '../resources/register-resources.js';
|
|
6
14
|
import { registerPrompts } from '../prompts/register-prompts.js';
|
|
7
15
|
import { logger } from '../core/logger.js';
|
|
8
16
|
/**
|
|
9
|
-
*
|
|
17
|
+
* @name registerCapabilities
|
|
18
|
+
* @description Registers all tools, resources, and prompts on the MCP server.
|
|
19
|
+
*
|
|
20
|
+
* @param server — The MCP `Server` instance to register capabilities on.
|
|
21
|
+
* @param context — SAP MCP runtime context shared by all capability handlers.
|
|
22
|
+
* @throws If any registration sub-call fails.
|
|
23
|
+
*
|
|
24
|
+
* @usedBy `create-server.ts:createSapMcpServer`.
|
|
10
25
|
*/
|
|
11
26
|
export async function registerCapabilities(server, context) {
|
|
12
27
|
logger.debug('Registering server capabilities');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"register-capabilities.js","sourceRoot":"","sources":["../../src/server/register-capabilities.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"register-capabilities.js","sourceRoot":"","sources":["../../src/server/register-capabilities.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAIH,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAE3C;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,MAAc,EACd,OAAsB;IAEtB,MAAM,CAAC,KAAK,CAAC,iCAAiC,CAAC,CAAC;IAEhD,2EAA2E;IAC3E,MAAM,aAAa,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrC,MAAM,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;IAE9C,qBAAqB;IACrB,MAAM,iBAAiB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACzC,MAAM,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;IAErC,mBAAmB;IACnB,MAAM,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACvC,MAAM,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;AACrC,CAAC"}
|
|
@@ -1,3 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @name server/server-metadata
|
|
3
|
+
* @description Static server metadata and capability counts for the SAP MCP server.
|
|
4
|
+
*
|
|
5
|
+
* Provides the package-level metadata (name, version, author, license, repository)
|
|
6
|
+
* and a summary of registered capability counts by category.
|
|
7
|
+
*
|
|
8
|
+
* @module server/server-metadata
|
|
9
|
+
*/
|
|
10
|
+
/**
|
|
11
|
+
* @name SERVER_METADATA
|
|
12
|
+
* @description Static metadata describing the SAP MCP server package.
|
|
13
|
+
*
|
|
14
|
+
* @property name — Server identifier name.
|
|
15
|
+
* @property title — Human-readable server title.
|
|
16
|
+
* @property version — Semver version string.
|
|
17
|
+
* @property description — Server description for MCP clients.
|
|
18
|
+
* @property author — Author or organization name.
|
|
19
|
+
* @property license — SPDX license identifier.
|
|
20
|
+
* @property homepage — Homepage URL.
|
|
21
|
+
* @property repository — Source code repository URL.
|
|
22
|
+
* @property bugs — Issue tracker URL.
|
|
23
|
+
* @property icon — Icon URL for MCP client display.
|
|
24
|
+
*
|
|
25
|
+
* @usedBy `server/index.ts`, health and info endpoints.
|
|
26
|
+
*/
|
|
1
27
|
export declare const SERVER_METADATA: {
|
|
2
28
|
name: string;
|
|
3
29
|
title: string;
|
|
@@ -11,7 +37,13 @@ export declare const SERVER_METADATA: {
|
|
|
11
37
|
icon: string;
|
|
12
38
|
};
|
|
13
39
|
/**
|
|
14
|
-
*
|
|
40
|
+
* @name CAPABILITIES
|
|
41
|
+
* @description Summary of registered MCP capabilities and their category counts.
|
|
42
|
+
*
|
|
43
|
+
* @property tools.count — Total number of registered tools.
|
|
44
|
+
* @property tools.categories — Tool counts by category (sap, sns, agentKit, etc.).
|
|
45
|
+
*
|
|
46
|
+
* @usedBy `server/index.ts`, monitoring and health endpoints.
|
|
15
47
|
*/
|
|
16
48
|
export declare const CAPABILITIES: {
|
|
17
49
|
tools: {
|
|
@@ -26,6 +58,8 @@ export declare const CAPABILITIES: {
|
|
|
26
58
|
profiles: number;
|
|
27
59
|
skills: number;
|
|
28
60
|
chat: number;
|
|
61
|
+
premium: number;
|
|
62
|
+
quickContext: number;
|
|
29
63
|
};
|
|
30
64
|
};
|
|
31
65
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server-metadata.d.ts","sourceRoot":"","sources":["../../src/server/server-metadata.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"server-metadata.d.ts","sourceRoot":"","sources":["../../src/server/server-metadata.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAWH;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,eAAe;;;;;;;;;;;CAW3B,CAAC;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;CAiBxB,CAAC"}
|
|
@@ -1,4 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @name server/server-metadata
|
|
3
|
+
* @description Static server metadata and capability counts for the SAP MCP server.
|
|
4
|
+
*
|
|
5
|
+
* Provides the package-level metadata (name, version, author, license, repository)
|
|
6
|
+
* and a summary of registered capability counts by category.
|
|
7
|
+
*
|
|
8
|
+
* @module server/server-metadata
|
|
9
|
+
*/
|
|
1
10
|
import { MCP_SERVER_DESCRIPTION, MCP_SERVER_ICON_URL, MCP_SERVER_NAME, MCP_SERVER_TITLE, MCP_SERVER_VERSION, MCP_SERVER_WEBSITE_URL, } from '../core/constants.js';
|
|
11
|
+
/**
|
|
12
|
+
* @name SERVER_METADATA
|
|
13
|
+
* @description Static metadata describing the SAP MCP server package.
|
|
14
|
+
*
|
|
15
|
+
* @property name — Server identifier name.
|
|
16
|
+
* @property title — Human-readable server title.
|
|
17
|
+
* @property version — Semver version string.
|
|
18
|
+
* @property description — Server description for MCP clients.
|
|
19
|
+
* @property author — Author or organization name.
|
|
20
|
+
* @property license — SPDX license identifier.
|
|
21
|
+
* @property homepage — Homepage URL.
|
|
22
|
+
* @property repository — Source code repository URL.
|
|
23
|
+
* @property bugs — Issue tracker URL.
|
|
24
|
+
* @property icon — Icon URL for MCP client display.
|
|
25
|
+
*
|
|
26
|
+
* @usedBy `server/index.ts`, health and info endpoints.
|
|
27
|
+
*/
|
|
2
28
|
export const SERVER_METADATA = {
|
|
3
29
|
name: MCP_SERVER_NAME,
|
|
4
30
|
title: MCP_SERVER_TITLE,
|
|
@@ -12,11 +38,17 @@ export const SERVER_METADATA = {
|
|
|
12
38
|
icon: MCP_SERVER_ICON_URL,
|
|
13
39
|
};
|
|
14
40
|
/**
|
|
15
|
-
*
|
|
41
|
+
* @name CAPABILITIES
|
|
42
|
+
* @description Summary of registered MCP capabilities and their category counts.
|
|
43
|
+
*
|
|
44
|
+
* @property tools.count — Total number of registered tools.
|
|
45
|
+
* @property tools.categories — Tool counts by category (sap, sns, agentKit, etc.).
|
|
46
|
+
*
|
|
47
|
+
* @usedBy `server/index.ts`, monitoring and health endpoints.
|
|
16
48
|
*/
|
|
17
49
|
export const CAPABILITIES = {
|
|
18
50
|
tools: {
|
|
19
|
-
count:
|
|
51
|
+
count: 336,
|
|
20
52
|
categories: {
|
|
21
53
|
sap: 75,
|
|
22
54
|
sns: 13,
|
|
@@ -27,6 +59,8 @@ export const CAPABILITIES = {
|
|
|
27
59
|
profiles: 4,
|
|
28
60
|
skills: 3,
|
|
29
61
|
chat: 8,
|
|
62
|
+
premium: 17,
|
|
63
|
+
quickContext: 1,
|
|
30
64
|
},
|
|
31
65
|
},
|
|
32
66
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server-metadata.js","sourceRoot":"","sources":["../../src/server/server-metadata.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,EACtB,mBAAmB,EACnB,eAAe,EACf,gBAAgB,EAChB,kBAAkB,EAClB,sBAAsB,GACvB,MAAM,sBAAsB,CAAC;AAE9B,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,IAAI,EAAE,eAAe;IACrB,KAAK,EAAE,gBAAgB;IACvB,OAAO,EAAE,kBAAkB;IAC3B,WAAW,EAAE,sBAAsB;IACnC,MAAM,EAAE,oBAAoB;IAC5B,OAAO,EAAE,KAAK;IACd,QAAQ,EAAE,sBAAsB;IAChC,UAAU,EAAE,0CAA0C;IACtD,IAAI,EAAE,iDAAiD;IACvD,IAAI,EAAE,mBAAmB;CAC1B,CAAC;AAEF
|
|
1
|
+
{"version":3,"file":"server-metadata.js","sourceRoot":"","sources":["../../src/server/server-metadata.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EACL,sBAAsB,EACtB,mBAAmB,EACnB,eAAe,EACf,gBAAgB,EAChB,kBAAkB,EAClB,sBAAsB,GACvB,MAAM,sBAAsB,CAAC;AAE9B;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,IAAI,EAAE,eAAe;IACrB,KAAK,EAAE,gBAAgB;IACvB,OAAO,EAAE,kBAAkB;IAC3B,WAAW,EAAE,sBAAsB;IACnC,MAAM,EAAE,oBAAoB;IAC5B,OAAO,EAAE,KAAK;IACd,QAAQ,EAAE,sBAAsB;IAChC,UAAU,EAAE,0CAA0C;IACtD,IAAI,EAAE,iDAAiD;IACvD,IAAI,EAAE,mBAAmB;CAC1B,CAAC;AAEF;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,KAAK,EAAE;QACL,KAAK,EAAE,GAAG;QACV,UAAU,EAAE;YACV,GAAG,EAAE,EAAE;YACP,GAAG,EAAE,EAAE;YACP,QAAQ,EAAE,GAAG;YACb,gBAAgB,EAAE,CAAC;YACnB,YAAY,EAAE,CAAC;YACf,YAAY,EAAE,CAAC;YACf,QAAQ,EAAE,CAAC;YACX,MAAM,EAAE,CAAC;YACT,IAAI,EAAE,CAAC;YACP,OAAO,EAAE,EAAE;YACX,YAAY,EAAE,CAAC;SAChB;KACF;CACF,CAAC"}
|
|
@@ -1,9 +1,27 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* @name session/agent-session
|
|
3
|
+
* @description Agent session lifecycle management — creation, activation checks, and permission checks.
|
|
4
|
+
*
|
|
5
|
+
* @flow
|
|
6
|
+
* 1. `createAgentSession` generates a new session with a UUID, filtered permissions,
|
|
7
|
+
* spending limits, and a 24-hour expiry.
|
|
8
|
+
* 2. `isSessionActive` checks whether a session is still within its expiry and budget.
|
|
9
|
+
* 3. `hasPermission` checks whether a session holds a specific permission.
|
|
10
|
+
*
|
|
11
|
+
* @module session/agent-session
|
|
3
12
|
*/
|
|
4
13
|
import type { SapAgentSession, SapPermission } from '../core/types.js';
|
|
5
14
|
/**
|
|
6
|
-
*
|
|
15
|
+
* @name createAgentSession
|
|
16
|
+
* @description Creates a new agent session with a unique id, filtered permissions, spending limits, and 24-hour expiry.
|
|
17
|
+
*
|
|
18
|
+
* @param data.agentId — Unique identifier for the agent.
|
|
19
|
+
* @param data.permissions — Array of permission strings (invalid ones are filtered out).
|
|
20
|
+
* @param data.spendingLimits — Spending limits for per-transaction, per-day, and per-session SOL amounts.
|
|
21
|
+
* @returns A `SapAgentSession` object with a generated `sessionId`, filtered permissions,
|
|
22
|
+
* remaining session balance set to `maxPerSessionSol`, and 24-hour expiry.
|
|
23
|
+
*
|
|
24
|
+
* @usedBy `delegated-session.ts:createDelegatedSession`.
|
|
7
25
|
*/
|
|
8
26
|
export declare function createAgentSession(data: {
|
|
9
27
|
agentId: string;
|
|
@@ -15,11 +33,24 @@ export declare function createAgentSession(data: {
|
|
|
15
33
|
};
|
|
16
34
|
}): SapAgentSession;
|
|
17
35
|
/**
|
|
18
|
-
*
|
|
36
|
+
* @name isSessionActive
|
|
37
|
+
* @description Checks whether a session is still active (not expired and has remaining budget).
|
|
38
|
+
*
|
|
39
|
+
* @param session — The agent session to check.
|
|
40
|
+
* @returns `true` if the current time is before `expiresAt` and `remainingSessionSol > 0`, `false` otherwise.
|
|
41
|
+
*
|
|
42
|
+
* @usedBy Session validation across the SAP MCP runtime.
|
|
19
43
|
*/
|
|
20
44
|
export declare function isSessionActive(session: SapAgentSession): boolean;
|
|
21
45
|
/**
|
|
22
|
-
*
|
|
46
|
+
* @name hasPermission
|
|
47
|
+
* @description Checks whether a session holds a specific permission.
|
|
48
|
+
*
|
|
49
|
+
* @param session — The agent session to check.
|
|
50
|
+
* @param permission — The permission string to verify.
|
|
51
|
+
* @returns `true` if the session's permissions array includes the given permission, `false` otherwise.
|
|
52
|
+
*
|
|
53
|
+
* @usedBy Session validation across the SAP MCP runtime.
|
|
23
54
|
*/
|
|
24
55
|
export declare function hasPermission(session: SapAgentSession, permission: SapPermission): boolean;
|
|
25
56
|
//# sourceMappingURL=agent-session.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-session.d.ts","sourceRoot":"","sources":["../../src/session/agent-session.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"agent-session.d.ts","sourceRoot":"","sources":["../../src/session/agent-session.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAGvE;;;;;;;;;;;GAWG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE;IACvC,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,cAAc,EAAE;QACd,oBAAoB,EAAE,MAAM,CAAC;QAC7B,YAAY,EAAE,MAAM,CAAC;QACrB,gBAAgB,EAAE,MAAM,CAAC;KAC1B,CAAC;CACH,GAAG,eAAe,CAclB;AAED;;;;;;;;GAQG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAGjE;AAED;;;;;;;;;GASG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,aAAa,GAAG,OAAO,CAE1F"}
|
|
@@ -1,9 +1,27 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* @name session/agent-session
|
|
3
|
+
* @description Agent session lifecycle management — creation, activation checks, and permission checks.
|
|
4
|
+
*
|
|
5
|
+
* @flow
|
|
6
|
+
* 1. `createAgentSession` generates a new session with a UUID, filtered permissions,
|
|
7
|
+
* spending limits, and a 24-hour expiry.
|
|
8
|
+
* 2. `isSessionActive` checks whether a session is still within its expiry and budget.
|
|
9
|
+
* 3. `hasPermission` checks whether a session holds a specific permission.
|
|
10
|
+
*
|
|
11
|
+
* @module session/agent-session
|
|
3
12
|
*/
|
|
4
13
|
import { isValidPermission } from '../core/guards.js';
|
|
5
14
|
/**
|
|
6
|
-
*
|
|
15
|
+
* @name createAgentSession
|
|
16
|
+
* @description Creates a new agent session with a unique id, filtered permissions, spending limits, and 24-hour expiry.
|
|
17
|
+
*
|
|
18
|
+
* @param data.agentId — Unique identifier for the agent.
|
|
19
|
+
* @param data.permissions — Array of permission strings (invalid ones are filtered out).
|
|
20
|
+
* @param data.spendingLimits — Spending limits for per-transaction, per-day, and per-session SOL amounts.
|
|
21
|
+
* @returns A `SapAgentSession` object with a generated `sessionId`, filtered permissions,
|
|
22
|
+
* remaining session balance set to `maxPerSessionSol`, and 24-hour expiry.
|
|
23
|
+
*
|
|
24
|
+
* @usedBy `delegated-session.ts:createDelegatedSession`.
|
|
7
25
|
*/
|
|
8
26
|
export function createAgentSession(data) {
|
|
9
27
|
const now = Date.now();
|
|
@@ -20,14 +38,27 @@ export function createAgentSession(data) {
|
|
|
20
38
|
};
|
|
21
39
|
}
|
|
22
40
|
/**
|
|
23
|
-
*
|
|
41
|
+
* @name isSessionActive
|
|
42
|
+
* @description Checks whether a session is still active (not expired and has remaining budget).
|
|
43
|
+
*
|
|
44
|
+
* @param session — The agent session to check.
|
|
45
|
+
* @returns `true` if the current time is before `expiresAt` and `remainingSessionSol > 0`, `false` otherwise.
|
|
46
|
+
*
|
|
47
|
+
* @usedBy Session validation across the SAP MCP runtime.
|
|
24
48
|
*/
|
|
25
49
|
export function isSessionActive(session) {
|
|
26
50
|
const now = Date.now();
|
|
27
51
|
return now < session.expiresAt && session.spendingLimits.remainingSessionSol > 0;
|
|
28
52
|
}
|
|
29
53
|
/**
|
|
30
|
-
*
|
|
54
|
+
* @name hasPermission
|
|
55
|
+
* @description Checks whether a session holds a specific permission.
|
|
56
|
+
*
|
|
57
|
+
* @param session — The agent session to check.
|
|
58
|
+
* @param permission — The permission string to verify.
|
|
59
|
+
* @returns `true` if the session's permissions array includes the given permission, `false` otherwise.
|
|
60
|
+
*
|
|
61
|
+
* @usedBy Session validation across the SAP MCP runtime.
|
|
31
62
|
*/
|
|
32
63
|
export function hasPermission(session, permission) {
|
|
33
64
|
return session.permissions.includes(permission);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-session.js","sourceRoot":"","sources":["../../src/session/agent-session.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"agent-session.js","sourceRoot":"","sources":["../../src/session/agent-session.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAGH,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAEtD;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,kBAAkB,CAAC,IAQlC;IACC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAEvB,OAAO;QACL,SAAS,EAAE,MAAM,CAAC,UAAU,EAAE;QAC9B,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,iBAAiB,CAAC;QACvD,cAAc,EAAE;YACd,GAAG,IAAI,CAAC,cAAc;YACtB,mBAAmB,EAAE,IAAI,CAAC,cAAc,CAAC,gBAAgB;SAC1D;QACD,SAAS,EAAE,GAAG,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,WAAW;QACjD,SAAS,EAAE,GAAG;KACf,CAAC;AACJ,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,eAAe,CAAC,OAAwB;IACtD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACvB,OAAO,GAAG,GAAG,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,cAAc,CAAC,mBAAmB,GAAG,CAAC,CAAC;AACnF,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,aAAa,CAAC,OAAwB,EAAE,UAAyB;IAC/E,OAAO,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;AAClD,CAAC"}
|
|
@@ -1,9 +1,29 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* @name session/delegated-session
|
|
3
|
+
* @description Delegated session management — creates and validates sessions that delegate
|
|
4
|
+
* agent capabilities to an MCP client with policy-enforced permissions.
|
|
5
|
+
*
|
|
6
|
+
* @flow
|
|
7
|
+
* 1. `createDelegatedSession` validates requested permissions against the policy engine,
|
|
8
|
+
* then creates a new agent session via `createAgentSession`.
|
|
9
|
+
* 2. `validateDelegatedSession` checks expiry, permission, and spending limits for an
|
|
10
|
+
* existing session before allowing a delegated action.
|
|
11
|
+
*
|
|
12
|
+
* @module session/delegated-session
|
|
3
13
|
*/
|
|
4
14
|
import type { SapAgentSession, SapMcpContext, SapPermission } from '../core/types.js';
|
|
5
15
|
/**
|
|
6
|
-
*
|
|
16
|
+
* @name createDelegatedSession
|
|
17
|
+
* @description Creates a delegated agent session with policy-validated permissions and spending limits.
|
|
18
|
+
*
|
|
19
|
+
* @param context — SAP MCP runtime context with policy engine.
|
|
20
|
+
* @param agentId — Unique identifier for the delegating agent.
|
|
21
|
+
* @param permissions — Array of permission strings to validate and grant.
|
|
22
|
+
* @param spendingLimits — Spending limits for per-transaction, per-day, and per-session SOL amounts.
|
|
23
|
+
* @returns A `SapAgentSession` with validated permissions and configured spending limits.
|
|
24
|
+
* @throws `PolicyError` if the requested permissions fail policy validation.
|
|
25
|
+
*
|
|
26
|
+
* @usedBy Delegated session MCP tools in the SAP MCP runtime.
|
|
7
27
|
*/
|
|
8
28
|
export declare function createDelegatedSession(context: SapMcpContext, agentId: string, permissions: string[], spendingLimits: {
|
|
9
29
|
maxPerTransactionSol: number;
|
|
@@ -11,7 +31,15 @@ export declare function createDelegatedSession(context: SapMcpContext, agentId:
|
|
|
11
31
|
maxPerSessionSol: number;
|
|
12
32
|
}): Promise<SapAgentSession>;
|
|
13
33
|
/**
|
|
14
|
-
*
|
|
34
|
+
* @name validateDelegatedSession
|
|
35
|
+
* @description Validates an existing delegated session for a given permission and optional SOL amount.
|
|
36
|
+
*
|
|
37
|
+
* @param session — The agent session to validate.
|
|
38
|
+
* @param permission — The permission required for the action.
|
|
39
|
+
* @param amountSol — Optional SOL amount to check against remaining session balance.
|
|
40
|
+
* @returns `{ valid: true }` if all checks pass; `{ valid: false, error }` with a reason otherwise.
|
|
41
|
+
*
|
|
42
|
+
* @usedBy Delegated session MCP tools in the SAP MCP runtime.
|
|
15
43
|
*/
|
|
16
44
|
export declare function validateDelegatedSession(session: SapAgentSession, permission: SapPermission, amountSol?: number): {
|
|
17
45
|
valid: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delegated-session.d.ts","sourceRoot":"","sources":["../../src/session/delegated-session.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"delegated-session.d.ts","sourceRoot":"","sources":["../../src/session/delegated-session.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAIH,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAGtF;;;;;;;;;;;;GAYG;AACH,wBAAsB,sBAAsB,CAC1C,OAAO,EAAE,aAAa,EACtB,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,MAAM,EAAE,EACrB,cAAc,EAAE;IACd,oBAAoB,EAAE,MAAM,CAAC;IAC7B,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;CAC1B,GACA,OAAO,CAAC,eAAe,CAAC,CAsB1B;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,eAAe,EACxB,UAAU,EAAE,aAAa,EACzB,SAAS,CAAC,EAAE,MAAM,GACjB;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAoBpC"}
|
|
@@ -1,11 +1,31 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* @name session/delegated-session
|
|
3
|
+
* @description Delegated session management — creates and validates sessions that delegate
|
|
4
|
+
* agent capabilities to an MCP client with policy-enforced permissions.
|
|
5
|
+
*
|
|
6
|
+
* @flow
|
|
7
|
+
* 1. `createDelegatedSession` validates requested permissions against the policy engine,
|
|
8
|
+
* then creates a new agent session via `createAgentSession`.
|
|
9
|
+
* 2. `validateDelegatedSession` checks expiry, permission, and spending limits for an
|
|
10
|
+
* existing session before allowing a delegated action.
|
|
11
|
+
*
|
|
12
|
+
* @module session/delegated-session
|
|
3
13
|
*/
|
|
4
14
|
import { logger } from '../core/logger.js';
|
|
5
15
|
import { PolicyError } from '../core/errors.js';
|
|
6
16
|
import { createAgentSession } from './agent-session.js';
|
|
7
17
|
/**
|
|
8
|
-
*
|
|
18
|
+
* @name createDelegatedSession
|
|
19
|
+
* @description Creates a delegated agent session with policy-validated permissions and spending limits.
|
|
20
|
+
*
|
|
21
|
+
* @param context — SAP MCP runtime context with policy engine.
|
|
22
|
+
* @param agentId — Unique identifier for the delegating agent.
|
|
23
|
+
* @param permissions — Array of permission strings to validate and grant.
|
|
24
|
+
* @param spendingLimits — Spending limits for per-transaction, per-day, and per-session SOL amounts.
|
|
25
|
+
* @returns A `SapAgentSession` with validated permissions and configured spending limits.
|
|
26
|
+
* @throws `PolicyError` if the requested permissions fail policy validation.
|
|
27
|
+
*
|
|
28
|
+
* @usedBy Delegated session MCP tools in the SAP MCP runtime.
|
|
9
29
|
*/
|
|
10
30
|
export async function createDelegatedSession(context, agentId, permissions, spendingLimits) {
|
|
11
31
|
logger.info('Creating delegated session', { agentId, permissions });
|
|
@@ -24,7 +44,15 @@ export async function createDelegatedSession(context, agentId, permissions, spen
|
|
|
24
44
|
return session;
|
|
25
45
|
}
|
|
26
46
|
/**
|
|
27
|
-
*
|
|
47
|
+
* @name validateDelegatedSession
|
|
48
|
+
* @description Validates an existing delegated session for a given permission and optional SOL amount.
|
|
49
|
+
*
|
|
50
|
+
* @param session — The agent session to validate.
|
|
51
|
+
* @param permission — The permission required for the action.
|
|
52
|
+
* @param amountSol — Optional SOL amount to check against remaining session balance.
|
|
53
|
+
* @returns `{ valid: true }` if all checks pass; `{ valid: false, error }` with a reason otherwise.
|
|
54
|
+
*
|
|
55
|
+
* @usedBy Delegated session MCP tools in the SAP MCP runtime.
|
|
28
56
|
*/
|
|
29
57
|
export function validateDelegatedSession(session, permission, amountSol) {
|
|
30
58
|
// Check if session is active
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delegated-session.js","sourceRoot":"","sources":["../../src/session/delegated-session.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"delegated-session.js","sourceRoot":"","sources":["../../src/session/delegated-session.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAExD;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,OAAsB,EACtB,OAAe,EACf,WAAqB,EACrB,cAIC;IAED,MAAM,CAAC,IAAI,CAAC,4BAA4B,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC,CAAC;IAEpE,sCAAsC;IACtC,MAAM,oBAAoB,GAAG,MAAM,OAAO,CAAC,YAAY,CAAC,mBAAmB,CACzE,WAAW,CACZ,CAAC;IAEF,IAAI,CAAC,oBAAoB,CAAC,KAAK,EAAE,CAAC;QAChC,MAAM,IAAI,WAAW,CAAC,qBAAqB,EAAE,EAAE,MAAM,EAAE,oBAAoB,CAAC,MAAM,EAAE,CAAC,CAAC;IACxF,CAAC;IAED,iBAAiB;IACjB,MAAM,OAAO,GAAG,kBAAkB,CAAC;QACjC,OAAO;QACP,WAAW,EAAE,oBAAoB,CAAC,WAAW;QAC7C,cAAc;KACf,CAAC,CAAC;IAEH,MAAM,CAAC,IAAI,CAAC,2BAA2B,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;IAE3E,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,wBAAwB,CACtC,OAAwB,EACxB,UAAyB,EACzB,SAAkB;IAElB,6BAA6B;IAC7B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACvB,IAAI,GAAG,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;QAC7B,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,iBAAiB,EAAE,CAAC;IACpD,CAAC;IAED,mBAAmB;IACnB,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;QAC9C,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,uBAAuB,UAAU,EAAE,EAAE,CAAC;IACtE,CAAC;IAED,uBAAuB;IACvB,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;QAC5B,IAAI,SAAS,GAAG,OAAO,CAAC,cAAc,CAAC,mBAAmB,EAAE,CAAC;YAC3D,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,8BAA8B,EAAE,CAAC;QACjE,CAAC;IACH,CAAC;IAED,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AACzB,CAAC"}
|
package/dist/session/index.d.ts
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* @name session/index
|
|
3
|
+
* @description Barrel export for the SAP MCP session module.
|
|
4
|
+
*
|
|
5
|
+
* Re-exports agent session lifecycle, delegated session, session store, permissions,
|
|
6
|
+
* spending limits, and session type definitions.
|
|
7
|
+
*
|
|
8
|
+
* @module session/index
|
|
3
9
|
*/
|
|
4
10
|
export { createAgentSession, isSessionActive, hasPermission } from './agent-session.js';
|
|
5
11
|
export { sessionStore } from './session-store.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/session/index.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/session/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACxF,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,YAAY,EACV,oBAAoB,EACpB,uBAAuB,EACvB,aAAa,GACd,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,sBAAsB,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAC1F,OAAO,EACL,eAAe,EACf,qBAAqB,EACrB,iBAAiB,EACjB,wBAAwB,EACxB,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,qBAAqB,CAAC"}
|
package/dist/session/index.js
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* @name session/index
|
|
3
|
+
* @description Barrel export for the SAP MCP session module.
|
|
4
|
+
*
|
|
5
|
+
* Re-exports agent session lifecycle, delegated session, session store, permissions,
|
|
6
|
+
* spending limits, and session type definitions.
|
|
7
|
+
*
|
|
8
|
+
* @module session/index
|
|
3
9
|
*/
|
|
4
10
|
export { createAgentSession, isSessionActive, hasPermission } from './agent-session.js';
|
|
5
11
|
export { sessionStore } from './session-store.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/session/index.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/session/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACxF,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAMlD,OAAO,EAAE,sBAAsB,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAC1F,OAAO,EACL,eAAe,EACf,qBAAqB,EACrB,iBAAiB,EACjB,wBAAwB,EACxB,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,qBAAqB,CAAC"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* @name session/redis-session-store
|
|
3
|
+
* @description Redis-backed persistent session store for production SAP MCP deployments.
|
|
3
4
|
*
|
|
4
5
|
* Features:
|
|
5
6
|
* - Persistent sessions across server restarts
|
|
@@ -7,17 +8,28 @@
|
|
|
7
8
|
* - Automatic TTL-based expiration
|
|
8
9
|
* - Memory-safe (no local storage)
|
|
9
10
|
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
14
|
-
*
|
|
15
|
-
*
|
|
11
|
+
* @flow
|
|
12
|
+
* 1. `createSessionStore` checks `SAP_MCP_USE_REDIS` env var and creates a `RedisSessionStore`
|
|
13
|
+
* or returns `null` for in-memory development mode.
|
|
14
|
+
* 2. `RedisSessionStore` manages session CRUD with automatic TTL based on session expiry.
|
|
15
|
+
* 3. A background cleanup interval removes expired sessions periodically.
|
|
16
|
+
*
|
|
17
|
+
* @env `SAP_MCP_USE_REDIS` — Set to `true` to enable Redis session storage.
|
|
18
|
+
* @env `SAP_MCP_REDIS_URL` — Redis connection URL (default `redis://localhost:6379`).
|
|
19
|
+
*
|
|
20
|
+
* @module session/redis-session-store
|
|
16
21
|
*/
|
|
17
22
|
import { Redis } from 'ioredis';
|
|
18
23
|
import type { SapAgentSession } from '../core/types.js';
|
|
19
24
|
/**
|
|
20
|
-
*
|
|
25
|
+
* @name RedisSessionStoreConfig
|
|
26
|
+
* @description Configuration for the Redis-backed session store.
|
|
27
|
+
*
|
|
28
|
+
* @property redisUrl — Redis connection URL.
|
|
29
|
+
* @property keyPrefix — Optional prefix for session keys in Redis (default `sap-mcp:session:`).
|
|
30
|
+
* @property cleanupIntervalMs — Optional cleanup interval in milliseconds (default 3600000 / 1 hour).
|
|
31
|
+
*
|
|
32
|
+
* @usedBy `RedisSessionStore`, `createSessionStore`
|
|
21
33
|
*/
|
|
22
34
|
export interface RedisSessionStoreConfig {
|
|
23
35
|
redisUrl: string;
|
|
@@ -25,44 +37,89 @@ export interface RedisSessionStoreConfig {
|
|
|
25
37
|
cleanupIntervalMs?: number;
|
|
26
38
|
}
|
|
27
39
|
/**
|
|
28
|
-
*
|
|
40
|
+
* @name RedisSessionStore
|
|
41
|
+
* @description Persistent session store backed by Redis with TTL-based expiration and periodic cleanup.
|
|
42
|
+
*
|
|
43
|
+
* @method connect — Establish the Redis connection.
|
|
44
|
+
* @method set — Store a session with TTL derived from its expiry.
|
|
45
|
+
* @method get — Retrieve a session by id.
|
|
46
|
+
* @method delete — Remove a session by id.
|
|
47
|
+
* @method getAll — Retrieve all active sessions (for debugging/admin).
|
|
48
|
+
* @method getCount — Get the total number of stored sessions.
|
|
49
|
+
* @method cleanup — Manually remove expired sessions.
|
|
50
|
+
* @method getStats — Get session statistics (total, active, expired).
|
|
51
|
+
* @method shutdown — Gracefully close the Redis connection and cleanup interval.
|
|
52
|
+
* @method getClient — Get the raw Redis client for advanced operations.
|
|
53
|
+
*
|
|
54
|
+
* @usedBy `createSessionStore`, distributed SAP MCP deployments.
|
|
29
55
|
*/
|
|
30
56
|
export declare class RedisSessionStore {
|
|
31
57
|
private redis;
|
|
32
58
|
private keyPrefix;
|
|
33
59
|
private cleanupInterval?;
|
|
34
60
|
private isShuttingDown;
|
|
61
|
+
/**
|
|
62
|
+
* @name RedisSessionStore.constructor
|
|
63
|
+
* @description Creates a new Redis session store with merged config and starts the cleanup interval.
|
|
64
|
+
*
|
|
65
|
+
* @param config — Optional configuration overriding defaults.
|
|
66
|
+
*/
|
|
35
67
|
constructor(config?: RedisSessionStoreConfig);
|
|
36
68
|
/**
|
|
37
|
-
*
|
|
69
|
+
* @name RedisSessionStore.connect
|
|
70
|
+
* @description Connects to the Redis server.
|
|
71
|
+
*
|
|
72
|
+
* @usedBy `createSessionStore`.
|
|
38
73
|
*/
|
|
39
74
|
connect(): Promise<void>;
|
|
40
75
|
/**
|
|
41
|
-
*
|
|
76
|
+
* @name RedisSessionStore.set
|
|
77
|
+
* @description Stores a session in Redis with a TTL derived from its expiry timestamp.
|
|
78
|
+
*
|
|
79
|
+
* @param sessionId — Unique session identifier.
|
|
80
|
+
* @param session — The agent session to store.
|
|
42
81
|
*/
|
|
43
82
|
set(sessionId: string, session: SapAgentSession): Promise<void>;
|
|
44
83
|
/**
|
|
45
|
-
*
|
|
84
|
+
* @name RedisSessionStore.get
|
|
85
|
+
* @description Retrieves a session by id from Redis.
|
|
86
|
+
*
|
|
87
|
+
* @param sessionId — Unique session identifier.
|
|
88
|
+
* @returns The session if found and parseable, `null` otherwise.
|
|
46
89
|
*/
|
|
47
90
|
get(sessionId: string): Promise<SapAgentSession | null>;
|
|
48
91
|
/**
|
|
49
|
-
*
|
|
92
|
+
* @name RedisSessionStore.delete
|
|
93
|
+
* @description Deletes a session from Redis by id.
|
|
94
|
+
*
|
|
95
|
+
* @param sessionId — Unique session identifier.
|
|
96
|
+
* @returns `true` if the session was deleted, `false` if it did not exist.
|
|
50
97
|
*/
|
|
51
98
|
delete(sessionId: string): Promise<boolean>;
|
|
52
99
|
/**
|
|
53
|
-
*
|
|
100
|
+
* @name RedisSessionStore.getAll
|
|
101
|
+
* @description Retrieves all active sessions from Redis (for debugging/admin).
|
|
102
|
+
*
|
|
103
|
+
* @returns Array of all stored agent sessions.
|
|
54
104
|
*/
|
|
55
105
|
getAll(): Promise<SapAgentSession[]>;
|
|
56
106
|
/**
|
|
57
|
-
*
|
|
107
|
+
* @name RedisSessionStore.getCount
|
|
108
|
+
* @description Returns the total number of stored sessions.
|
|
109
|
+
*
|
|
110
|
+
* @returns Count of session keys in Redis.
|
|
58
111
|
*/
|
|
59
112
|
getCount(): Promise<number>;
|
|
60
113
|
/**
|
|
61
|
-
*
|
|
114
|
+
* @name RedisSessionStore.cleanup
|
|
115
|
+
* @description Manually removes expired sessions from Redis.
|
|
62
116
|
*/
|
|
63
117
|
cleanup(): Promise<void>;
|
|
64
118
|
/**
|
|
65
|
-
*
|
|
119
|
+
* @name RedisSessionStore.getStats
|
|
120
|
+
* @description Returns session statistics (total, active, expired).
|
|
121
|
+
*
|
|
122
|
+
* @returns Object with `totalSessions`, `activeSessions`, and `expiredSessions` counts.
|
|
66
123
|
*/
|
|
67
124
|
getStats(): Promise<{
|
|
68
125
|
totalSessions: number;
|
|
@@ -70,20 +127,36 @@ export declare class RedisSessionStore {
|
|
|
70
127
|
expiredSessions: number;
|
|
71
128
|
}>;
|
|
72
129
|
/**
|
|
73
|
-
*
|
|
130
|
+
* @name RedisSessionStore.shutdown
|
|
131
|
+
* @description Gracefully shuts down the Redis connection and clears the cleanup interval.
|
|
74
132
|
*/
|
|
75
133
|
shutdown(): Promise<void>;
|
|
76
134
|
/**
|
|
77
|
-
*
|
|
135
|
+
* @name RedisSessionStore.getClient
|
|
136
|
+
* @description Returns the raw Redis client instance for advanced operations.
|
|
137
|
+
*
|
|
138
|
+
* @returns The underlying `ioredis` Redis instance.
|
|
78
139
|
*/
|
|
79
140
|
getClient(): InstanceType<typeof Redis>;
|
|
141
|
+
/** @description Builds the full Redis key from the prefix and session id. */
|
|
80
142
|
private getKey;
|
|
143
|
+
/** @description Starts the periodic cleanup interval for expired sessions. */
|
|
81
144
|
private startCleanup;
|
|
82
145
|
}
|
|
83
146
|
/**
|
|
84
|
-
*
|
|
147
|
+
* @name createSessionStore
|
|
148
|
+
* @description Creates a session store based on environment configuration.
|
|
149
|
+
*
|
|
150
|
+
* Uses Redis in production (when `SAP_MCP_USE_REDIS=true`) and in-memory
|
|
151
|
+
* storage in development (returns `null`).
|
|
152
|
+
*
|
|
153
|
+
* @returns A connected `RedisSessionStore` if Redis is enabled, `null` otherwise.
|
|
154
|
+
* @throws If Redis connection fails after retries.
|
|
155
|
+
*
|
|
156
|
+
* @env `SAP_MCP_USE_REDIS` — Set to `true` to enable Redis.
|
|
157
|
+
* @env `SAP_MCP_REDIS_URL` — Redis connection URL (default `redis://localhost:6379`).
|
|
85
158
|
*
|
|
86
|
-
*
|
|
159
|
+
* @usedBy Server initialization in the SAP MCP runtime.
|
|
87
160
|
*/
|
|
88
161
|
export declare function createSessionStore(): Promise<RedisSessionStore | null>;
|
|
89
162
|
//# sourceMappingURL=redis-session-store.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"redis-session-store.d.ts","sourceRoot":"","sources":["../../src/session/redis-session-store.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"redis-session-store.d.ts","sourceRoot":"","sources":["../../src/session/redis-session-store.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAEhC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAExD;;;;;;;;;GASG;AACH,MAAM,WAAW,uBAAuB;IACtC,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AASD;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,KAAK,CAA6B;IAC1C,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,eAAe,CAAC,CAAiB;IACzC,OAAO,CAAC,cAAc,CAAS;IAE/B;;;;;OAKG;gBACS,MAAM,GAAE,uBAAwC;IA6B5D;;;;;OAKG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAK9B;;;;;;OAMG;IACG,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAQrE;;;;;;OAMG;IACG,GAAG,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;IAiB7D;;;;;;OAMG;IACG,MAAM,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAOjD;;;;;OAKG;IACG,MAAM,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;IAkB1C;;;;;OAKG;IACG,QAAQ,IAAI,OAAO,CAAC,MAAM,CAAC;IAKjC;;;OAGG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAe9B;;;;;OAKG;IACG,QAAQ,IAAI,OAAO,CAAC;QACxB,aAAa,EAAE,MAAM,CAAC;QACtB,cAAc,EAAE,MAAM,CAAC;QACvB,eAAe,EAAE,MAAM,CAAC;KACzB,CAAC;IA6BF;;;OAGG;IACG,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAW/B;;;;;OAKG;IACH,SAAS,IAAI,YAAY,CAAC,OAAO,KAAK,CAAC;IAIvC,6EAA6E;IAC7E,OAAO,CAAC,MAAM;IAId,8EAA8E;IAC9E,OAAO,CAAC,YAAY;CAWrB;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC,CAa5E"}
|