get_social_links
Retrieve all Echo3s links including website, blog posts, landing pages, and contact information.
Instructions
Get all Echo3s links — website, blog posts, landing pages, and contact information
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Implementation Reference
- src/content.ts:620-689 (schema)The `socialLinks` constant contains the data payload for the get_social_links tool — includes website URLs, blog posts, landing pages, and audiobook categories.
const socialLinks = { links: { website: "https://echo3s.io", author_portal: "https://author.echo3s.io", pricing: "https://echo3s.io/pricing", blog: "https://echo3s.io/blog", about: "https://echo3s.io/about", email: "hello@echo3s.io", }, blog_posts: [ { title: "How to Convert PDF to Audiobook with AI", url: "https://echo3s.io/blog/how-to-convert-pdf-to-audiobook-with-ai", }, { title: "5 Best AI Tools to Convert PDF to Audiobook in 2026", url: "https://echo3s.io/blog/best-ai-tools-convert-pdf-to-audiobook-2026", }, { title: "How to Convert Any Book to Audiobook Using AI", url: "https://echo3s.io/blog/convert-book-to-audiobook-ai", }, { title: "Echo3s vs ElevenLabs vs Speechify: Full Comparison", url: "https://echo3s.io/blog/echo3s-vs-elevenlabs-vs-speechify-comparison", }, { title: "The Complete Guide to AI Audiobook Generation in 2026", url: "https://echo3s.io/blog/complete-guide-ai-audiobook-generation-2026", }, { title: "How I Built a SaaS in 3 Months with Claude AI", url: "https://echo3s.io/blog/how-i-built-saas-3-months-claude-ai", }, ], landing_pages: [ { title: "PDF to Audiobook", url: "https://echo3s.io/pdf-to-audiobook", keyword: "pdf to audiobook", }, { title: "Book to Audiobook Converter", url: "https://echo3s.io/book-to-audiobook", keyword: "book to audiobook", }, { title: "AI Audiobook Generator", url: "https://echo3s.io/ai-audiobook-generator", keyword: "ai audiobook generator", }, { title: "Convert Ebook to Audiobook", url: "https://echo3s.io/convert-ebook-to-audiobook", keyword: "ebook to audiobook", }, ], audiobook_categories: [ "Fiction", "Non-Fiction", "Self-Help", "Business", "Science", "Biography", "Technology", "History", "Philosophy", "Poetry", ], }; - src/content.ts:1031-1037 (registration)The tool 'get_social_links' is registered in the TOOL_DEFS array with its name, description, empty inputSchema, and a content function that returns the socialLinks data.
{ name: "get_social_links", description: "Get all Echo3s links — website, blog posts, landing pages, and contact information", inputSchema: { type: "object", properties: {}, required: [] }, content: () => socialLinks, }, - src/index.ts:13-21 (handler)The stdio server iterates TOOL_DEFS and registers each tool (including get_social_links) via server.tool(), with the handler serializing the content() result to JSON.
for (const tool of TOOL_DEFS) { server.tool(tool.name, tool.description, {}, async () => ({ content: [ { type: "text" as const, text: JSON.stringify(tool.content(), null, 2), }, ], })); - src/worker.ts:22-27 (handler)The Cloudflare Worker registers tools from TOOL_DEFS into a TOOLS record, wrapping each in a defToWorkerTool handler that stringifies the content() result.
const TOOLS: Record<string, WorkerToolDef> = {}; for (const def of TOOL_DEFS) { TOOLS[def.name] = defToWorkerTool(def); } TOOLS[CALCULATE_COST_DEF.name] = defToWorkerTool(CALCULATE_COST_DEF);