iFreeWork — public content
iFreeWork services, portfolio, blog, search, contacts and consent-gated messages.
¿Debería usar esto?
Calidad y seguridad
Hallazgos (4)
- LOWen get_about
- LOWen list_services
- LOWen get_service
- LOWen get_portfolio_item
Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.
Costo de contexto
Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.
Instalar
Instalación con un clic
Agrega esto a tu archivo `claude_desktop_config.json`:
{
"mcpServers": {
"content": {
"url": "https://ifreework.com/mcp"
}
}
}Puntos de conexión remotos
https://ifreework.com/mcpstreamable-httpQué puede hacer
Inventario de herramientas
Herramientas (10)
🟢get_about(lang)
About page: who Andrey Zubar is, experience, stack and how he works. / Страница «О себе».
Esquema de entrada
{
"type": "object",
"properties": {
"lang": {
"type": "string",
"enum": [
"ru",
"en"
],
"default": "ru",
"description": "Content language: ru (default) or en. English exists only for translated pages."
}
},
"additionalProperties": false
}🟢list_services(lang)
Services offered (AI agents and RAG, Telegram bots, CRM, Laravel backend, integrations, security, crypto). / Список услуг.
Esquema de entrada
{
"type": "object",
"properties": {
"lang": {
"type": "string",
"enum": [
"ru",
"en"
],
"default": "ru",
"description": "Content language: ru (default) or en. English exists only for translated pages."
}
},
"additionalProperties": false
}🟢get_service(id, slug, url, lang)
Full text of one service page as Markdown. Pass id, slug or url. / Полный текст услуги.
Esquema de entrada
{
"type": "object",
"properties": {
"id": {
"type": "integer",
"minimum": 1,
"description": "Document id from a list result."
},
"slug": {
"type": "string",
"maxLength": 200,
"description": "URL slug (alias) from a list result."
},
"url": {
"type": "string",
"maxLength": 500,
"description": "Canonical page URL or path from a list result."
},
"lang": {
"type": "string",
"enum": [
"ru",
"en"
],
"default": "ru",
"description": "Content language: ru (default) or en. English exists only for translated pages."
}
},
"additionalProperties": false
}🟢list_portfolio(lang, category, tag, page, per_page)
Completed portfolio projects with category, tags and summary; filter by category slug/title or tag; paginated. / Работы из портфолио.
Esquema de entrada
{
"type": "object",
"properties": {
"lang": {
"type": "string",
"enum": [
"ru",
"en"
],
"default": "ru",
"description": "Content language: ru (default) or en. English exists only for translated pages."
},
"category": {
"type": "string",
"maxLength": 200,
"description": "Category id, slug or title (see categories in the result)."
},
"tag": {
"type": "string",
"maxLength": 100
},
"page": {
"type": "integer",
"minimum": 1,
"default": 1
},
"per_page": {
"type": "integer",
"minimum": 1,
"maximum": 50,
"default": 20
}
},
"additionalProperties": false
}🟢get_portfolio_item(id, slug, url, lang)
Full case description of one project as Markdown. Pass id, slug or url. / Полное описание работы.
Esquema de entrada
{
"type": "object",
"properties": {
"id": {
"type": "integer",
"minimum": 1,
"description": "Document id from a list result."
},
"slug": {
"type": "string",
"maxLength": 200,
"description": "URL slug (alias) from a list result."
},
"url": {
"type": "string",
"maxLength": 500,
"description": "Canonical page URL or path from a list result."
},
"lang": {
"type": "string",
"enum": [
"ru",
"en"
],
"default": "ru",
"description": "Content language: ru (default) or en. English exists only for translated pages."
}
},
"additionalProperties": false
}🟢list_blog_posts(lang, category, page, per_page)
Blog articles, newest first; filter by category; paginated. / Статьи блога.
Esquema de entrada
{
"type": "object",
"properties": {
"lang": {
"type": "string",
"enum": [
"ru",
"en"
],
"default": "ru",
"description": "Content language: ru (default) or en. English exists only for translated pages."
},
"category": {
"type": "string",
"maxLength": 200
},
"page": {
"type": "integer",
"minimum": 1,
"default": 1
},
"per_page": {
"type": "integer",
"minimum": 1,
"maximum": 50,
"default": 20
}
},
"additionalProperties": false
}🟢get_blog_post(id, slug, url, lang)
Full text of one blog article as Markdown. Pass id, slug or url. / Полный текст статьи.
Esquema de entrada
{
"type": "object",
"properties": {
"id": {
"type": "integer",
"minimum": 1,
"description": "Document id from a list result."
},
"slug": {
"type": "string",
"maxLength": 200,
"description": "URL slug (alias) from a list result."
},
"url": {
"type": "string",
"maxLength": 500,
"description": "Canonical page URL or path from a list result."
},
"lang": {
"type": "string",
"enum": [
"ru",
"en"
],
"default": "ru",
"description": "Content language: ru (default) or en. English exists only for translated pages."
}
},
"additionalProperties": false
}🟢get_contact
Telegram and e-mail of the developer and how to send a message. / Контакты: Telegram и почта.
Esquema de entrada
{
"type": "object",
"properties": {},
"additionalProperties": false
}🟡send_message(email, message, name, confirmed_by_user, request_id)
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. / Отправить сообщение владельцу как через форму на главной; только с согласия пользователя.
Esquema de entrada
{
"type": "object",
"properties": {
"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",
"minLength": 10,
"maxLength": 4000,
"description": "The request: what is needed, context, budget or deadlines if known. Plain text, up to 3 links."
},
"name": {
"type": "string",
"maxLength": 100,
"description": "Optional sender name."
},
"confirmed_by_user": {
"type": "boolean",
"description": "Must be true: the human user reviewed and approved this exact text and email."
},
"request_id": {
"type": "string",
"pattern": "^[a-f0-9-]{36}$",
"description": "Optional lowercase UUID to make retries idempotent."
}
},
"required": [
"email",
"message",
"confirmed_by_user"
],
"additionalProperties": false
}🟢search_content(query, lang, sections, limit)
Keyword search across About, Services, Portfolio and Blog; returns ranked pages with snippets and urls. / Поиск по сайту.
Esquema de entrada
{
"type": "object",
"properties": {
"query": {
"type": "string",
"minLength": 2,
"maxLength": 200,
"description": "Words to look for."
},
"lang": {
"type": "string",
"enum": [
"ru",
"en"
],
"default": "ru",
"description": "Content language: ru (default) or en. English exists only for translated pages."
},
"sections": {
"type": "array",
"items": {
"type": "string",
"enum": [
"about",
"services",
"portfolio",
"blog"
]
},
"description": "Limit to these sections; default all."
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 20,
"default": 8
}
},
"required": [
"query"
],
"additionalProperties": false
}Comunidad
Evidencia