{"server":"com.ifreework/content","count":10,"tools":[{"name":"get_about","title":"About the developer","description":"About page: who Andrey Zubar is, experience, stack and how he works. / Страница «О себе».","input_schema":{"type":"object","properties":{"lang":{"enum":["ru","en"],"type":"string","default":"ru","description":"Content language: ru (default) or en. English exists only for translated pages."}},"additionalProperties":false},"output_schema":null,"annotations":{"readOnlyHint":true,"openWorldHint":false,"idempotentHint":true,"destructiveHint":false},"source":"probe","observed_at":"2026-10-19T17:43:58.091Z"},{"name":"get_blog_post","title":"Get a blog post","description":"Full text of one blog article as Markdown. Pass id, slug or url. / Полный текст статьи.","input_schema":{"type":"object","properties":{"id":{"type":"integer","minimum":1,"description":"Document id from a list result."},"url":{"type":"string","maxLength":500,"description":"Canonical page URL or path from a list result."},"lang":{"enum":["ru","en"],"type":"string","default":"ru","description":"Content language: ru (default) or en. English exists only for translated pages."},"slug":{"type":"string","maxLength":200,"description":"URL slug (alias) from a list result."}},"additionalProperties":false},"output_schema":null,"annotations":{"readOnlyHint":true,"openWorldHint":false,"idempotentHint":true,"destructiveHint":false},"source":"probe","observed_at":"2026-10-19T17:43:58.091Z"},{"name":"get_contact","title":"Contact details","description":"Telegram and e-mail of the developer and how to send a message. / Контакты: Telegram и почта.","input_schema":{"type":"object","properties":{},"additionalProperties":false},"output_schema":null,"annotations":{"readOnlyHint":true,"openWorldHint":false,"idempotentHint":true,"destructiveHint":false},"source":"probe","observed_at":"2026-10-19T17:43:58.091Z"},{"name":"get_portfolio_item","title":"Get a portfolio project","description":"Full case description of one project as Markdown. Pass id, slug or url. / Полное описание работы.","input_schema":{"type":"object","properties":{"id":{"type":"integer","minimum":1,"description":"Document id from a list result."},"url":{"type":"string","maxLength":500,"description":"Canonical page URL or path from a list result."},"lang":{"enum":["ru","en"],"type":"string","default":"ru","description":"Content language: ru (default) or en. English exists only for translated pages."},"slug":{"type":"string","maxLength":200,"description":"URL slug (alias) from a list result."}},"additionalProperties":false},"output_schema":null,"annotations":{"readOnlyHint":true,"openWorldHint":false,"idempotentHint":true,"destructiveHint":false},"source":"probe","observed_at":"2026-10-19T17:43:58.091Z"},{"name":"get_service","title":"Get a service page","description":"Full text of one service page as Markdown. Pass id, slug or url. / Полный текст услуги.","input_schema":{"type":"object","properties":{"id":{"type":"integer","minimum":1,"description":"Document id from a list result."},"url":{"type":"string","maxLength":500,"description":"Canonical page URL or path from a list result."},"lang":{"enum":["ru","en"],"type":"string","default":"ru","description":"Content language: ru (default) or en. English exists only for translated pages."},"slug":{"type":"string","maxLength":200,"description":"URL slug (alias) from a list result."}},"additionalProperties":false},"output_schema":null,"annotations":{"readOnlyHint":true,"openWorldHint":false,"idempotentHint":true,"destructiveHint":false},"source":"probe","observed_at":"2026-10-19T17:43:58.091Z"},{"name":"list_blog_posts","title":"List blog posts","description":"Blog articles, newest first; filter by category; paginated. / Статьи блога.","input_schema":{"type":"object","properties":{"lang":{"enum":["ru","en"],"type":"string","default":"ru","description":"Content language: ru (default) or en. English exists only for translated pages."},"page":{"type":"integer","default":1,"minimum":1},"category":{"type":"string","maxLength":200},"per_page":{"type":"integer","default":20,"maximum":50,"minimum":1}},"additionalProperties":false},"output_schema":null,"annotations":{"readOnlyHint":true,"openWorldHint":false,"idempotentHint":true,"destructiveHint":false},"source":"probe","observed_at":"2026-10-19T17:43:58.091Z"},{"name":"list_portfolio","title":"List portfolio projects","description":"Completed portfolio projects with category, tags and summary; filter by category slug/title or tag; paginated. / Работы из портфолио.","input_schema":{"type":"object","properties":{"tag":{"type":"string","maxLength":100},"lang":{"enum":["ru","en"],"type":"string","default":"ru","description":"Content language: ru (default) or en. English exists only for translated pages."},"page":{"type":"integer","default":1,"minimum":1},"category":{"type":"string","maxLength":200,"description":"Category id, slug or title (see categories in the result)."},"per_page":{"type":"integer","default":20,"maximum":50,"minimum":1}},"additionalProperties":false},"output_schema":null,"annotations":{"readOnlyHint":true,"openWorldHint":false,"idempotentHint":true,"destructiveHint":false},"source":"probe","observed_at":"2026-10-19T17:43:58.091Z"},{"name":"list_services","title":"List services","description":"Services offered (AI agents and RAG, Telegram bots, CRM, Laravel backend, integrations, security, crypto). / Список услуг.","input_schema":{"type":"object","properties":{"lang":{"enum":["ru","en"],"type":"string","default":"ru","description":"Content language: ru (default) or en. English exists only for translated pages."}},"additionalProperties":false},"output_schema":null,"annotations":{"readOnlyHint":true,"openWorldHint":false,"idempotentHint":true,"destructiveHint":false},"source":"probe","observed_at":"2026-10-19T17:43:58.091Z"},{"name":"search_content","title":"Search site content","description":"Keyword search across About, Services, Portfolio and Blog; returns ranked pages with snippets and urls. / Поиск по сайту.","input_schema":{"type":"object","required":["query"],"properties":{"lang":{"enum":["ru","en"],"type":"string","default":"ru","description":"Content language: ru (default) or en. English exists only for translated pages."},"limit":{"type":"integer","default":8,"maximum":20,"minimum":1},"query":{"type":"string","maxLength":200,"minLength":2,"description":"Words to look for."},"sections":{"type":"array","items":{"enum":["about","services","portfolio","blog"],"type":"string"},"description":"Limit to these sections; default all."}},"additionalProperties":false},"output_schema":null,"annotations":{"readOnlyHint":true,"openWorldHint":false,"idempotentHint":true,"destructiveHint":false},"source":"probe","observed_at":"2026-10-19T17:43:58.091Z"},{"name":"send_message","title":"Send a message to the owner","description":"Delivers a message to Andrey Zubar through the same mechanism as the contact form on the home page. Requires the human user's approval of the exact text and reply-to e-mail (confirmed_by_user=true). Rate limited; duplicates are not sent twice. / Отправить сообщение владельцу как через форму на главной; только с согласия пользователя.","input_schema":{"type":"object","required":["email","message","confirmed_by_user"],"properties":{"name":{"type":"string","maxLength":100,"description":"Optional sender name."},"email":{"type":"string","format":"email","maxLength":254,"description":"Where the owner should reply. Must belong to the human user who approved the message."},"message":{"type":"string","maxLength":4000,"minLength":10,"description":"The request: what is needed, context, budget or deadlines if known. Plain text, up to 3 links."},"request_id":{"type":"string","pattern":"^[a-f0-9-]{36}$","description":"Optional lowercase UUID to make retries idempotent."},"confirmed_by_user":{"type":"boolean","description":"Must be true: the human user reviewed and approved this exact text and email."}},"additionalProperties":false},"output_schema":null,"annotations":{"readOnlyHint":false,"openWorldHint":true,"idempotentHint":true,"destructiveHint":false},"source":"probe","observed_at":"2026-10-19T17:43:58.091Z"}],"next_cursor":null,"next_actions":[{"action":"get_connection","description":"Connection block to call these tools","href":"/v1/servers/com.ifreework%2Fcontent/connection?target=mcpServers","arguments":{"name":"com.ifreework/content","target":"mcpServers"}},{"action":"get_server","description":"Full descriptor with trust and connectability","href":"/v1/servers/com.ifreework%2Fcontent","arguments":{"name":"com.ifreework/content"}}]}