ruTS-mcp
OfficialServer Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| logging | {} |
| prompts | {
"listChanged": true
} |
| resources | {
"subscribe": false,
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| analyze_textA | Измерить русский текст статистиками библиотеки ruTS. Используйте, чтобы получить точные числа о тексте, а не оценивать его на глаз. Считаются только запрошенные группы. Текст из файла передавайте через path, а не пересылайте целиком: так быстрее, и статистики считаются по исходному тексту. Группы статистик:
В результате по ключу на каждую запрошенную группу: статистика с ее значением "value", долей "share" или прочтением по шкале "interpretation", если они есть, и описанием "description" - что она считает; у маркеров канцелярита группы style еще число вхождений "count" и найденные слова и фразы "found". Значение null - статистика на этом тексте не определена. Ключ "warnings" - причины, по которым значения могут быть неустойчивы или не иметь смысла для этого текста: короткий текст, текст не на русском языке, не скачанные словари или модель (тогда предупреждение называет команду, которая их скачивает). Прочитайте предупреждения, прежде чем делать выводы. |
| kwicA | Найти все вхождения слова или словосочетания в тексте с контекстом (конкорданс KWIC). Используйте, чтобы увидеть, как слово употребляется в тексте, и цитировать точно. Слова сравниваются без учета регистра и буквы ё, с by_lemma - по леммам pymorphy3; словосочетание не переходит через конец предложения. В результате "n_matches" - число вхождений, "matches" - строки по порядку в тексте: контекст слева "left", вхождение "keyword", как оно записано в тексте, и контекст справа "right". Строки ограничены параметром limit и общим объемом ответа около 40 тысяч символов. Ключ "warnings" - предупреждения: текст не на русском языке, показаны не все вхождения. |
| collocationsA | Найти коллокации текста - пары слов, которые встречаются вместе чаще, чем случайно. Используйте для устойчивых сочетаний, терминологии и сочетаемости слова (параметр node). Пара упорядочена: правое слово стоит не дальше window слов после левого. Леммы pymorphy3 берутся без снятия омонимии. В результате "n_words" - число слов текста, "measure" - мера и как ее читать, "collocations" - пары по убыванию меры: левое слово "left", правое "right", их частоты "freq_left" и "freq_right", частота пары "freq_pair" и значение меры "score". freq_pair - число пар позиций, где правое слово стоит в окне после левого: слово, повторенное в окне, дает несколько пар, поэтому freq_pair бывает больше частоты слова, и такая пара - повтор, а не устойчивое сочетание. Ключ "warnings" - предупреждения: текст не на русском языке, слова node нет в тексте, пар с такой частотой нет. |
| dispersionA | Измерить, насколько равномерно слова распределены по тексту (дисперсия Гриса). Используйте, чтобы отличить слово, которое проходит через весь текст, от слова, сосредоточенного в одном месте: частота их не различает. Текст делится на parts частей примерно равного размера. В результате "n_words" - число слов текста, "words" - слова в порядке запроса или по убыванию частоты, с частотой "freq" и мерами дисперсии:
|
| keynessA | Найти ключевые слова текста - слова, которые в нем значимо чаще (или реже), чем в эталоне. Используйте, чтобы понять, чем лексика текста отличается от обычного языка (эталон по умолчанию - частотный словарь, его нужно скачать командой ruts-mcp download) или от другого текста (reference или reference_path). Слова сравниваются в нижнем регистре и с е вместо ё. Со словарем числа и слова с латиницей отбрасываются, а слово вне словаря получает его наименьшую частоту (freq_reference около 37): имена, термины и опечатки попадают в ключевые слова. Статьи словаря, которые лемматизатор не дает (его, ее, их, во, со), в слова, которые чаще в эталоне, не попадают: в тексте эти формы относятся к другим леммам (он, она, они, в, с). В результате "n_words" - число слов текста, которые сравниваются с эталоном, "reference" - эталон, "measure" - мера сортировки и как ее читать, "keywords" - слова по убыванию меры: частота в тексте "freq_target" и в эталоне "freq_reference", они же на миллион слов "ipm_target" и "ipm_reference", логарифм правдоподобия "g2" (значимость, со знаком минус - слово чаще в эталоне) с p-значением "p_value", Log Ratio "log_ratio" (размер эффекта; при нулевой частоте в эталоне - оценка с поправкой 0,5, бывает меньше 0) и значение меры "score". p_value не поправлено на число проверенных слов: надежнее p < 0,0001 (g2 от 15,13). Ключ "warnings" - предупреждения: текст не на русском языке, ключевых слов нет. |
| compare_textsA | Сравнить два корпуса текстов по признакам стиля и найти, чем они различаются сильнее всего. Используйте для атрибуции авторства, сравнения жанров, переводов, текстов человека и модели. Тексты режутся подряд на окна ровно по window слов (whole_texts - тексты целиком), у каждого окна считаются около 150 признаков ruTS, и распределения признака в корпусах A и B сравниваются. Остаток текста короче окна и текст короче окна отбрасываются: ответ предупреждает о таких текстах и о потере больше 10 % слов корпуса на остатках. Для сравнения нужно хотя бы по два окна в каждом корпусе. Тексты из файлов передавайте через a_paths и b_paths. Признаки по префиксам: basic_ - доли длинных, сложных, одно- и многосложных слов, букв, пробелов и знаков, буквы и слоги на слово; readability_ - формулы удобочитаемости; diversity_ - меры лексического разнообразия; morph_ - доли частей речи, отрицаний и кратких форм от слов (morph_pos_NOUN, morph_polarity_Neg, morph_style_variant_Short) и значений остальных признаков внутри признака (morph_case_Gen, morph_tense_Past); sents_ - средняя длина предложения в словах, ее стандартное отклонение, коэффициент вариации и автокорреляция соседних длин; punct_ - знаки по типам на 1000 слов и доля буквы ё; cohesion_ - статистики связности: повторы между предложениями, местоимения, данность, повтор времени и вида, коннекторы на 1000 слов. В результате "window" - размер окна (null - тексты целиком), "n_windows" и "n_texts" - число окон и текстов в A и B, "features" - признаки по убыванию модуля дельты Клиффа, при равной дельте - по относительной разности медиан: средние по окнам "mean_a" и "mean_b", разность медиан A - B "median_diff" с 95% бутстрэп-интервалом "ci_low" - "ci_high", дельта Клиффа "cliff_delta" (от -1 до 1: доля пар окон, где в A больше, минус доля, где меньше; по модулю от 0,147 - малый, от 0,33 - средний, от 0,474 - большой эффект, Romano и др. 2006) и p-значение U-критерия Манна-Уитни с поправкой Холма на число признаков "p_holm". Окна одного текста не независимы: p_holm считает их независимыми и занижено, если текстов в корпусе мало, а бутстрэп-интервал берет целые тексты и при одном тексте в корпусе не определен. Ключ "warnings" - предупреждения: корпус не на русском языке, тексты корпусов разной длины при whole_texts, тексты или их остатки не вошли в сравнение, в корпусе один текст, ни одно различие не значимо. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| readability_review | Оценить, для какого читателя написан текст, и предложить, как его упростить. |
| officialese_review | Найти в тексте канцелярит и предложить живые замены. |
| verse_review | Разобрать стихотворение: метр, рифму, окончания строк и звукопись. |
| seo_review | Проверить текст для сайта по SEO-метрикам и найти его ключевые слова. |
| compare_review | Сравнить два текста по стилю и лексике. |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| readability_scales | Классы и возраст читателя для формул класса, полосы индекса Флеша и LIX, классы RIX |
| style_norms | Нормы SEO-сервисов для тошноты, водности, заспамленности и естественности по Ципфу |
| data_status | Каталог данных и состояние словарей и модели spaCy: что скачано и как скачать |
TDQS
Scored across 6 tools
Each tool targets a clearly distinct analytical operation: collocations, general statistics, concordance, dispersion, keyness, and corpus comparison. The descriptions explicitly separate analyze_text from keyness and compare_texts, so an agent can select the right tool without overlap confusion.
The names mix noun-only labels (collocations, dispersion, keyness), verb_noun patterns (analyze_text, compare_texts), and an acronym (kwic). They remain readable and domain-appropriate, but there is no predictable convention across the set.
Six tools is well within the appropriate range and each tool earns its place by covering a distinct text-analytic operation. The broad analyze_text tool aggregates many statistic groups internally rather than inflating the external tool count.
The surface covers most major ruTS analyses, including general statistics, collocations, concordance, dispersion, keyness, and corpus comparison. A minor gap is the lack of a tool for downloading or managing the dictionaries/models that several tools require, though the descriptions point to an external setup command.