get_regulation_guide
Get analysis guidance for EU regulations like GDPR, DORA, and AI Act. Discover delegated acts, proportionality tiers, common pitfalls, cross-regulation pointers, and methodology hints before analyzing regulations.
Instructions
Get analysis guidance for a specific regulation. Returns delegated acts, proportionality tiers, commonly missed provisions, cross-regulation pointers, and analysis methodology hints. Call this BEFORE analyzing any regulation to discover what data is available and how to use it effectively.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| regulation | Yes | Regulation ID (e.g., "DORA", "GDPR", "NIS2", "AI_ACT") | |
| detail_level | No | Quick (~500 tokens): delegated acts, proportionality, top pitfalls, cross-regulation. Full (~1500 tokens): adds key article structures, evidence hints, recitals, national law pointers. Default: quick. |
Implementation Reference
- src/tools/regulation-guide.ts:219-233 (handler)The main handler function for the get_regulation_guide tool, which reads the appropriate JSON guide file and formats it into a string based on the requested detail level.
export function getRegulationGuide(input: RegulationGuideInput): string { const { regulation, detail_level = 'quick' } = input; const guidePath = join(GUIDES_DIR, `${regulation}.json`); if (!existsSync(guidePath)) { return ( `No analysis guide available for ${regulation}. Use list_regulations ` + `to discover delegated acts, check_applicability for scope, and ` + `compare_requirements for cross-regulation analysis.` ); } const guide: GuideData = JSON.parse(readFileSync(guidePath, 'utf-8')); return detail_level === 'full' ? formatFullGuide(guide) : formatQuickGuide(guide); } - Input type definition for getRegulationGuide.
export interface RegulationGuideInput { regulation: string; detail_level?: 'quick' | 'full'; } - src/tools/registry.ts:319-347 (registration)Registration of the get_regulation_guide tool in the tools registry, including its schema (though abbreviated in the summary) and its mapping to the getRegulationGuide handler.
}, { name: 'get_regulation_guide', description: 'Get analysis guidance for a specific regulation. Returns delegated acts, ' + 'proportionality tiers, commonly missed provisions, cross-regulation pointers, and ' + 'analysis methodology hints. Call this BEFORE analyzing any regulation to discover ' + 'what data is available and how to use it effectively.', inputSchema: { type: 'object', properties: { regulation: { type: 'string', description: 'Regulation ID (e.g., "DORA", "GDPR", "NIS2", "AI_ACT")', }, detail_level: { type: 'string', enum: ['quick', 'full'], description: 'Quick (~500 tokens): delegated acts, proportionality, top pitfalls, ' + 'cross-regulation. Full (~1500 tokens): adds key article structures, evidence ' + 'hints, recitals, national law pointers. Default: quick.', }, }, required: ['regulation'], }, handler: async (_db, args) => { const input = args as unknown as RegulationGuideInput; return getRegulationGuide(input);