@rockcarver/frodo-lib 4.10.0 → 4.11.0-1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +2 -2
- package/dist/index.mjs +2 -2
- package/package.json +6 -3
- package/types/api/AgentApi.d.ts +128 -0
- package/types/api/AgentApi.d.ts.map +1 -0
- package/types/api/AmConfigApi.d.ts +87 -0
- package/types/api/AmConfigApi.d.ts.map +1 -0
- package/types/api/ApiTypes.d.ts +59 -0
- package/types/api/ApiTypes.d.ts.map +1 -0
- package/types/api/AuthenticateApi.d.ts +38 -0
- package/types/api/AuthenticateApi.d.ts.map +1 -0
- package/types/api/AuthenticationSettingsApi.d.ts +31 -0
- package/types/api/AuthenticationSettingsApi.d.ts.map +1 -0
- package/types/api/BaseApi.d.ts +190 -0
- package/types/api/BaseApi.d.ts.map +1 -0
- package/types/api/CirclesOfTrustApi.d.ts +52 -0
- package/types/api/CirclesOfTrustApi.d.ts.map +1 -0
- package/types/api/IdmConfigApi.d.ts +69 -0
- package/types/api/IdmConfigApi.d.ts.map +1 -0
- package/types/api/IdmScriptApi.d.ts +17 -0
- package/types/api/IdmScriptApi.d.ts.map +1 -0
- package/types/api/IdmSystemApi.d.ts +111 -0
- package/types/api/IdmSystemApi.d.ts.map +1 -0
- package/types/api/InternalObjectApi.d.ts +103 -0
- package/types/api/InternalObjectApi.d.ts.map +1 -0
- package/types/api/ManagedObjectApi.d.ts +252 -0
- package/types/api/ManagedObjectApi.d.ts.map +1 -0
- package/types/api/ManagedSystemObjectApi.d.ts +150 -0
- package/types/api/ManagedSystemObjectApi.d.ts.map +1 -0
- package/types/api/NodeApi.d.ts +243 -0
- package/types/api/NodeApi.d.ts.map +1 -0
- package/types/api/OAuth2ClientApi.d.ts +78 -0
- package/types/api/OAuth2ClientApi.d.ts.map +1 -0
- package/types/api/OAuth2OIDCApi.d.ts +121 -0
- package/types/api/OAuth2OIDCApi.d.ts.map +1 -0
- package/types/api/OAuth2ProviderApi.d.ts +176 -0
- package/types/api/OAuth2ProviderApi.d.ts.map +1 -0
- package/types/api/OAuth2TrustedJwtIssuerApi.d.ts +54 -0
- package/types/api/OAuth2TrustedJwtIssuerApi.d.ts.map +1 -0
- package/types/api/PoliciesApi.d.ts +60 -0
- package/types/api/PoliciesApi.d.ts.map +1 -0
- package/types/api/PolicySetApi.d.ts +52 -0
- package/types/api/PolicySetApi.d.ts.map +1 -0
- package/types/api/RawConfigApi.d.ts +75 -0
- package/types/api/RawConfigApi.d.ts.map +1 -0
- package/types/api/RealmApi.d.ts +54 -0
- package/types/api/RealmApi.d.ts.map +1 -0
- package/types/api/ReconApi.d.ts +171 -0
- package/types/api/ReconApi.d.ts.map +1 -0
- package/types/api/ResourceTypesApi.d.ts +63 -0
- package/types/api/ResourceTypesApi.d.ts.map +1 -0
- package/types/api/Saml2Api.d.ts +112 -0
- package/types/api/Saml2Api.d.ts.map +1 -0
- package/types/api/ScriptApi.d.ts +94 -0
- package/types/api/ScriptApi.d.ts.map +1 -0
- package/types/api/ScriptTypeApi.d.ts +103 -0
- package/types/api/ScriptTypeApi.d.ts.map +1 -0
- package/types/api/SecretStoreApi.d.ts +185 -0
- package/types/api/SecretStoreApi.d.ts.map +1 -0
- package/types/api/ServerInfoApi.d.ts +26 -0
- package/types/api/ServerInfoApi.d.ts.map +1 -0
- package/types/api/ServiceApi.d.ts +102 -0
- package/types/api/ServiceApi.d.ts.map +1 -0
- package/types/api/SessionApi.d.ts +23 -0
- package/types/api/SessionApi.d.ts.map +1 -0
- package/types/api/SocialIdentityProvidersApi.d.ts +89 -0
- package/types/api/SocialIdentityProvidersApi.d.ts.map +1 -0
- package/types/api/TreeApi.d.ts +62 -0
- package/types/api/TreeApi.d.ts.map +1 -0
- package/types/api/UserApi.d.ts +159 -0
- package/types/api/UserApi.d.ts.map +1 -0
- package/types/api/classic/ServerApi.d.ts +78 -0
- package/types/api/classic/ServerApi.d.ts.map +1 -0
- package/types/api/classic/SiteApi.d.ts +39 -0
- package/types/api/classic/SiteApi.d.ts.map +1 -0
- package/types/api/cloud/AdminFederationProvidersApi.d.ts +71 -0
- package/types/api/cloud/AdminFederationProvidersApi.d.ts.map +1 -0
- package/types/api/cloud/EnvAIAgentApi.d.ts +9 -0
- package/types/api/cloud/EnvAIAgentApi.d.ts.map +1 -0
- package/types/api/cloud/EnvCSRsApi.d.ts +165 -0
- package/types/api/cloud/EnvCSRsApi.d.ts.map +1 -0
- package/types/api/cloud/EnvCertificatesApi.d.ts +74 -0
- package/types/api/cloud/EnvCertificatesApi.d.ts.map +1 -0
- package/types/api/cloud/EnvContentSecurityPolicyApi.d.ts +87 -0
- package/types/api/cloud/EnvContentSecurityPolicyApi.d.ts.map +1 -0
- package/types/api/cloud/EnvCookieDomainsApi.d.ts +26 -0
- package/types/api/cloud/EnvCookieDomainsApi.d.ts.map +1 -0
- package/types/api/cloud/EnvCustomDomainsApi.d.ts +37 -0
- package/types/api/cloud/EnvCustomDomainsApi.d.ts.map +1 -0
- package/types/api/cloud/EnvDirectConfigurationSessionApi.d.ts +43 -0
- package/types/api/cloud/EnvDirectConfigurationSessionApi.d.ts.map +1 -0
- package/types/api/cloud/EnvFederationEnforcementApi.d.ts +26 -0
- package/types/api/cloud/EnvFederationEnforcementApi.d.ts.map +1 -0
- package/types/api/cloud/EnvInfoApi.d.ts +22 -0
- package/types/api/cloud/EnvInfoApi.d.ts.map +1 -0
- package/types/api/cloud/EnvPromotionApi.d.ts +218 -0
- package/types/api/cloud/EnvPromotionApi.d.ts.map +1 -0
- package/types/api/cloud/EnvReleaseApi.d.ts +16 -0
- package/types/api/cloud/EnvReleaseApi.d.ts.map +1 -0
- package/types/api/cloud/EnvSSOCookieConfigApi.d.ts +35 -0
- package/types/api/cloud/EnvSSOCookieConfigApi.d.ts.map +1 -0
- package/types/api/cloud/EnvServiceAccountScopesApi.d.ts +17 -0
- package/types/api/cloud/EnvServiceAccountScopesApi.d.ts.map +1 -0
- package/types/api/cloud/EsvCountApi.d.ts +13 -0
- package/types/api/cloud/EsvCountApi.d.ts.map +1 -0
- package/types/api/cloud/FeatureApi.d.ts +16 -0
- package/types/api/cloud/FeatureApi.d.ts.map +1 -0
- package/types/api/cloud/IdmFeatureApi.d.ts +65 -0
- package/types/api/cloud/IdmFeatureApi.d.ts.map +1 -0
- package/types/api/cloud/LogApi.d.ts +108 -0
- package/types/api/cloud/LogApi.d.ts.map +1 -0
- package/types/api/cloud/SecretsApi.d.ts +163 -0
- package/types/api/cloud/SecretsApi.d.ts.map +1 -0
- package/types/api/cloud/StartupApi.d.ts +20 -0
- package/types/api/cloud/StartupApi.d.ts.map +1 -0
- package/types/api/cloud/TelemetryApi.d.ts +60 -0
- package/types/api/cloud/TelemetryApi.d.ts.map +1 -0
- package/types/api/cloud/VariablesApi.d.ts +86 -0
- package/types/api/cloud/VariablesApi.d.ts.map +1 -0
- package/types/api/cloud/WSFedApi.d.ts +495 -0
- package/types/api/cloud/WSFedApi.d.ts.map +1 -0
- package/types/api/cloud/iga/IgaCertificationTemplateApi.d.ts +227 -0
- package/types/api/cloud/iga/IgaCertificationTemplateApi.d.ts.map +1 -0
- package/types/api/cloud/iga/IgaEventApi.d.ts +111 -0
- package/types/api/cloud/iga/IgaEventApi.d.ts.map +1 -0
- package/types/api/cloud/iga/IgaGlossaryApi.d.ts +103 -0
- package/types/api/cloud/iga/IgaGlossaryApi.d.ts.map +1 -0
- package/types/api/cloud/iga/IgaRequestFormApi.d.ts +184 -0
- package/types/api/cloud/iga/IgaRequestFormApi.d.ts.map +1 -0
- package/types/api/cloud/iga/IgaRequestTypeApi.d.ts +124 -0
- package/types/api/cloud/iga/IgaRequestTypeApi.d.ts.map +1 -0
- package/types/api/cloud/iga/IgaWorkflowApi.d.ts +208 -0
- package/types/api/cloud/iga/IgaWorkflowApi.d.ts.map +1 -0
- package/types/ext/axios-curlirize/curlirize.d.ts +14 -0
- package/types/ext/axios-curlirize/curlirize.d.ts.map +1 -0
- package/types/ext/axios-curlirize/lib/CurlHelper.d.ts +12 -0
- package/types/ext/axios-curlirize/lib/CurlHelper.d.ts.map +1 -0
- package/types/index.d.ts +11 -0
- package/types/index.d.ts.map +1 -0
- package/types/lib/FrodoLib.d.ts +407 -0
- package/types/lib/FrodoLib.d.ts.map +1 -0
- package/types/lib/Help.d.ts +18 -0
- package/types/lib/Help.d.ts.map +1 -0
- package/types/mcp/CapabilityMetadata.d.ts +48 -0
- package/types/mcp/CapabilityMetadata.d.ts.map +1 -0
- package/types/mcp/CapabilityPolicy.d.ts +22 -0
- package/types/mcp/CapabilityPolicy.d.ts.map +1 -0
- package/types/mcp/CapabilityRegistry.d.ts +62 -0
- package/types/mcp/CapabilityRegistry.d.ts.map +1 -0
- package/types/mcp/CapabilityRouting.d.ts +9 -0
- package/types/mcp/CapabilityRouting.d.ts.map +1 -0
- package/types/mcp/CapabilityTypes.d.ts +371 -0
- package/types/mcp/CapabilityTypes.d.ts.map +1 -0
- package/types/mcp/DiscoveryHydration.d.ts +21 -0
- package/types/mcp/DiscoveryHydration.d.ts.map +1 -0
- package/types/mcp/DocsContext.d.ts +123 -0
- package/types/mcp/DocsContext.d.ts.map +1 -0
- package/types/mcp/McpService.d.ts +94 -0
- package/types/mcp/McpService.d.ts.map +1 -0
- package/types/mcp/ProfileRegistry.d.ts +63 -0
- package/types/mcp/ProfileRegistry.d.ts.map +1 -0
- package/types/mcp/SemanticIdentifiers.d.ts +17 -0
- package/types/mcp/SemanticIdentifiers.d.ts.map +1 -0
- package/types/mcp/SemanticObjectFamilies.d.ts +24 -0
- package/types/mcp/SemanticObjectFamilies.d.ts.map +1 -0
- package/types/mcp/ToolManifest.d.ts +231 -0
- package/types/mcp/ToolManifest.d.ts.map +1 -0
- package/types/mcp/ToolRuntime.d.ts +477 -0
- package/types/mcp/ToolRuntime.d.ts.map +1 -0
- package/types/mcp/index.d.ts +20 -0
- package/types/mcp/index.d.ts.map +1 -0
- package/types/ops/AdminOps.d.ts +85 -0
- package/types/ops/AdminOps.d.ts.map +1 -0
- package/types/ops/AgentOps.d.ts +938 -0
- package/types/ops/AgentOps.d.ts.map +1 -0
- package/types/ops/AmConfigOps.d.ts +96 -0
- package/types/ops/AmConfigOps.d.ts.map +1 -0
- package/types/ops/ApiFactoryOps.d.ts +77 -0
- package/types/ops/ApiFactoryOps.d.ts.map +1 -0
- package/types/ops/ApplicationOps.d.ts +334 -0
- package/types/ops/ApplicationOps.d.ts.map +1 -0
- package/types/ops/AuthenticateOps.d.ts +196 -0
- package/types/ops/AuthenticateOps.d.ts.map +1 -0
- package/types/ops/AuthenticationSettingsOps.d.ts +78 -0
- package/types/ops/AuthenticationSettingsOps.d.ts.map +1 -0
- package/types/ops/BrowserAuthenticateOps.d.ts +188 -0
- package/types/ops/BrowserAuthenticateOps.d.ts.map +1 -0
- package/types/ops/CallbackOps.d.ts +27 -0
- package/types/ops/CallbackOps.d.ts.map +1 -0
- package/types/ops/CallerTrustTierOps.d.ts +103 -0
- package/types/ops/CallerTrustTierOps.d.ts.map +1 -0
- package/types/ops/CirclesOfTrustOps.d.ts +203 -0
- package/types/ops/CirclesOfTrustOps.d.ts.map +1 -0
- package/types/ops/ConfigOps.d.ts +214 -0
- package/types/ops/ConfigOps.d.ts.map +1 -0
- package/types/ops/ConnectionProfileOps.d.ts +346 -0
- package/types/ops/ConnectionProfileOps.d.ts.map +1 -0
- package/types/ops/ConnectorOps.d.ts +269 -0
- package/types/ops/ConnectorOps.d.ts.map +1 -0
- package/types/ops/EmailTemplateOps.d.ts +160 -0
- package/types/ops/EmailTemplateOps.d.ts.map +1 -0
- package/types/ops/FrodoError.d.ts +40 -0
- package/types/ops/FrodoError.d.ts.map +1 -0
- package/types/ops/IdmConfigOps.d.ts +286 -0
- package/types/ops/IdmConfigOps.d.ts.map +1 -0
- package/types/ops/IdmCryptoOps.d.ts +68 -0
- package/types/ops/IdmCryptoOps.d.ts.map +1 -0
- package/types/ops/IdmScriptOps.d.ts +29 -0
- package/types/ops/IdmScriptOps.d.ts.map +1 -0
- package/types/ops/IdmSystemOps.d.ts +198 -0
- package/types/ops/IdmSystemOps.d.ts.map +1 -0
- package/types/ops/IdpOps.d.ts +234 -0
- package/types/ops/IdpOps.d.ts.map +1 -0
- package/types/ops/InfoOps.d.ts +28 -0
- package/types/ops/InfoOps.d.ts.map +1 -0
- package/types/ops/InternalRoleOps.d.ts +232 -0
- package/types/ops/InternalRoleOps.d.ts.map +1 -0
- package/types/ops/JoseOps.d.ts +87 -0
- package/types/ops/JoseOps.d.ts.map +1 -0
- package/types/ops/JourneyOps.d.ts +573 -0
- package/types/ops/JourneyOps.d.ts.map +1 -0
- package/types/ops/ManagedObjectOps.d.ts +393 -0
- package/types/ops/ManagedObjectOps.d.ts.map +1 -0
- package/types/ops/ManagedObjectSchemaOps.d.ts +757 -0
- package/types/ops/ManagedObjectSchemaOps.d.ts.map +1 -0
- package/types/ops/ManagedSystemObjectOps.d.ts +270 -0
- package/types/ops/ManagedSystemObjectOps.d.ts.map +1 -0
- package/types/ops/ManagedSystemObjectSchemaOps.d.ts +42 -0
- package/types/ops/ManagedSystemObjectSchemaOps.d.ts.map +1 -0
- package/types/ops/MappingOps.d.ts +332 -0
- package/types/ops/MappingOps.d.ts.map +1 -0
- package/types/ops/NodeOps.d.ts +627 -0
- package/types/ops/NodeOps.d.ts.map +1 -0
- package/types/ops/OAuth2ClientOps.d.ts +235 -0
- package/types/ops/OAuth2ClientOps.d.ts.map +1 -0
- package/types/ops/OAuth2OidcOps.d.ts +64 -0
- package/types/ops/OAuth2OidcOps.d.ts.map +1 -0
- package/types/ops/OAuth2ProviderOps.d.ts +57 -0
- package/types/ops/OAuth2ProviderOps.d.ts.map +1 -0
- package/types/ops/OAuth2TrustedJwtIssuerOps.d.ts +223 -0
- package/types/ops/OAuth2TrustedJwtIssuerOps.d.ts.map +1 -0
- package/types/ops/OpsTypes.d.ts +12 -0
- package/types/ops/OpsTypes.d.ts.map +1 -0
- package/types/ops/OrganizationOps.d.ts +34 -0
- package/types/ops/OrganizationOps.d.ts.map +1 -0
- package/types/ops/PolicyOps.d.ts +294 -0
- package/types/ops/PolicyOps.d.ts.map +1 -0
- package/types/ops/PolicySetOps.d.ts +195 -0
- package/types/ops/PolicySetOps.d.ts.map +1 -0
- package/types/ops/PrivilegeEscalationOps.d.ts +51 -0
- package/types/ops/PrivilegeEscalationOps.d.ts.map +1 -0
- package/types/ops/RawConfigOps.d.ts +67 -0
- package/types/ops/RawConfigOps.d.ts.map +1 -0
- package/types/ops/RealmOps.d.ts +196 -0
- package/types/ops/RealmOps.d.ts.map +1 -0
- package/types/ops/ReconOps.d.ts +57 -0
- package/types/ops/ReconOps.d.ts.map +1 -0
- package/types/ops/RequiredScopesOps.d.ts +69 -0
- package/types/ops/RequiredScopesOps.d.ts.map +1 -0
- package/types/ops/ResourceTypeOps.d.ts +219 -0
- package/types/ops/ResourceTypeOps.d.ts.map +1 -0
- package/types/ops/Saml2Ops.d.ts +261 -0
- package/types/ops/Saml2Ops.d.ts.map +1 -0
- package/types/ops/ScriptOps.d.ts +426 -0
- package/types/ops/ScriptOps.d.ts.map +1 -0
- package/types/ops/ScriptTypeOps.d.ts +124 -0
- package/types/ops/ScriptTypeOps.d.ts.map +1 -0
- package/types/ops/SecretStoreOps.d.ts +357 -0
- package/types/ops/SecretStoreOps.d.ts.map +1 -0
- package/types/ops/ServiceOps.d.ts +194 -0
- package/types/ops/ServiceOps.d.ts.map +1 -0
- package/types/ops/SessionOps.d.ts +22 -0
- package/types/ops/SessionOps.d.ts.map +1 -0
- package/types/ops/ThemeOps.d.ts +245 -0
- package/types/ops/ThemeOps.d.ts.map +1 -0
- package/types/ops/TokenCacheOps.d.ts +243 -0
- package/types/ops/TokenCacheOps.d.ts.map +1 -0
- package/types/ops/UserOps.d.ts +199 -0
- package/types/ops/UserOps.d.ts.map +1 -0
- package/types/ops/VersionUtils.d.ts +29 -0
- package/types/ops/VersionUtils.d.ts.map +1 -0
- package/types/ops/classic/ServerOps.d.ts +195 -0
- package/types/ops/classic/ServerOps.d.ts.map +1 -0
- package/types/ops/classic/SiteOps.d.ts +117 -0
- package/types/ops/classic/SiteOps.d.ts.map +1 -0
- package/types/ops/cloud/AdminFederationOps.d.ts +165 -0
- package/types/ops/cloud/AdminFederationOps.d.ts.map +1 -0
- package/types/ops/cloud/EnvAIAgentOps.d.ts +18 -0
- package/types/ops/cloud/EnvAIAgentOps.d.ts.map +1 -0
- package/types/ops/cloud/EnvCSRsOps.d.ts +86 -0
- package/types/ops/cloud/EnvCSRsOps.d.ts.map +1 -0
- package/types/ops/cloud/EnvCertificatesOps.d.ts +140 -0
- package/types/ops/cloud/EnvCertificatesOps.d.ts.map +1 -0
- package/types/ops/cloud/EnvContentSecurityPolicyOps.d.ts +101 -0
- package/types/ops/cloud/EnvContentSecurityPolicyOps.d.ts.map +1 -0
- package/types/ops/cloud/EnvCookieDomainsOps.d.ts +36 -0
- package/types/ops/cloud/EnvCookieDomainsOps.d.ts.map +1 -0
- package/types/ops/cloud/EnvCustomDomainsOps.d.ts +53 -0
- package/types/ops/cloud/EnvCustomDomainsOps.d.ts.map +1 -0
- package/types/ops/cloud/EnvDirectConfigurationSessionOps.d.ts +55 -0
- package/types/ops/cloud/EnvDirectConfigurationSessionOps.d.ts.map +1 -0
- package/types/ops/cloud/EnvFederationEnforcementOps.d.ts +58 -0
- package/types/ops/cloud/EnvFederationEnforcementOps.d.ts.map +1 -0
- package/types/ops/cloud/EnvPromotionOps.d.ts +175 -0
- package/types/ops/cloud/EnvPromotionOps.d.ts.map +1 -0
- package/types/ops/cloud/EnvReleaseOps.d.ts +19 -0
- package/types/ops/cloud/EnvReleaseOps.d.ts.map +1 -0
- package/types/ops/cloud/EnvSSOCookieConfigOps.d.ts +50 -0
- package/types/ops/cloud/EnvSSOCookieConfigOps.d.ts.map +1 -0
- package/types/ops/cloud/EnvServiceAccountScopesOps.d.ts +21 -0
- package/types/ops/cloud/EnvServiceAccountScopesOps.d.ts.map +1 -0
- package/types/ops/cloud/EsvCountOps.d.ts +15 -0
- package/types/ops/cloud/EsvCountOps.d.ts.map +1 -0
- package/types/ops/cloud/FeatureOps.d.ts +34 -0
- package/types/ops/cloud/FeatureOps.d.ts.map +1 -0
- package/types/ops/cloud/IdmFeatureOps.d.ts +78 -0
- package/types/ops/cloud/IdmFeatureOps.d.ts.map +1 -0
- package/types/ops/cloud/LogOps.d.ts +271 -0
- package/types/ops/cloud/LogOps.d.ts.map +1 -0
- package/types/ops/cloud/SecretsOps.d.ts +306 -0
- package/types/ops/cloud/SecretsOps.d.ts.map +1 -0
- package/types/ops/cloud/ServiceAccountOps.d.ts +86 -0
- package/types/ops/cloud/ServiceAccountOps.d.ts.map +1 -0
- package/types/ops/cloud/StartupOps.d.ts +62 -0
- package/types/ops/cloud/StartupOps.d.ts.map +1 -0
- package/types/ops/cloud/TelemetryOps.d.ts +109 -0
- package/types/ops/cloud/TelemetryOps.d.ts.map +1 -0
- package/types/ops/cloud/VariablesOps.d.ts +224 -0
- package/types/ops/cloud/VariablesOps.d.ts.map +1 -0
- package/types/ops/cloud/WSFedOps.d.ts +412 -0
- package/types/ops/cloud/WSFedOps.d.ts.map +1 -0
- package/types/ops/cloud/iga/IgaCertificationTemplateOps.d.ts +261 -0
- package/types/ops/cloud/iga/IgaCertificationTemplateOps.d.ts.map +1 -0
- package/types/ops/cloud/iga/IgaEventOps.d.ts +242 -0
- package/types/ops/cloud/iga/IgaEventOps.d.ts.map +1 -0
- package/types/ops/cloud/iga/IgaGlossaryOps.d.ts +241 -0
- package/types/ops/cloud/iga/IgaGlossaryOps.d.ts.map +1 -0
- package/types/ops/cloud/iga/IgaRequestFormOps.d.ts +259 -0
- package/types/ops/cloud/iga/IgaRequestFormOps.d.ts.map +1 -0
- package/types/ops/cloud/iga/IgaRequestTypeOps.d.ts +240 -0
- package/types/ops/cloud/iga/IgaRequestTypeOps.d.ts.map +1 -0
- package/types/ops/cloud/iga/IgaWorkflowOps.d.ts +334 -0
- package/types/ops/cloud/iga/IgaWorkflowOps.d.ts.map +1 -0
- package/types/ops/internal/RelationshipHelpers.d.ts +111 -0
- package/types/ops/internal/RelationshipHelpers.d.ts.map +1 -0
- package/types/shared/Constants.d.ts +100 -0
- package/types/shared/Constants.d.ts.map +1 -0
- package/types/shared/OperationType.d.ts +14 -0
- package/types/shared/OperationType.d.ts.map +1 -0
- package/types/shared/State.d.ts +355 -0
- package/types/shared/State.d.ts.map +1 -0
- package/types/shared/Version.d.ts +16 -0
- package/types/shared/Version.d.ts.map +1 -0
- package/types/test/mocks/ForgeRockApiMockEngine.d.ts +38 -0
- package/types/test/mocks/ForgeRockApiMockEngine.d.ts.map +1 -0
- package/types/test/setup/EmailTemplateSetup.d.ts +8 -0
- package/types/test/setup/EmailTemplateSetup.d.ts.map +1 -0
- package/types/test/setup/IgaCertificationTemplateSetup.d.ts +12 -0
- package/types/test/setup/IgaCertificationTemplateSetup.d.ts.map +1 -0
- package/types/test/setup/IgaEventSetup.d.ts +22 -0
- package/types/test/setup/IgaEventSetup.d.ts.map +1 -0
- package/types/test/setup/IgaGlossarySetup.d.ts +11 -0
- package/types/test/setup/IgaGlossarySetup.d.ts.map +1 -0
- package/types/test/setup/IgaRequestFormSetup.d.ts +42 -0
- package/types/test/setup/IgaRequestFormSetup.d.ts.map +1 -0
- package/types/test/setup/IgaRequestTypeSetup.d.ts +10 -0
- package/types/test/setup/IgaRequestTypeSetup.d.ts.map +1 -0
- package/types/test/setup/IgaWorkflowSetup.d.ts +32 -0
- package/types/test/setup/IgaWorkflowSetup.d.ts.map +1 -0
- package/types/test/setup/JourneySetup.d.ts +18 -0
- package/types/test/setup/JourneySetup.d.ts.map +1 -0
- package/types/test/setup/NodeSetup.d.ts +14 -0
- package/types/test/setup/NodeSetup.d.ts.map +1 -0
- package/types/test/setup/RawConfigSetup.d.ts +2 -0
- package/types/test/setup/RawConfigSetup.d.ts.map +1 -0
- package/types/test/setup/SecretSetup.d.ts +69 -0
- package/types/test/setup/SecretSetup.d.ts.map +1 -0
- package/types/test/setup/StartupSetup.d.ts +2 -0
- package/types/test/setup/StartupSetup.d.ts.map +1 -0
- package/types/test/setup/TelemetrySetup.d.ts +8 -0
- package/types/test/setup/TelemetrySetup.d.ts.map +1 -0
- package/types/test/setup/VariablesSetup.d.ts +27 -0
- package/types/test/setup/VariablesSetup.d.ts.map +1 -0
- package/types/test/utils/TestUtils.d.ts +15 -0
- package/types/test/utils/TestUtils.d.ts.map +1 -0
- package/types/utils/AsyncUtils.d.ts +14 -0
- package/types/utils/AsyncUtils.d.ts.map +1 -0
- package/types/utils/AutoSetupPolly.d.ts +25 -0
- package/types/utils/AutoSetupPolly.d.ts.map +1 -0
- package/types/utils/Base64Utils.d.ts +41 -0
- package/types/utils/Base64Utils.d.ts.map +1 -0
- package/types/utils/ColorTheme.d.ts +40 -0
- package/types/utils/ColorTheme.d.ts.map +1 -0
- package/types/utils/Console.d.ts +110 -0
- package/types/utils/Console.d.ts.map +1 -0
- package/types/utils/CryptoUtils.d.ts +35 -0
- package/types/utils/CryptoUtils.d.ts.map +1 -0
- package/types/utils/DataProtection.d.ts +24 -0
- package/types/utils/DataProtection.d.ts.map +1 -0
- package/types/utils/ExportImportUtils.d.ts +415 -0
- package/types/utils/ExportImportUtils.d.ts.map +1 -0
- package/types/utils/ForgeRockUtils.d.ts +122 -0
- package/types/utils/ForgeRockUtils.d.ts.map +1 -0
- package/types/utils/FrodoNodeHttpAdapter.d.ts +5 -0
- package/types/utils/FrodoNodeHttpAdapter.d.ts.map +1 -0
- package/types/utils/FrodoUtils.d.ts +15 -0
- package/types/utils/FrodoUtils.d.ts.map +1 -0
- package/types/utils/HelpUtils.d.ts +19 -0
- package/types/utils/HelpUtils.d.ts.map +1 -0
- package/types/utils/JsonUtils.d.ts +105 -0
- package/types/utils/JsonUtils.d.ts.map +1 -0
- package/types/utils/JwtUtils.d.ts +19 -0
- package/types/utils/JwtUtils.d.ts.map +1 -0
- package/types/utils/PkceUtils.d.ts +17 -0
- package/types/utils/PkceUtils.d.ts.map +1 -0
- package/types/utils/PollyUtils.d.ts +65 -0
- package/types/utils/PollyUtils.d.ts.map +1 -0
- package/types/utils/ScriptValidationUtils.d.ts +38 -0
- package/types/utils/ScriptValidationUtils.d.ts.map +1 -0
- package/types/utils/SemverUtils.d.ts +61 -0
- package/types/utils/SemverUtils.d.ts.map +1 -0
- package/types/utils/SetupPollyForFrodoLib.d.ts +7 -0
- package/types/utils/SetupPollyForFrodoLib.d.ts.map +1 -0
- package/types/utils/TerminalBackgroundDetection.d.ts +48 -0
- package/types/utils/TerminalBackgroundDetection.d.ts.map +1 -0
- package/types/utils/TerminalContrast.d.ts +44 -0
- package/types/utils/TerminalContrast.d.ts.map +1 -0
|
@@ -0,0 +1,371 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Defines the canonical type contracts used by the MCP capability layer.
|
|
3
|
+
*
|
|
4
|
+
* @remarks
|
|
5
|
+
* This module is intentionally declarative. It provides the shared vocabulary for
|
|
6
|
+
* capability discovery, policy filtering, and runtime registration so each layer
|
|
7
|
+
* can evolve independently without breaking shape compatibility.
|
|
8
|
+
*/
|
|
9
|
+
import { OperationType } from '../shared/OperationType';
|
|
10
|
+
/**
|
|
11
|
+
* Normalized operation kinds inferred from Frodo methods or explicitly supplied by
|
|
12
|
+
* metadata in future registry manifests.
|
|
13
|
+
*
|
|
14
|
+
* @remarks
|
|
15
|
+
* A type alias of the core library's deployment-agnostic `OperationType`
|
|
16
|
+
* (`shared/OperationType.ts`), not an independent definition — the MCP
|
|
17
|
+
* capability layer may depend on core library vocabulary, but core library
|
|
18
|
+
* code must never depend on `mcp/`, so the canonical union lives there.
|
|
19
|
+
*/
|
|
20
|
+
export type McpCapabilityOperationType = OperationType;
|
|
21
|
+
/**
|
|
22
|
+
* Risk classification used by policy presets and launch-time exposure controls.
|
|
23
|
+
*/
|
|
24
|
+
export type McpCapabilityRiskClass = 'low' | 'medium' | 'high' | 'critical';
|
|
25
|
+
/**
|
|
26
|
+
* High-level classification of whether a capability maps to the generic MCP tool
|
|
27
|
+
* surface or must be exposed as a domain-specific operation.
|
|
28
|
+
*/
|
|
29
|
+
export type McpCapabilityKind = 'generic' | 'special';
|
|
30
|
+
/**
|
|
31
|
+
* Caller-privilege tier a capability is safe to expose to.
|
|
32
|
+
*
|
|
33
|
+
* @remarks
|
|
34
|
+
* Deliberately not named "audience" — that term already has a specific,
|
|
35
|
+
* unrelated meaning in OAuth2/OIDC (a token's `aud` claim, matched against a
|
|
36
|
+
* resource server's own identifier). This is Frodo's own concept: today's
|
|
37
|
+
* `admin-account` and `service-account` auth modes are already full-trust
|
|
38
|
+
* identities, so `'full-trust'` is the universal default every capability
|
|
39
|
+
* gets unless explicitly narrowed. `'delegated'` marks a capability safe for
|
|
40
|
+
* a non-admin caller resolved via a real interactive (browser) login — see
|
|
41
|
+
* `ops/CallerTrustTierOps.ts`'s `determineCallerTrustTier()`. `'both'`
|
|
42
|
+
* covers capabilities safe for either.
|
|
43
|
+
*/
|
|
44
|
+
export type McpCapabilityTrustTier = 'full-trust' | 'delegated' | 'both';
|
|
45
|
+
/**
|
|
46
|
+
* Deployment families that can be used to constrain capability exposure.
|
|
47
|
+
*/
|
|
48
|
+
export type McpDeploymentType = 'cloud' | 'classic' | 'forgeops' | 'any';
|
|
49
|
+
/**
|
|
50
|
+
* MCP tool behavior hints that clients and models may use during tool selection.
|
|
51
|
+
*/
|
|
52
|
+
export type McpToolAnnotations = {
|
|
53
|
+
readOnlyHint: boolean;
|
|
54
|
+
destructiveHint: boolean;
|
|
55
|
+
idempotentHint: boolean;
|
|
56
|
+
openWorldHint: boolean;
|
|
57
|
+
};
|
|
58
|
+
/**
|
|
59
|
+
* Argument-shape contract surfaced to MCP callers for a capability.
|
|
60
|
+
*/
|
|
61
|
+
export type McpCapabilityArgumentMode = 'none' | 'positional' | 'named' | 'mixed';
|
|
62
|
+
/**
|
|
63
|
+
* Lightweight JSON-schema-style contract for a structured MCP parameter value.
|
|
64
|
+
*
|
|
65
|
+
* @remarks
|
|
66
|
+
* This intentionally supports only the subset needed for agent guidance and
|
|
67
|
+
* runtime validation.
|
|
68
|
+
*/
|
|
69
|
+
export type McpCapabilityParameterSchema = {
|
|
70
|
+
type?: 'string' | 'number' | 'integer' | 'boolean' | 'object' | 'array';
|
|
71
|
+
description?: string;
|
|
72
|
+
enum?: unknown[];
|
|
73
|
+
properties?: Record<string, McpCapabilityParameterSchema>;
|
|
74
|
+
required?: string[];
|
|
75
|
+
additionalProperties?: boolean;
|
|
76
|
+
items?: McpCapabilityParameterSchema;
|
|
77
|
+
};
|
|
78
|
+
/**
|
|
79
|
+
* Parameter definition for a capability exposed through discovery metadata.
|
|
80
|
+
*/
|
|
81
|
+
export type McpCapabilityParameter = {
|
|
82
|
+
name: string;
|
|
83
|
+
type: string;
|
|
84
|
+
required?: boolean;
|
|
85
|
+
position?: number;
|
|
86
|
+
description?: string;
|
|
87
|
+
/** Optional MCP-side default applied when the caller omits this parameter. */
|
|
88
|
+
defaultValue?: unknown;
|
|
89
|
+
/** Optional schema contract for structured or enum-like parameter values. */
|
|
90
|
+
schema?: McpCapabilityParameterSchema;
|
|
91
|
+
/** Optional example values surfaced in discovery and validation errors. */
|
|
92
|
+
examples?: unknown[];
|
|
93
|
+
};
|
|
94
|
+
/**
|
|
95
|
+
* Per-parameter annotation overlay applied on top of an auto-derived
|
|
96
|
+
* parameter (see {@link OperationCapabilityMeta.parameterOverrides}).
|
|
97
|
+
*
|
|
98
|
+
* @remarks
|
|
99
|
+
* Deliberately excludes `name` and `position`: which parameters exist, in
|
|
100
|
+
* which order, always comes from the auto-derived signature (Help.ts,
|
|
101
|
+
* falling back to name-based inference) so it can't silently drift from the
|
|
102
|
+
* real bound method. `type` and `required` may be set here too, but only
|
|
103
|
+
* for refinements the type system can't express on its own (e.g. narrowing
|
|
104
|
+
* a `number` to a JSON-Schema `integer`, or documenting an MCP-dispatch-
|
|
105
|
+
* layer default that makes an otherwise-required parameter effectively
|
|
106
|
+
* optional at the call site) — not as a general-purpose escape hatch.
|
|
107
|
+
*/
|
|
108
|
+
export type McpCapabilityParameterOverlay = Partial<Pick<McpCapabilityParameter, 'type' | 'required' | 'description' | 'defaultValue' | 'schema' | 'examples'>>;
|
|
109
|
+
/**
|
|
110
|
+
* Optional selector that disambiguates multiple capabilities sharing the same
|
|
111
|
+
* generic `(operationType, domain, objectType)` tuple.
|
|
112
|
+
*/
|
|
113
|
+
export type McpCapabilityScope = 'single' | 'bulk';
|
|
114
|
+
/**
|
|
115
|
+
* Canonical capability descriptor produced by inventory/registry builders.
|
|
116
|
+
*/
|
|
117
|
+
export type McpCapabilityDescriptor = {
|
|
118
|
+
id: string;
|
|
119
|
+
toolName: string;
|
|
120
|
+
methodName: string;
|
|
121
|
+
modulePath: string[];
|
|
122
|
+
domain: string;
|
|
123
|
+
objectType: string;
|
|
124
|
+
operationType: McpCapabilityOperationType;
|
|
125
|
+
/** Optional MCP-facing argument contract for this capability. */
|
|
126
|
+
argumentMode?: McpCapabilityArgumentMode;
|
|
127
|
+
/** Optional ordered/named parameter metadata for this capability. */
|
|
128
|
+
parameters?: McpCapabilityParameter[];
|
|
129
|
+
/** Optional selector value used to disambiguate generic capabilities. */
|
|
130
|
+
scope?: McpCapabilityScope;
|
|
131
|
+
/** Whether the generic tool supports realm override for this capability. */
|
|
132
|
+
supportsRealm?: boolean;
|
|
133
|
+
/** Whether the generic tool supports paging hints for this capability. */
|
|
134
|
+
supportsPaging?: boolean;
|
|
135
|
+
/** Whether the generic tool supports includeTotal for this capability. */
|
|
136
|
+
supportsIncludeTotal?: boolean;
|
|
137
|
+
kind: McpCapabilityKind;
|
|
138
|
+
riskClass: McpCapabilityRiskClass;
|
|
139
|
+
mutating: boolean;
|
|
140
|
+
destructive: boolean;
|
|
141
|
+
/**
|
|
142
|
+
* Whether this capability has no platform-native undo once it completes.
|
|
143
|
+
* Set from {@link OperationCapabilityMeta.irreversible} when declared;
|
|
144
|
+
* absent otherwise (not inferred, unlike {@link destructive}/{@link riskClass} —
|
|
145
|
+
* there's no reliable naming-convention signal for irreversibility).
|
|
146
|
+
*/
|
|
147
|
+
irreversible?: boolean;
|
|
148
|
+
/** Deployment families where this capability is functional. Defaults to `['any']`. */
|
|
149
|
+
deploymentTypes: McpDeploymentType[];
|
|
150
|
+
/**
|
|
151
|
+
* Deployment families where this capability is the preferred/optimal choice.
|
|
152
|
+
* Set from {@link OperationCapabilityMeta.preferredDeploymentTypes} when available;
|
|
153
|
+
* absent when no explicit preference has been declared.
|
|
154
|
+
*/
|
|
155
|
+
preferredDeploymentTypes?: McpDeploymentType[];
|
|
156
|
+
/**
|
|
157
|
+
* Identity surface this capability operates on.
|
|
158
|
+
* Set from {@link OperationCapabilityMeta.identitySurface} when available.
|
|
159
|
+
*/
|
|
160
|
+
identitySurface?: McpIdentitySurface;
|
|
161
|
+
/**
|
|
162
|
+
* Glob-style object type patterns this capability applies to.
|
|
163
|
+
* Set from {@link OperationCapabilityMeta.objectTypePatterns} when available.
|
|
164
|
+
*/
|
|
165
|
+
objectTypePatterns?: string[];
|
|
166
|
+
/** Optional human-readable note surfaced in discovery and validation output. */
|
|
167
|
+
notes?: string;
|
|
168
|
+
/** Curated natural-language phrases used to retrieve this capability. */
|
|
169
|
+
semanticAliases?: string[];
|
|
170
|
+
/**
|
|
171
|
+
* A credential beyond the standard AM/IDM bearer token this capability
|
|
172
|
+
* requires. When set, the runtime verifies it's present on the dispatching
|
|
173
|
+
* Frodo instance's state before invoking the descriptor, and fails fast with
|
|
174
|
+
* an actionable error instead of letting the underlying API call 401.
|
|
175
|
+
* Set from {@link OperationCapabilityMeta.requiredCredential} when available.
|
|
176
|
+
*/
|
|
177
|
+
requiredCredential?: McpRequiredCredential;
|
|
178
|
+
requiredScopes: string[];
|
|
179
|
+
/**
|
|
180
|
+
* Caller-privilege tier this capability is safe to expose to. Defaults to
|
|
181
|
+
* `'full-trust'` (see {@link McpCapabilityTrustTier}) — a conservative
|
|
182
|
+
* allow-list posture where every capability requires the maintainer to
|
|
183
|
+
* deliberately opt in a narrower tier, mirroring how {@link deploymentTypes}
|
|
184
|
+
* always resolves to at least `['any']` rather than being left unset.
|
|
185
|
+
* Set from {@link OperationCapabilityMeta.trustTier} when declared.
|
|
186
|
+
*/
|
|
187
|
+
trustTier: McpCapabilityTrustTier;
|
|
188
|
+
annotations: McpToolAnnotations;
|
|
189
|
+
};
|
|
190
|
+
/**
|
|
191
|
+
* Controls for capability inventory generation.
|
|
192
|
+
*/
|
|
193
|
+
export type McpCapabilityInventoryOptions = {
|
|
194
|
+
includeTopLevelDomains?: string[];
|
|
195
|
+
excludeTopLevelDomains?: string[];
|
|
196
|
+
includeUtils?: boolean;
|
|
197
|
+
};
|
|
198
|
+
/**
|
|
199
|
+
* Policy model used to include or exclude capabilities before registration.
|
|
200
|
+
*/
|
|
201
|
+
export type McpCapabilityPolicy = {
|
|
202
|
+
name: string;
|
|
203
|
+
allowOperationTypes?: McpCapabilityOperationType[];
|
|
204
|
+
denyOperationTypes?: McpCapabilityOperationType[];
|
|
205
|
+
allowRiskClasses?: McpCapabilityRiskClass[];
|
|
206
|
+
denyRiskClasses?: McpCapabilityRiskClass[];
|
|
207
|
+
/** Statically pre-filters capabilities by {@link McpCapabilityTrustTier} at manifest-build time — see `ToolRuntime.ts`'s `assertTrustTierAllowed` for the complementary per-request dynamic check. */
|
|
208
|
+
allowTrustTiers?: McpCapabilityTrustTier[];
|
|
209
|
+
denyTrustTiers?: McpCapabilityTrustTier[];
|
|
210
|
+
allowDomains?: string[];
|
|
211
|
+
denyDomains?: string[];
|
|
212
|
+
/** Optional allow-list of capability module/id path prefixes. */
|
|
213
|
+
allowCapabilityPathPrefixes?: string[];
|
|
214
|
+
/** Optional deny-list of capability module/id path prefixes. */
|
|
215
|
+
denyCapabilityPathPrefixes?: string[];
|
|
216
|
+
includeSpecial?: boolean;
|
|
217
|
+
};
|
|
218
|
+
/**
|
|
219
|
+
* Built-in policy preset names recognized by the baseline MCP capability layer.
|
|
220
|
+
*/
|
|
221
|
+
export type McpCapabilityPolicyPresetName = 'read-only' | 'agentic' | 'standard' | 'admin';
|
|
222
|
+
/**
|
|
223
|
+
* Identifies the identity data surface a capability operates on.
|
|
224
|
+
*
|
|
225
|
+
* @remarks
|
|
226
|
+
* - `managed` — IDM managed objects accessed via `openidm/managed/` (cloud + forgeops only)
|
|
227
|
+
* - `am-user` — AM realm users accessed via the AM REST API (classic only)
|
|
228
|
+
* - `connector-system` — Objects in an ICF connector system via `openidm/system/` (cloud + forgeops only)
|
|
229
|
+
* - `unknown` — Surface not classified
|
|
230
|
+
*/
|
|
231
|
+
export type McpIdentitySurface = 'managed' | 'am-user' | 'connector-system' | 'unknown';
|
|
232
|
+
/**
|
|
233
|
+
* Identifies a credential a capability needs beyond the standard AM/IDM bearer
|
|
234
|
+
* token, which the MCP runtime should verify is present before dispatching.
|
|
235
|
+
*
|
|
236
|
+
* @remarks
|
|
237
|
+
* - `logApi` — a Log API key/secret (`state.getLogApiKey()`/`getLogApiSecret()`),
|
|
238
|
+
* used by the Identity Cloud debug/audit log endpoints, which authenticate
|
|
239
|
+
* with `X-API-Key`/`X-API-Secret` rather than the AM session bearer token.
|
|
240
|
+
*/
|
|
241
|
+
export type McpRequiredCredential = 'logApi';
|
|
242
|
+
/**
|
|
243
|
+
* Explicit capability metadata entry stored in the static {@link CAPABILITY_META} map.
|
|
244
|
+
*
|
|
245
|
+
* @remarks
|
|
246
|
+
* Entries in the static map are keyed by a capability ID (exact dot-path match, e.g.
|
|
247
|
+
* `"idm.managed.countManagedObjects"`) or by a module prefix (e.g. `"idm.managed"`) that
|
|
248
|
+
* covers all capabilities whose IDs start with that prefix. Exact matches take priority
|
|
249
|
+
* over prefix matches. All fields are optional — only overrides need to be specified; the
|
|
250
|
+
* registry falls back to inferred defaults for absent fields.
|
|
251
|
+
*/
|
|
252
|
+
export type OperationCapabilityMeta = {
|
|
253
|
+
/**
|
|
254
|
+
* Explicit complete list of deployment types where this capability is functional.
|
|
255
|
+
* When set, overrides the default `['any']` inferred by the registry.
|
|
256
|
+
*/
|
|
257
|
+
deploymentTypes?: McpDeploymentType[];
|
|
258
|
+
/**
|
|
259
|
+
* Subset of `deploymentTypes` indicating the deployment(s) where this capability
|
|
260
|
+
* is the optimal/recommended choice for the given object surface. Used by
|
|
261
|
+
* `frodo_discover` to produce routing hints for agents.
|
|
262
|
+
*/
|
|
263
|
+
preferredDeploymentTypes?: McpDeploymentType[];
|
|
264
|
+
/**
|
|
265
|
+
* The identity data surface this capability operates on.
|
|
266
|
+
* Enables discovery tools to recommend the right domain for a given object type.
|
|
267
|
+
*/
|
|
268
|
+
identitySurface?: McpIdentitySurface;
|
|
269
|
+
/**
|
|
270
|
+
* A credential beyond the standard AM/IDM bearer token this capability
|
|
271
|
+
* requires. See {@link McpRequiredCredential}.
|
|
272
|
+
*/
|
|
273
|
+
requiredCredential?: McpRequiredCredential;
|
|
274
|
+
/**
|
|
275
|
+
* Glob-style object type patterns this capability applies to.
|
|
276
|
+
* Used by discovery to map object names (e.g. `alpha_user`) to the preferred domain.
|
|
277
|
+
* Examples: `['*_user', '*_organization', '*_application']`
|
|
278
|
+
*/
|
|
279
|
+
objectTypePatterns?: string[];
|
|
280
|
+
/** Optional human-readable note surfaced in discovery tool output. */
|
|
281
|
+
notes?: string;
|
|
282
|
+
/** Curated natural-language phrases used for capability retrieval. */
|
|
283
|
+
semanticAliases?: string[];
|
|
284
|
+
/** Explicit MCP-facing argument mode override for the capability. */
|
|
285
|
+
argumentMode?: McpCapabilityArgumentMode;
|
|
286
|
+
/**
|
|
287
|
+
* Per-parameter annotation overlay, keyed by the parameter's auto-derived
|
|
288
|
+
* name (from Help.ts, falling back to name-based inference). Only fields
|
|
289
|
+
* present in {@link McpCapabilityParameterOverlay} may be set — the
|
|
290
|
+
* auto-derived parameter list (which parameters exist, their order) is
|
|
291
|
+
* always the baseline, so an entry here can annotate a real parameter but
|
|
292
|
+
* can never fabricate one, silently reorder one, or hide a signature
|
|
293
|
+
* change. Use {@link excludeParameters} to hide a parameter entirely.
|
|
294
|
+
*/
|
|
295
|
+
parameterOverrides?: Record<string, McpCapabilityParameterOverlay>;
|
|
296
|
+
/**
|
|
297
|
+
* Names of auto-derived parameters to exclude from this capability's
|
|
298
|
+
* advertised parameter contract — e.g. a trailing `resultCallback` (a JS
|
|
299
|
+
* function reference an MCP JSON payload can never carry).
|
|
300
|
+
*/
|
|
301
|
+
excludeParameters?: string[];
|
|
302
|
+
/** Optional selector value used to distinguish single vs bulk semantics, etc. */
|
|
303
|
+
scope?: McpCapabilityScope;
|
|
304
|
+
/** Whether the capability supports MCP realm override controls. */
|
|
305
|
+
supportsRealm?: boolean;
|
|
306
|
+
/** Whether the capability supports MCP paging controls. */
|
|
307
|
+
supportsPaging?: boolean;
|
|
308
|
+
/** Whether the capability supports MCP includeTotal hints. */
|
|
309
|
+
supportsIncludeTotal?: boolean;
|
|
310
|
+
/**
|
|
311
|
+
* Explicit operation-type override for capabilities whose method name doesn't
|
|
312
|
+
* follow the CRUD naming convention `inferOperationType` relies on (e.g. `fetch`,
|
|
313
|
+
* `tail`). When set, this wins over naming-convention inference and also drives
|
|
314
|
+
* the derived `kind` (`'special'` iff `operationType === 'special'`).
|
|
315
|
+
*/
|
|
316
|
+
operationType?: McpCapabilityOperationType;
|
|
317
|
+
/**
|
|
318
|
+
* Explicit object-type override for capabilities whose method name doesn't carry
|
|
319
|
+
* an inferable object-type suffix (e.g. `fetch` → `LogEvent`). When set, this wins
|
|
320
|
+
* over naming-convention inference.
|
|
321
|
+
*/
|
|
322
|
+
objectType?: string;
|
|
323
|
+
/**
|
|
324
|
+
* Explicit mutating override. Naming-convention inference only recognizes
|
|
325
|
+
* `create`/`update`/`delete`/`import` as mutating, so any capability that writes
|
|
326
|
+
* state under a different verb (including one classified `operationType: 'special'`)
|
|
327
|
+
* needs this set explicitly rather than relying on the permissive `false` default.
|
|
328
|
+
*/
|
|
329
|
+
mutating?: boolean;
|
|
330
|
+
/**
|
|
331
|
+
* Explicit destructive-hint override, analogous to {@link mutating}.
|
|
332
|
+
*/
|
|
333
|
+
destructive?: boolean;
|
|
334
|
+
/**
|
|
335
|
+
* Marks a capability as having no platform-native undo once it completes —
|
|
336
|
+
* distinct from {@link riskClass}, which describes blast radius. An
|
|
337
|
+
* operation can be `riskClass: 'critical'` without being irreversible (a
|
|
338
|
+
* schema-property delete can be restored from a prior export) or
|
|
339
|
+
* irreversible without being otherwise unusual (an IDM feature install is
|
|
340
|
+
* a single, deliberate, low-frequency action, not "high blast radius" in
|
|
341
|
+
* the everyday sense, but Ping's own docs state that uninstalling
|
|
342
|
+
* requires contacting support and rolling back the tenant). Pure
|
|
343
|
+
* discoverability metadata — surfaced on the descriptor for callers and
|
|
344
|
+
* policy designers to see (like {@link destructive}), not itself wired
|
|
345
|
+
* into policy-tier filtering, since capabilities marked irreversible so
|
|
346
|
+
* far are already `riskClass: 'critical'` and therefore already excluded
|
|
347
|
+
* from every non-admin preset by the existing risk-class filter.
|
|
348
|
+
*/
|
|
349
|
+
irreversible?: boolean;
|
|
350
|
+
/**
|
|
351
|
+
* Explicit risk-class override. Naming-convention inference only escalates risk
|
|
352
|
+
* for `delete`/`import`/`export`/`create`/`update` and secret-ish keyword matches,
|
|
353
|
+
* so non-CRUD capabilities that warrant elevated caution need this set explicitly.
|
|
354
|
+
*/
|
|
355
|
+
riskClass?: McpCapabilityRiskClass;
|
|
356
|
+
/**
|
|
357
|
+
* Explicit caller-privilege-tier override. See {@link McpCapabilityTrustTier}.
|
|
358
|
+
* The registry defaults every capability to `'full-trust'` when absent —
|
|
359
|
+
* this is the enforceable replacement for an "Admin-only" free-text note
|
|
360
|
+
* in {@link notes} (keep the prose too; it explains *why*, this field says
|
|
361
|
+
* *what's enforced*).
|
|
362
|
+
*/
|
|
363
|
+
trustTier?: McpCapabilityTrustTier;
|
|
364
|
+
/**
|
|
365
|
+
* When `true`, this capability is dropped from the inventory entirely instead of
|
|
366
|
+
* becoming a descriptor. Intended for methods that make no tenant/API call (pure
|
|
367
|
+
* local helpers) and therefore aren't remote operations at all.
|
|
368
|
+
*/
|
|
369
|
+
excluded?: boolean;
|
|
370
|
+
};
|
|
371
|
+
//# sourceMappingURL=CapabilityTypes.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CapabilityTypes.d.ts","sourceRoot":"","sources":["../../src/mcp/CapabilityTypes.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { Frodo } from '../lib/FrodoLib';
|
|
2
|
+
import { McpCatalogHydrationStatus, McpDiscoveryContext, McpDiscoveryTarget } from './ToolManifest';
|
|
3
|
+
export type McpDiscoveryHydrationCatalog = 'managed-object-types' | 'config-entity-ids';
|
|
4
|
+
export type McpDiscoveryHydrationEvent = {
|
|
5
|
+
catalog: McpDiscoveryHydrationCatalog;
|
|
6
|
+
status: McpCatalogHydrationStatus;
|
|
7
|
+
count: number;
|
|
8
|
+
error?: unknown;
|
|
9
|
+
};
|
|
10
|
+
export type McpDiscoveryHydrationOptions = {
|
|
11
|
+
frodoInstance?: Frodo;
|
|
12
|
+
timeoutMs?: number;
|
|
13
|
+
activeTarget?: McpDiscoveryTarget;
|
|
14
|
+
onEvent?: (event: McpDiscoveryHydrationEvent) => void;
|
|
15
|
+
};
|
|
16
|
+
/**
|
|
17
|
+
* Hydrates tenant catalogs used by MCP discovery and semantic skill matching.
|
|
18
|
+
* Catalog failures are isolated so service construction can continue.
|
|
19
|
+
*/
|
|
20
|
+
export declare function hydrateMcpDiscoveryContext(options?: McpDiscoveryHydrationOptions): Promise<McpDiscoveryContext>;
|
|
21
|
+
//# sourceMappingURL=DiscoveryHydration.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DiscoveryHydration.d.ts","sourceRoot":"","sources":["../../src/mcp/DiscoveryHydration.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAS,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EACL,yBAAyB,EACzB,mBAAmB,EACnB,kBAAkB,EACnB,MAAM,gBAAgB,CAAC;AAIxB,MAAM,MAAM,4BAA4B,GACtC,sBAAsB,GAAG,mBAAmB,CAAC;AAE/C,MAAM,MAAM,0BAA0B,GAAG;IACvC,OAAO,EAAE,4BAA4B,CAAC;IACtC,MAAM,EAAE,yBAAyB,CAAC;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,4BAA4B,GAAG;IACzC,aAAa,CAAC,EAAE,KAAK,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,kBAAkB,CAAC;IAClC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,0BAA0B,KAAK,IAAI,CAAC;CACvD,CAAC;AAOF;;;GAGG;AACH,wBAAsB,0BAA0B,CAC9C,OAAO,GAAE,4BAAiC,GACzC,OAAO,CAAC,mBAAmB,CAAC,CAoD9B"}
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Resolves which Ping documentation docset (and version, where applicable) an
|
|
3
|
+
* MCP session's active deployment should be pointed at.
|
|
4
|
+
*
|
|
5
|
+
* @remarks
|
|
6
|
+
* Ping publishes every docs page as a Markdown alternate (swap `.html` for
|
|
7
|
+
* `.md`, or send `Accept: text/markdown`) and a per-product discovery index at
|
|
8
|
+
* `docs.pingidentity.com/{product}/llms.txt` — a flat title-to-URL list an
|
|
9
|
+
* agent can match a question against directly. That fetch-and-match mechanism
|
|
10
|
+
* is generic and needs no logic of its own; what does need logic is picking
|
|
11
|
+
* the right `{product}` and, for versioned products, the right version —
|
|
12
|
+
* getting either wrong doesn't fail loudly, it silently serves plausible but
|
|
13
|
+
* wrong documentation:
|
|
14
|
+
*
|
|
15
|
+
* - Advanced Identity Cloud (`cloud`) is continuously deployed and reports
|
|
16
|
+
* internal component versions (e.g. an AM version) that run ahead of any
|
|
17
|
+
* public release. Treating that as a docs version would produce a 404 at
|
|
18
|
+
* best. The correct behavior is to ignore it entirely and always resolve to
|
|
19
|
+
* the unversioned `pingoneaic` docset.
|
|
20
|
+
* - Self-managed AM (`classic`) is genuinely versioned, but
|
|
21
|
+
* `docs.pingidentity.com/pingam/llms.txt` is itself unversioned — it only
|
|
22
|
+
* ever indexes whichever version is currently latest on the docs site, not
|
|
23
|
+
* necessarily the one this deployment runs. Verified live: older
|
|
24
|
+
* version-pinned page trees stay reachable at their own path even once
|
|
25
|
+
* superseded (e.g. `.../pingam/7.5/...` resolves cleanly with `8.1`
|
|
26
|
+
* current), so the fix is to rewrite the version segment in a matched page
|
|
27
|
+
* URL to the deployment's actual version rather than trust whatever the
|
|
28
|
+
* index links to.
|
|
29
|
+
* - ForgeOps (`forgeops`) runs AM and IDM as separately versioned components,
|
|
30
|
+
* each with its own docset (`pingam`, `pingidm`), so a single docs target
|
|
31
|
+
* can't be resolved without knowing which component a given question is
|
|
32
|
+
* about. Rather than guess, `resolveDocsContext` returns both components'
|
|
33
|
+
* docs targets plus `domainRouting` — a lookup from frodo's own top-level
|
|
34
|
+
* capability domain (the `frodo.<domain>...` namespace a skill's `domain`
|
|
35
|
+
* field already reports, e.g. `'realm'`, `'idm'`, `'authn'`) to which
|
|
36
|
+
* component owns it, built from the actual API generator (`generateAmApi`
|
|
37
|
+
* vs `generateIdmApi`) each domain's operations call under the hood.
|
|
38
|
+
*/
|
|
39
|
+
import { McpDeploymentType } from './CapabilityTypes';
|
|
40
|
+
/** Docs product slugs this resolver knows about. */
|
|
41
|
+
export type McpDocsProduct = 'pingoneaic' | 'pingam' | 'pingidm';
|
|
42
|
+
/**
|
|
43
|
+
* A resolved docs target: which product, whether it's versioned, and (for
|
|
44
|
+
* versioned products) which version — plus the discovery index URL and
|
|
45
|
+
* guidance on how to use it correctly.
|
|
46
|
+
*/
|
|
47
|
+
export type McpDocsContext = {
|
|
48
|
+
product: McpDocsProduct;
|
|
49
|
+
versioned: boolean;
|
|
50
|
+
/** Present only when `versioned` is true and a version could be determined. */
|
|
51
|
+
version?: string;
|
|
52
|
+
/** Always the unversioned per-product discovery index — never version-scoped. */
|
|
53
|
+
llmsTxtUrl: string;
|
|
54
|
+
/** Usage guidance specific to this product/version combination. */
|
|
55
|
+
notes: string;
|
|
56
|
+
};
|
|
57
|
+
/** Returned when a docs target cannot be resolved. */
|
|
58
|
+
export type McpDocsContextUnresolved = {
|
|
59
|
+
product: null;
|
|
60
|
+
unresolved: true;
|
|
61
|
+
reason: string;
|
|
62
|
+
};
|
|
63
|
+
/**
|
|
64
|
+
* Which product's docs own a given top-level frodo capability domain (the
|
|
65
|
+
* `frodo.<domain>...` namespace, e.g. `'realm'`, `'idm'`, `'authn'`):
|
|
66
|
+
*
|
|
67
|
+
* - `'am'` / `'idm'`: operations under this domain call that component's API
|
|
68
|
+
* exclusively (verified against the actual `generateAmApi`/`generateIdmApi`
|
|
69
|
+
* call sites, not inferred from the domain's name — several domain names
|
|
70
|
+
* are misleading, e.g. `user` is AM's identity-store users REST resource,
|
|
71
|
+
* not IDM managed users, which live under `idm.managed` instead).
|
|
72
|
+
* - `'both'`: the domain spans both components (e.g. whole-tenant config
|
|
73
|
+
* export/import), so a single product can't be chosen for it.
|
|
74
|
+
* - `'cloud-only'`: an Advanced Identity Cloud SaaS feature with no ForgeOps
|
|
75
|
+
* equivalent at all (ESVs, IGA, promotion, service accounts, ...).
|
|
76
|
+
* - `'n/a'`: an internal/client-side helper with no corresponding product
|
|
77
|
+
* documentation (HTTP client factory, local utility functions, connection
|
|
78
|
+
* profile and token cache management).
|
|
79
|
+
*/
|
|
80
|
+
export type McpDocsDomainProduct = 'am' | 'idm' | 'both' | 'cloud-only' | 'n/a';
|
|
81
|
+
/**
|
|
82
|
+
* Verified domain → product mapping for every top-level frodo capability
|
|
83
|
+
* domain, derived from which API generator (`generateAmApi`/
|
|
84
|
+
* `generateAmAuthApi`/`generateOauth2Api` vs `generateIdmApi`) that domain's
|
|
85
|
+
* operations call. Domains not listed here default to `'both'` in
|
|
86
|
+
* {@link classifyDomainProduct} — an unclassified domain should prompt
|
|
87
|
+
* checking both docsets rather than silently guessing one.
|
|
88
|
+
*/
|
|
89
|
+
export declare const FORGEOPS_DOMAIN_PRODUCT_MAP: Record<string, McpDocsDomainProduct>;
|
|
90
|
+
/**
|
|
91
|
+
* Classifies a top-level frodo capability domain by which product's docs own
|
|
92
|
+
* it. Falls back to `'both'` for anything not in
|
|
93
|
+
* {@link FORGEOPS_DOMAIN_PRODUCT_MAP} — an unrecognized domain should never
|
|
94
|
+
* be silently routed to one product's docs.
|
|
95
|
+
*/
|
|
96
|
+
export declare function classifyDomainProduct(domain: string): McpDocsDomainProduct;
|
|
97
|
+
/** A resolved forgeops docs target: independently versioned AM and IDM docsets, plus domain routing. */
|
|
98
|
+
export type McpDocsContextForgeops = {
|
|
99
|
+
deploymentType: 'forgeops';
|
|
100
|
+
am: McpDocsContext | McpDocsContextUnresolved;
|
|
101
|
+
idm: McpDocsContext | McpDocsContextUnresolved;
|
|
102
|
+
domainRouting: Record<string, McpDocsDomainProduct>;
|
|
103
|
+
notes: string;
|
|
104
|
+
};
|
|
105
|
+
/** @see extractDocsMajorMinor */
|
|
106
|
+
export declare function parseAmDocsVersion(rawAmVersion: string | undefined): string | undefined;
|
|
107
|
+
/** @see extractDocsMajorMinor */
|
|
108
|
+
export declare function parseIdmDocsVersion(rawIdmVersion: string | undefined): string | undefined;
|
|
109
|
+
/**
|
|
110
|
+
* Resolves the docs target for a deployment, given its type and (for
|
|
111
|
+
* self-managed AM/IDM) its raw version string(s).
|
|
112
|
+
*
|
|
113
|
+
* @param deploymentType Active deployment type, or `undefined` if unknown.
|
|
114
|
+
* @param rawAmVersion Raw value from `state.getAmVersion()`, consulted for
|
|
115
|
+
* `classic` and `forgeops` deployments.
|
|
116
|
+
* @param rawIdmVersion Raw value from `state.getIdmVersion()`, consulted only
|
|
117
|
+
* for `forgeops` deployments (classic has no IDM component; cloud ignores
|
|
118
|
+
* component versions by design).
|
|
119
|
+
* @returns A resolved docs context, or an explicit unresolved result — never
|
|
120
|
+
* a guess.
|
|
121
|
+
*/
|
|
122
|
+
export declare function resolveDocsContext(deploymentType: McpDeploymentType | undefined, rawAmVersion?: string, rawIdmVersion?: string): McpDocsContext | McpDocsContextUnresolved | McpDocsContextForgeops;
|
|
123
|
+
//# sourceMappingURL=DocsContext.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DocsContext.d.ts","sourceRoot":"","sources":["../../src/mcp/DocsContext.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAEtD,oDAAoD;AACpD,MAAM,MAAM,cAAc,GAAG,YAAY,GAAG,QAAQ,GAAG,SAAS,CAAC;AAEjE;;;;GAIG;AACH,MAAM,MAAM,cAAc,GAAG;IAC3B,OAAO,EAAE,cAAc,CAAC;IACxB,SAAS,EAAE,OAAO,CAAC;IACnB,+EAA+E;IAC/E,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,iFAAiF;IACjF,UAAU,EAAE,MAAM,CAAC;IACnB,mEAAmE;IACnE,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,sDAAsD;AACtD,MAAM,MAAM,wBAAwB,GAAG;IACrC,OAAO,EAAE,IAAI,CAAC;IACd,UAAU,EAAE,IAAI,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,MAAM,oBAAoB,GAAG,IAAI,GAAG,KAAK,GAAG,MAAM,GAAG,YAAY,GAAG,KAAK,CAAC;AAEhF;;;;;;;GAOG;AACH,eAAO,MAAM,2BAA2B,EAAE,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAgC1E,CAAC;AAEJ;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,oBAAoB,CAE1E;AAED,wGAAwG;AACxG,MAAM,MAAM,sBAAsB,GAAG;IACnC,cAAc,EAAE,UAAU,CAAC;IAC3B,EAAE,EAAE,cAAc,GAAG,wBAAwB,CAAC;IAC9C,GAAG,EAAE,cAAc,GAAG,wBAAwB,CAAC;IAC/C,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC;IACpD,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AA6BF,iCAAiC;AACjC,wBAAgB,kBAAkB,CAChC,YAAY,EAAE,MAAM,GAAG,SAAS,GAC/B,MAAM,GAAG,SAAS,CAEpB;AAED,iCAAiC;AACjC,wBAAgB,mBAAmB,CACjC,aAAa,EAAE,MAAM,GAAG,SAAS,GAChC,MAAM,GAAG,SAAS,CAEpB;AA2CD;;;;;;;;;;;;GAYG;AACH,wBAAgB,kBAAkB,CAChC,cAAc,EAAE,iBAAiB,GAAG,SAAS,EAC7C,YAAY,CAAC,EAAE,MAAM,EACrB,aAAa,CAAC,EAAE,MAAM,GACrB,cAAc,GAAG,wBAAwB,GAAG,sBAAsB,CAyCpE"}
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Composes MCP capability inventory, policy filtering, manifest generation, and
|
|
3
|
+
* runtime execution into one launch-ready service object.
|
|
4
|
+
*
|
|
5
|
+
* @remarks
|
|
6
|
+
* This module is intentionally transport-agnostic. It prepares all data and
|
|
7
|
+
* execution hooks required by both stdio and HTTP MCP transports, while leaving
|
|
8
|
+
* actual transport wiring to higher layers.
|
|
9
|
+
*/
|
|
10
|
+
import { Frodo } from '../lib/FrodoLib';
|
|
11
|
+
import { McpCapabilityDescriptor, McpCapabilityInventoryOptions, McpCapabilityPolicy, McpCapabilityPolicyPresetName } from './CapabilityTypes';
|
|
12
|
+
import { McpProfileName } from './ProfileRegistry';
|
|
13
|
+
import { McpDiscoveryContext, McpToolManifest } from './ToolManifest';
|
|
14
|
+
import { McpToolExecutionRequest, McpToolExecutionResult, McpToolRuntime, McpToolRuntimeOptions } from './ToolRuntime';
|
|
15
|
+
/**
|
|
16
|
+
* Lightweight tool metadata surface suitable for MCP tool registration calls.
|
|
17
|
+
*/
|
|
18
|
+
export type McpServiceToolDefinition = {
|
|
19
|
+
/** Stable tool name exposed to MCP clients. */
|
|
20
|
+
name: string;
|
|
21
|
+
/** Human-readable tool description. */
|
|
22
|
+
description: string;
|
|
23
|
+
/** Optional MCP annotation hints for tool selection behavior. */
|
|
24
|
+
annotations?: {
|
|
25
|
+
readOnlyHint?: boolean;
|
|
26
|
+
destructiveHint?: boolean;
|
|
27
|
+
idempotentHint?: boolean;
|
|
28
|
+
openWorldHint?: boolean;
|
|
29
|
+
};
|
|
30
|
+
};
|
|
31
|
+
/**
|
|
32
|
+
* Options for constructing an MCP service instance.
|
|
33
|
+
*/
|
|
34
|
+
export type McpServiceOptions = {
|
|
35
|
+
/**
|
|
36
|
+
* Frodo instance to inspect and use as runtime factory root.
|
|
37
|
+
* Defaults to the library singleton.
|
|
38
|
+
*/
|
|
39
|
+
frodoInstance?: Frodo;
|
|
40
|
+
/** Optional profile name to constrain the active capability universe. */
|
|
41
|
+
profileName?: McpProfileName;
|
|
42
|
+
/** Optional inventory-scoping controls (domains, utils visibility). */
|
|
43
|
+
inventoryOptions?: McpCapabilityInventoryOptions;
|
|
44
|
+
/** Built-in policy preset to start from. Defaults to `standard`. */
|
|
45
|
+
policyPreset?: McpCapabilityPolicyPresetName;
|
|
46
|
+
/** Optional override fields merged on top of the selected preset. */
|
|
47
|
+
policyOverride?: Partial<McpCapabilityPolicy>;
|
|
48
|
+
/** Optional runtime customization hooks. */
|
|
49
|
+
runtimeOptions?: Omit<McpToolRuntimeOptions, 'frodoRoot' | 'managedObjectTypes' | 'managedObjectHydrationStatus' | 'configEntityIds' | 'configEntityHydrationStatus'>;
|
|
50
|
+
/** Service-local tenant metadata used only for discovery and search. */
|
|
51
|
+
discoveryContext?: McpDiscoveryContext;
|
|
52
|
+
};
|
|
53
|
+
/**
|
|
54
|
+
* Fully composed MCP service object.
|
|
55
|
+
*/
|
|
56
|
+
export type McpService = {
|
|
57
|
+
/** Effective capability policy after preset + overrides are merged. */
|
|
58
|
+
policy: McpCapabilityPolicy;
|
|
59
|
+
/** Policy-filtered capabilities backing the current service. */
|
|
60
|
+
capabilities: McpCapabilityDescriptor[];
|
|
61
|
+
/** Reduced manifest consumed by transport registration code. */
|
|
62
|
+
manifest: McpToolManifest;
|
|
63
|
+
/** Runtime executor for tool calls. */
|
|
64
|
+
runtime: McpToolRuntime;
|
|
65
|
+
/**
|
|
66
|
+
* Returns tool definition metadata for transport registration.
|
|
67
|
+
*
|
|
68
|
+
* @returns Flattened canonical tool list plus discovery tool.
|
|
69
|
+
*/
|
|
70
|
+
listTools(): McpServiceToolDefinition[];
|
|
71
|
+
/**
|
|
72
|
+
* Executes one tool request.
|
|
73
|
+
*
|
|
74
|
+
* @param request Tool execution request envelope.
|
|
75
|
+
* @returns Tool execution result envelope.
|
|
76
|
+
*/
|
|
77
|
+
executeTool(request: McpToolExecutionRequest): Promise<McpToolExecutionResult>;
|
|
78
|
+
};
|
|
79
|
+
/**
|
|
80
|
+
* Merges a built-in policy preset with caller-provided overrides.
|
|
81
|
+
*
|
|
82
|
+
* @param presetName Built-in preset key.
|
|
83
|
+
* @param override Optional override object.
|
|
84
|
+
* @returns Effective policy object.
|
|
85
|
+
*/
|
|
86
|
+
export declare function composeCapabilityPolicy(presetName: McpCapabilityPolicyPresetName, override?: Partial<McpCapabilityPolicy>): McpCapabilityPolicy;
|
|
87
|
+
/**
|
|
88
|
+
* Builds an MCP service from Frodo capabilities and policy configuration.
|
|
89
|
+
*
|
|
90
|
+
* @param options Service construction options.
|
|
91
|
+
* @returns Composed service object with manifest and runtime hooks.
|
|
92
|
+
*/
|
|
93
|
+
export declare function createMcpService(options?: McpServiceOptions): McpService;
|
|
94
|
+
//# sourceMappingURL=McpService.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"McpService.d.ts","sourceRoot":"","sources":["../../src/mcp/McpService.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,KAAK,EAAS,MAAM,iBAAiB,CAAC;AAG/C,OAAO,EACL,uBAAuB,EACvB,6BAA6B,EAC7B,mBAAmB,EACnB,6BAA6B,EAC9B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,cAAc,EAA8B,MAAM,mBAAmB,CAAC;AAC/E,OAAO,EAEL,mBAAmB,EACnB,eAAe,EAChB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAEL,uBAAuB,EACvB,sBAAsB,EACtB,cAAc,EACd,qBAAqB,EACtB,MAAM,eAAe,CAAC;AAEvB;;GAEG;AACH,MAAM,MAAM,wBAAwB,GAAG;IACrC,+CAA+C;IAC/C,IAAI,EAAE,MAAM,CAAC;IACb,uCAAuC;IACvC,WAAW,EAAE,MAAM,CAAC;IACpB,iEAAiE;IACjE,WAAW,CAAC,EAAE;QACZ,YAAY,CAAC,EAAE,OAAO,CAAC;QACvB,eAAe,CAAC,EAAE,OAAO,CAAC;QAC1B,cAAc,CAAC,EAAE,OAAO,CAAC;QACzB,aAAa,CAAC,EAAE,OAAO,CAAC;KACzB,CAAC;CACH,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B;;;OAGG;IACH,aAAa,CAAC,EAAE,KAAK,CAAC;IACtB,yEAAyE;IACzE,WAAW,CAAC,EAAE,cAAc,CAAC;IAC7B,uEAAuE;IACvE,gBAAgB,CAAC,EAAE,6BAA6B,CAAC;IACjD,oEAAoE;IACpE,YAAY,CAAC,EAAE,6BAA6B,CAAC;IAC7C,qEAAqE;IACrE,cAAc,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAC9C,4CAA4C;IAC5C,cAAc,CAAC,EAAE,IAAI,CACnB,qBAAqB,EACnB,WAAW,GACX,oBAAoB,GACpB,8BAA8B,GAC9B,iBAAiB,GACjB,6BAA6B,CAChC,CAAC;IACF,wEAAwE;IACxE,gBAAgB,CAAC,EAAE,mBAAmB,CAAC;CACxC,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG;IACvB,uEAAuE;IACvE,MAAM,EAAE,mBAAmB,CAAC;IAC5B,gEAAgE;IAChE,YAAY,EAAE,uBAAuB,EAAE,CAAC;IACxC,gEAAgE;IAChE,QAAQ,EAAE,eAAe,CAAC;IAC1B,uCAAuC;IACvC,OAAO,EAAE,cAAc,CAAC;IACxB;;;;OAIG;IACH,SAAS,IAAI,wBAAwB,EAAE,CAAC;IACxC;;;;;OAKG;IACH,WAAW,CACT,OAAO,EAAE,uBAAuB,GAC/B,OAAO,CAAC,sBAAsB,CAAC,CAAC;CACpC,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CACrC,UAAU,EAAE,6BAA6B,EACzC,QAAQ,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,GACtC,mBAAmB,CAOrB;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,GAAE,iBAAsB,GAAG,UAAU,CA4E5E"}
|