1N

1c-neurofish/onec-client-mcp-devkit

Developer tools
54 stars 0 forks Quality 60 Trend 60

Реализация MCP сервера (Model Context Protocol), который запускается внутри клиента 1С:Предприятие. Проект ориентирован на работу через внешнюю компоненту AddIn.WebTransport.

Overview

Реализация MCP сервера (Model Context Protocol), который запускается внутри клиента 1С:Предприятие. Проект ориентирован на работу через внешнюю компоненту AddIn.WebTransport.

README

1C Client MCP Server

Реализация MCP сервера (Model Context Protocol), который запускается внутри клиента 1С:Предприятие. Проект ориентирован на работу через внешнюю компоненту AddIn.WebTransport.mcp и обрабатывает MCP запросы по JSON-RPC.

[!CAUTION] Важно, проект еще не имеет стабильного релиза. Поэтому интерфейсы и внутренние API могут меняться.

Возможности

  • Запуск MCP сервера в клиентском контуре 1С:Предприятия.
  • Поддержка инструментов, ресурсов и промптов MCP.
  • Транспорт WebTransport MCP через внешнюю компоненту AddIn.WebTransport.mcp.
  • Реестр обработчиков и унифицированное логирование событий.
  • Форма управления MCP в составе расширения.

Запуск из командной строки 1С

MCP-сервер можно запустить сразу при старте клиента 1С через параметр /C:

/C"runMcp"
/C"runMcp=/tmp/mcp-conf.json"
/C"runMcp=/tmp/mcp-conf.json;mcpPort=123"

Если путь в runMcp заполнен, он читается как JSON-конфигурация. В JSON используются ключи port и timeout, а в строке /C - mcpPort; значение порта из /C имеет приоритет. Если порт не указан, используется 8080, если таймаут не указан - 900.

Минимальный JSON-конфиг:

{
  "port": 8080,
  "timeout": 900
}

Скриншоты

Пример инструмента

Пример регистрации и обработки инструмента сложения из exts/client-mcp/src/CommonModules/Мсп_ИнструментСложениеКлиент/Module.bsl.

Процедура ЗарегистрироватьИнструменты() Экспорт
	Мсп_РеестрКлиент.ЗарегистрироватьИнструмент(Мсп_ИнструментыКлиент.ОписаниеИнструмента(
		"math_add",
		"Складывает два числа.",
		СхемаВходныхПараметров(),
		Новый ОписаниеОповещения("ОбработатьИнструментСложение", Мсп_ИнструментСложениеКлиент)));
КонецПроцедуры

Функция ОбработатьИнструментСложение(Запрос, ДополнительныеПараметры) Экспорт
	Аргументы = Запрос.Аргументы;
	Возврат Аргументы.a + Аргументы.b;
КонецФункции

Структура репозитория

  • exts/client-mcp — исходники расширения 1С (EDT-формат).
  • tests — тестовая конфигурация на базе YAxUnit.
  • ARCHITECTURE.md — обзор архитектуры и взаимодействий компонентов.
  • docs/decisions — архитектурные решения (ADR).
  • docs/solution-invariants.md — инварианты решения, подтвержденные кодом и тестами.
  • docs/code-style.md — правила оформления BSL кода.

Архитектура

Схемы взаимодействия и детали слоев описаны в ARCHITECTURE.md.

View this README on GitHub

Install

This server does not publish a one-line install command.

Open the repository installation guide