list_legends
Access a curated list of legendary founders and investors available for chat, filterable by category or with a fun vibe. Includes tech titans, investors, startup sages, and crypto builders.
Instructions
List all legendary founders and investors you can chat with.
The council includes:
Tech Titans: Elon Musk, Steve Jobs, Jeff Bezos, Jensen Huang
Investors: Warren Buffett, Charlie Munger, Peter Thiel, Marc Andreessen
Startup Sages: Paul Graham, Sam Altman, Naval Ravikant, Reid Hoffman
Crypto Builders: CZ, Anatoly Yakovenko, Mert Mumtaz, Michael Heinrich
Each legend has unique thinking frameworks, principles, and perspectives.
Set vibe="fun" for a more entertaining presentation.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| category | No | Filter by category (e.g., "crypto", "investor", "founder", "tech") | |
| vibe | No | Output style: "serious" (default) or "fun" for meme mode |
Implementation Reference
- src/tools/list-legends.ts:41-57 (handler)Main handler function that lists all legends, optionally filtered by category. Calls getLegendSummaries() from the loader.
export function listLegends(input?: ListLegendsInput): ListLegendsResult { let legends = getLegendSummaries(); // Filter by category if provided if (input?.category) { const cat = input.category.toLowerCase(); legends = legends.filter(l => l.tags.some(t => t.toLowerCase().includes(cat)) || l.expertise.some(e => e.toLowerCase().includes(cat)) ); } return { count: legends.length, legends, }; } - src/tools/list-legends.ts:8-11 (schema)Input and output type definitions for the list_legends tool.
export interface ListLegendsInput { category?: string; vibe?: 'serious' | 'fun'; } - src/tools/list-legends.ts:114-143 (registration)MCP tool definition object with name 'list_legends', description, and inputSchema for registration.
// MCP Tool Definition export const listLegendsTool = { name: 'list_legends', description: `List all legendary founders and investors you can chat with. The council includes: - **Tech Titans**: Elon Musk, Steve Jobs, Jeff Bezos, Jensen Huang - **Investors**: Warren Buffett, Charlie Munger, Peter Thiel, Marc Andreessen - **Startup Sages**: Paul Graham, Sam Altman, Naval Ravikant, Reid Hoffman - **Crypto Builders**: CZ, Anatoly Yakovenko, Mert Mumtaz, Michael Heinrich Each legend has unique thinking frameworks, principles, and perspectives. Set vibe="fun" for a more entertaining presentation.`, inputSchema: { type: 'object' as const, properties: { category: { type: 'string', description: 'Filter by category (e.g., "crypto", "investor", "founder", "tech")', }, vibe: { type: 'string', enum: ['serious', 'fun'], description: 'Output style: "serious" (default) or "fun" for meme mode', }, }, required: [] as string[], }, }; - src/index.ts:56-60 (registration)The listLegendsTool is included in the allTools array (src/tools/index.ts:22-31) which is returned when the server handles ListToolsRequestSchema.
server.setRequestHandler(ListToolsRequestSchema, async () => { return { tools: allTools, }; }); - src/tools/list-legends.ts:62-112 (helper)Formats the legend list as markdown for display, supporting 'serious' and 'fun' vibes.
export function formatLegendsMarkdown(result: ListLegendsResult, vibe: 'serious' | 'fun' = 'serious'): string { const lines: string[] = []; if (vibe === 'fun') { lines.push(`# 🎠The Council of Legends (${result.count})`); lines.push(''); lines.push('*Your personal board of advisors. They\'ve built trillion-dollar companies, lost billions, and lived to tell the tale.*'); lines.push(''); lines.push('---'); lines.push(''); for (const legend of result.legends) { const emoji = LEGEND_VIBES[legend.id] || '💡'; lines.push(`### ${legend.name}`); lines.push(`**ID:** \`${legend.id}\` ${emoji}`); lines.push(''); } lines.push('---'); lines.push(''); lines.push('*"The best time to get advice from a legend was 20 years ago. The second best time is now."*'); lines.push(''); lines.push('Use `summon_legend` to start a conversation.'); } else { lines.push(`# Available Legends (${result.count})`); lines.push(''); lines.push('Chat with legendary founders and investors. Each brings unique frameworks and perspectives.'); lines.push(''); for (const legend of result.legends) { lines.push(`## ${legend.name}`); lines.push(`**ID:** \`${legend.id}\``); lines.push(`*${legend.description}*`); if (legend.expertise.length > 0) { lines.push(`**Expertise:** ${legend.expertise.join(', ')}`); } if (legend.tags.length > 0) { lines.push(`**Tags:** ${legend.tags.join(', ')}`); } lines.push(''); } lines.push('---'); lines.push(''); lines.push('**Disclaimer:** These are AI personas for educational purposes. Not affiliated with real individuals.'); lines.push(''); lines.push('Use `summon_legend` with a legend ID to start a conversation.'); } return lines.join('\n'); }