iFreeWork — public content

iFreeWork services, portfolio, blog, search, contacts and consent-gated messages.

사용해야 할까요

품질 및 안전성

A
설명 품질
86%
스키마 완전성
83%
이름 품질
100%
오염 위험
100%
권한 일치
100%
프로토콜 준수
100%

발견 사항 (4)

  • LOWTool 'get_about' description lacks action verbget_about에서
  • LOWTool 'list_services' description lacks action verblist_services에서
  • LOWTool 'get_service' description lacks action verbget_service에서
  • LOWTool 'get_portfolio_item' description lacks action verbget_portfolio_item에서

도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.

컨텍스트 비용

~1,714토큰 (도구 정의)
~1.2 KB일반적인 응답 크기
중간 정도의 주의 영향 (128k 컨텍스트의 1.34%)

이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.

설치

원클릭 설치

`claude_desktop_config.json` 파일에 다음을 추가하세요:

{
  "mcpServers": {
    "content": {
      "url": "https://ifreework.com/mcp"
    }
  }
}

원격 엔드포인트

https://ifreework.com/mcpstreamable-http

할 수 있는 일

도구 목록

도구 (10)

🟢 읽기 전용🟡 쓰기🔴 삭제⚪ 알 수 없음
🟢get_about(lang)

About page: who Andrey Zubar is, experience, stack and how he works. / Страница «О себе».

입력 스키마

{
  "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). / Список услуг.

입력 스키마

{
  "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. / Полный текст услуги.

입력 스키마

{
  "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. / Работы из портфолио.

입력 스키마

{
  "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. / Полное описание работы.

입력 스키마

{
  "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. / Статьи блога.

입력 스키마

{
  "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. / Полный текст статьи.

입력 스키마

{
  "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 и почта.

입력 스키마

{
  "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. / Отправить сообщение владельцу как через форму на главной; только с согласия пользователя.

입력 스키마

{
  "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. / Поиск по сайту.

입력 스키마

{
  "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
}

커뮤니티

이 서버 평가하기

증거

최근 관측

검증됨버전이 기록되지 않음도구 10개