Read-only FastMCP wrapper for the BSL (1С) search API. Helps find methods and implementation examples in 1С code repositories and documentation.
Three tools with comprehensive, LLM-optimized descriptions (200-400 chars each) and detailed parameter annotations. All tools have proper JSON Schema with type constraints, enums, and ranges. Tool names follow verb_noun pattern (search_*, get_*). Descriptions include WHEN/WHY/WHAT guidance and examples. However, output schemas are documented only in prose within descriptions, not as formal JSON Schema objects. No explicit error handling guidance or recovery paths. Annotations present (readOnlyHint=true) but limited. Composition is sound, tools chain logically (search → get_method). Naming is clear and distinguishes tools well.
Возвращает ПОЛНЫЙ исходный код одного метода 1С по его id. КОГДА ИСПОЛЬЗОВАТЬ: - search_bsl уже нашёл подходящий метод, и нужно увидеть его код целиком (поле "body" в поиске обрезано). - Нужно точно прочитать сигнатуру, параметры и реализацию перед тем, как писать/адаптировать код. ОТКУДА ВЗЯТЬ method_id: Вызови search_bsl, возьми у нужного элемента поле "id" и передай его сюда как method_id. НЕ придумывай id сам и НЕ передавай сюда имя метода. ЧТО ВЕРНЁТ: {"found": true, "result": {...}} с полями "name", "params", "doc", "body" (полный код), "repo", "module_type". Если метод не найден: {"found": false, "id": "..."}.
Ищет методы и функции 1С (BSL) по коду и документации. ГЛАВНЫЙ инструмент. КОГДА ИСПОЛЬЗОВАТЬ: - Нужно найти готовую реализацию: "как сделать X в 1С" -> ищи методы, которые это делают. - Нужно узнать точное имя/сигнатуру метода по смыслу задачи. - Нужны примеры кода из реальных конфигураций и статьи (ИТС/Habr) по теме. НЕ ИСПОЛЬЗОВАТЬ: - Чтобы получить полный код метода по уже известному id -> используй get_bsl_method. - Чтобы найти метод по точному имени -> удобнее search_bsl_by_signature. ЧТО ВЕРНЁТ: Объект {"total": <число совпадений>, "results": [ ... ]}. В каждом элементе results самое полезное: "display_name" (имя метода или заголовок статьи), "source_type" ("code" — код, "its"/"habr" — статья), "id" (нужен для get_bsl_method), "name", "params", "doc", "body" (тело метода), "repo", "is_bsp".
Ищет методы по ТОЧНОМУ или почти точному ИМЕНИ метода (+ необязательные параметры). КОГДА ИСПОЛЬЗОВАТЬ: - Ты уже знаешь или почти знаешь имя метода 1С и хочешь найти его и похожие. - Нужно найти методы по сигнатуре, например "метод с именем ПоискКонтрагента". НЕ ИСПОЛЬЗОВАТЬ: - Если имя неизвестно и задача описана словами -> используй search_bsl. ЧТО ВЕРНЁТ: То же, что search_bsl: {"total": ..., "results": [...]} отсортировано по релевантности. У точного совпадения имени результат будет первым.
Output schemas documented only in prose descriptions, not as formal JSON Schema. LLMs cannot parse field types/constraints from text alone.
No error handling guidance. Descriptions do not explain what to do if search returns no results, API times out, or method_id is invalid.
No pagination guidance in search_bsl output description. Unclear if 'total' field indicates more results exist or if agent should retry with higher limit.
Parameter 'filters' is optional dict with undocumented structure. LLMs may pass invalid filter keys. Should validate and return clear error messages.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 56 | 2026-07-28+ | v2 |
STDIO transport only, not remotely accessible. Cannot be used by hosted MCP clients or cloud-based agents.