hub.oscript.io
hub.oscript.io

autumn-mcpпакет

Библиотека для разработки mcp серверов на осеннем фреймворке

автор: Stanislav Kosolapovскачиваний: 444репозиторий: github.com/autumn-library/autumn-mcp

Пакет лежит в основном пуле хаба, а opm знает этот хаб по умолчанию: короткой формы достаточно.

opm install autumn-mcp

Скачанный файл ставится командой opm install -f <файл> — сеть для этого уже не нужна.

Описание

autumn-mcp

Библиотека для создания MCP-серверов на фреймворке ОСень.

На текущий момент поддерживается только stdio протокол и создание tools (prompts и resources не поддерживаются).

Пример использования

&ПараметрИнструмента(Имя = "number_1", Описание = "Число 1", Тип = "integer", Обязательный = Истина)
Перем Число1; // Число

&ПараметрИнструмента(Имя = "number_2", Описание = "Число 2", Тип = "integer", Обязательный = Истина)
Перем Число2; // Число

&Инструмент(Имя = "plus", Описание = "Складывает два числа")
Процедура ПриСозданииОбъекта()
		
КонецПроцедуры

&ВыполнениеИнструмента
Функция ВывестиРезультатСложения() Экспорт

	Возврат Число1 + Число2;
	
КонецФункции

Аннотация &Инструмент создаёт новый инструмент (tool) с соответствующим именем и описанием

Аннотация &ПараметрИнструмента добавляет параметр в inputSchema инструмента. Возможные параметры:

  • Имя - имя параметра в схеме. Можно не задавать - будет использоваться транслит
  • Описание - понятное для LLM описание параметра
  • Тип - тип переменной в формате json schema (string, integer, boolean, number и т.д.)
  • Формат - формат строковой переменной (например date)
  • ЭтоМассив - объявляет переменную массивом с элементами типа Тип
  • Обязательный - признак обязательности параметра

Аннотация &ВыполнениеИнструмента - указывает на функцию, которая будет выполняться при выполнении утилиты

Аннотации инструмента (annotations)

Инструмент может опционально объявить функцию АннотацииИнструмента(), возвращающую соответствие с хинтами протокола MCP (title, readOnlyHint, destructiveHint, idempotentHint, openWorldHint). Заполненный блок попадает в ответ tools/list как поле annotations — по нему MCP-клиент решает, например, спрашивать ли подтверждение перед вызовом. Инструменты без этого метода работают как прежде (блок не эмитится).

Функция АннотацииИнструмента() Экспорт
    Блок = Новый Соответствие();
    Блок.Вставить("title", "Сборка конфигурации");
    Блок.Вставить("readOnlyHint", Ложь);
    Блок.Вставить("destructiveHint", Истина);
    Возврат Блок;
КонецФункции

Подключение сервера

Добавляем в mcp.json новый сервер:

{
    "mcpServers": {
        "autumn-mcp": {
            "command": "oscript",
            "args": ["example/main.os"]
        }
    }
}

В пакете README нет — показан README из репозитория, с тега v1.1.2.