Результат: вы направите на этот язык ассистента, который умеет получить URL или запускать инструменты.
Что нужно знать: для первого раздела ничего. Серверу MCP нужен инструментарий, установленный так, как описано в разделе Первая программа.
Начните с одного запроса
Для ассистента, который может получить URL, но не имеет настроенных инструментов, самый доступный общий интерфейс — один самодостаточный файл.
https://topaz.ooo/agents.mdВ нём есть строение файла, формы, граница хоста и профиля продукта, а также особенно важный для модели, уже знающей другие языки, перечень несуществующих форм. Он предостерегает от Vec<T>, async, try, синтаксиса классов и использования null как универсального отсутствия, сохраняя при этом поддерживаемую форму границы данных T | null. Такие явные различия не дают уверенной догадке превратиться в неверный исходный код.
Рядом с ним есть ещё две машинные поверхности. https://topaz.ooo/llms.txt содержит указатель всех актуальных страниц, а https://topaz.ooo/version.json сообщает, какая версия отвечает.
Если вы настраиваете ассистента для кого-то другого, выдать ему этот один URL и есть вся настройка.
Какую задачу решают инструменты
Загрузка файла приводит ассистента к правильным формам. Она не говорит, компилируется ли на самом деле программа, которую он только что написал.
Ассистент, пишущий на незнакомом языке, делает одно из двух. Либо читает документацию и угадывает, либо пишет, получает точное указание на ошибку и исправляет её. Второй цикл даёт работающий код даже при скудной документации. Первый даёт уверенный текст, который не компилируется. Один только справочник оставляет ассистента в первом цикле. Проверяющий инструмент переводит его во второй.
Три подготовленных инструмента
| Инструмент | На какой вопрос отвечает |
|---|---|
topaz_spec | Какова точная форма для этой части языка? |
topaz_examples | Покажи проверенный код для этого понятия. |
topaz_check | Правильно ли то, что я только что написал, и если нет, то где именно? |
Именно topaz_check задуман как инструмент, меняющий результат. Подготовленный нативный пакет без изменений возвращает диагностику компилятора, её код и позицию в исходном коде, а также точно указывает установленный инструментарий и выбранный компилятор. Ассистент сможет исправлять результат по точным данным, а не по пересказу.
Почему инструмента выполнения пока нет
Топаз направляет наблюдаемые эффекты через границу хоста или профиля продукта. Это упрощает создание хоста без возможностей, но не превращает обычный нативный CLI в песочницу: нативное выполнение может предоставлять файловые операции и ввод-вывод.
Поэтому topaz_run пока не предоставляется. До его выпуска нужны два независимых барьера: проверенный хост Топаза без возможностей и песочница операционной системы, которая запрещает сеть и дочерние процессы и открывает только временный присланный исходник. Обычный неограниченный topaz run не подходит в качестве серверной границы.
Изоляция сама по себе не ограничивает ресурсы. Присланная программа может крутиться, выделять память или печатать без конца, поэтому каждому запуску нужны пределы реального времени, памяти и вывода, а после него не должно оставаться дочерних процессов.
Три инструмента не выполняют присланные программы. Для проверки ограниченный по размеру исходный код каждый раз передаётся только через стандартный ввод новому процессу языкового сервера, не сохраняется и не журналируется; состояние документа между вызовами не остаётся.
Дескриптор для машинного чтения
Клиенты и поисковые роботы могут прочитать описание сервера напрямую.
https://topaz.ooo/mcp.jsonТам в структурированном виде перечислены три реализованных инструмента, их входные данные, точная команда отдельного нативного дистрибутива, версия языка и граница безопасности только для проверки. Там же topaz_run отмечен как недоступный и названа отсутствующая граница изоляции.
Текущее состояние
Статус дескриптора остаётся "planned". Нативный пакет с тремя инструментами подготовлен, но ещё не опубликован. Полный сервер выйдет только после появления обеих границ изоляции для выполнения и проверки удобства: ассистент без прежнего знакомства с языком, получив только сервер, со второй попытки проверяет и запускает небольшую программу.
Готовы двигаться дальше, если
Вы можете сказать, на какой вопрос отвечает каждый из трёх подготовленных инструментов, почему topaz_run отсутствует и зачем будущему выполнению нужны и граница хоста языка, и независимая изоляция операционной системы и ресурсов.
О том, до чего программа может и не может дотянуться, читайте в разделе Границы интеграции. Формы, которые будет искать ассистент, собраны в разделе Краткий обзор синтаксиса.