list_intents
Lists available intent plans and their human approval requirements for the active profile in the MCP memory gateway server.
Instructions
List available intent plans and whether each requires human approval in the active profile
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| mcpProfile | No | ||
| bundleId | No | ||
| partnerProfile | No |
Implementation Reference
- scripts/intent-router.js:78-103 (handler)The primary implementation of the `list_intents` tool logic, which processes policy bundles and profiles to return a list of available intents.
function listIntents(options = {}) { const bundle = loadPolicyBundle(options.bundleId); const profile = assertKnownMcpProfile(options.mcpProfile || getActiveMcpProfile()); const requiredRisks = getRequiredApprovalRisks(bundle, profile); const partnerStrategy = buildPartnerStrategy({ partnerProfile: options.partnerProfile, tokenBudget: DEFAULT_TOKEN_BUDGET, }); return { bundleId: bundle.bundleId, mcpProfile: profile, partnerProfile: partnerStrategy.profile, partnerStrategy: { verificationMode: partnerStrategy.verificationMode, recommendedChecks: partnerStrategy.recommendedChecks, }, intents: bundle.intents.map((intent) => ({ id: intent.id, description: intent.description, risk: intent.risk, actionCount: intent.actions.length, requiresApproval: requiredRisks.includes(intent.risk), })), }; } - scripts/tool-registry.js:119-125 (registration)Registration of the `list_intents` tool in the tool registry.
name: 'list_intents', description: 'List available intent plans and whether each requires human approval in the active profile', inputSchema: { type: 'object', properties: { mcpProfile: { type: 'string' }, bundleId: { type: 'string' },