Skip to main content
Glama

Сопоставление полей Битрикс24

manage_quiz_crm_mapping

Сопоставление полей опроса с полями Bitrix24: «пусть телефон из опроса попадает в телефон лида». Задаётся по одной сущности за вызов — lead, contact, company или deal — и заменяет её целиком: чего в переданном наборе нет, того в сопоставлении не останется, остальные сущности вызов не трогает. Прежде чем править, посмотрите справочники и текущее сопоставление через get_quiz_crm_fields: имена полей берутся оттуда, а идентификаторы вопросов — из quiz://{id}/structure. Стадия принадлежит воронке, и несовместимую сохранить нельзя. amoCRM этим инструментом не настраивается: там сопоставление задаётся по воронкам, это делают в кабинете.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
entityYesЧто настраиваем: lead — лид, contact — контакт, company — компания, deal — сделка.
fieldsNoСопоставление: ключ — имя поля Bitrix24 из справочника (TITLE, PHONE, UF_CRM_…), значение — откуда брать. Набор заменяется целиком.
statusNoСтатус лида (STATUS_ID) из справочника. Только для lead.
enabledNoОтправлять ли эту сущность вообще. Без неё сущность не создаётся. Незаданное значение остаётся прежним.
quiz_idYesID опроса.
title_typeNoОткуда берётся название: Field — из ответа на вопрос, Static — заданный текст.
category_idNoНомер воронки сделки. 0 — воронка по умолчанию. Только для deal.
title_valueNoСамо название: при Field это ID вопроса, при Static — текст. Если название собрать не удалось, Bitrix24 подставит «Lead #номер» или «Deal #номер».
link_to_leadNoПривязать сделку к созданному лиду. Только для deal.
default_stageNoСтадия сделки. У воронки по умолчанию не начинается с «C», у воронки N обязана начинаться с «CN:». Только для deal.
add_id_to_titleNoДописывать номер заявки в название. Только для lead.
company_title_valueNoТо же для названия компании. Для lead и company.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare the mutation profile (readOnlyHint=false, idempotentHint=false), so the bar is lower, but the description adds material context beyond them: the set is replaced wholesale («чего в переданном наборе нет, того в сопоставлении не останется»), other entities are untouched, and an incompatible stage cannot be saved. The replacement semantics sits uneasily with destructiveHint=false, though it is config-level overwrite rather than data destruction, so this is tension rather than a flat contradiction.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The paragraph is dense but front-loaded: purpose and example first, then the destructive-replace rule, then prerequisites, then the amoCRM carve-out. Nearly every sentence carries a distinct constraint, though the density means key rules are not visually separated.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 12-parameter mutation tool with nested objects and no output schema, the description covers the essential behavior: replace semantics, single-entity scope, prerequisite lookups, and validation limits. It does not describe the success response, but with no output schema the agent mainly needs to know the write semantics, which are covered.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3; the description still adds value by telling the agent where field names come from (the справочник via get_quiz_crm_fields) and where question IDs come from (quiz://{id}/structure), plus the «Lead #номер»/«Deal #номер» fallback naming. These operational hints go beyond the per-parameter schema text.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb+resource with a concrete example («пусть телефон из опроса попадает в телефон лида») and names the boundary explicitly: mapping quiz fields onto Bitrix24 entity fields, one entity per call. It also distinguishes itself from the sibling manage_quiz_amocrm_mapping by stating amoCRM is not configured here, so an agent can route correctly without opening either schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It states when to use it (editing CRM mapping for a specific entity), names the read-first alternative get_quiz_crm_fields for reference data and current mapping, and gives the exclusion for amoCRM (per-pipeline mapping done in the cabinet). The one-entity-per-call constraint is stated up front, leaving little to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources