// scripts/generate-discovery.ts
import { writeFileSync, mkdirSync } from 'fs';
import {
generateOpenAPISpec,
generateMCPManifest,
generateLlmsTxt,
generateCTPManifest,
} from '@conveniencepro/ctp-discovery';
import { registry } from '../src/registry';
const tools = registry.getDefinitions();
const outDir = 'public/.well-known';
mkdirSync(outDir, { recursive: true });
// Generate all formats
writeFileSync(
'public/openapi.json',
JSON.stringify(generateOpenAPISpec(tools), null, 2)
);
writeFileSync(
`${outDir}/mcp.json`,
JSON.stringify(generateMCPManifest(tools, { name: 'my-tools' }), null, 2)
);
writeFileSync(
'public/llms.txt',
generateLlmsTxt(tools)
);
writeFileSync(
`${outDir}/ctp.json`,
JSON.stringify(generateCTPManifest(tools, { name: 'my-tools' }), null, 2)
);
console.log('Discovery documents generated!');