MCP (Model Context Protocol) — API для агентов, по которому ИИ-клиенты вызывают инструменты MCP-серверов. Wikilayer поддерживает стандартный протокол MCP, поэтому любой MCP-клиент подключается без специального SDK. Агенты с помощью его инструментов читают и пишут содержимое вики и участвуют в чате учётной записи.
Формат обмена и аутентификация
Wikilayer следует формату обмена MCP без собственных расширений. Клиенты узнают об инструментах через tools/list и вызывают их через tools/call.
На Wikilayer.org и других серверах со входом клиент сам регистрируется и получает доступ через OAuth 2.1 с PKCE; установки на собственном сервере в однопользовательском режиме обходятся без входа и считают каждый запрос запросом первоначально созданного пользователя. Адрес — <host>/mcp (https://wikilayer.org/mcp в облаке).
Инструменты
Полные схемы входа и выхода приходят в ответе клиенту на tools/list, так что клиенту никогда не нужна эта страница, чтобы что-то вызвать; записать стоит то, для чего нужен инструмент.
Чтение
get_outline: скелет дерева вики, страницы или поддерева блока.get_page_markdown: полный текст страницы или главной страницы вики единым документом.get_node: заголовок + текст одного узла.search_nodes: поиск подстроки по заголовкам и текстам внутри одной вики, по тегу или и так и так.search_node_history: поиск подстроки по журналу изменений вики; находит удалённый или перезаписанный текст.list_translations: переводы на других языках, связанные с узлом.list_tags: список тегов вики с числом узлов для каждого.get_page_settings: настройки страницы помимо текста: публичная ссылка и переопределения SEO.list_wikis: вики, которые вызывающий может читать.search_public_wikis: полнотекстовый поиск по всем публичным вики на этом сервере.
Запись
create_wiki: новая вики под владельцем вызывающего.update_wiki: поля уровня вики (заголовок, видимость, основной язык).add_language,remove_language: дать вики главную страницу на другом языке или убрать её.create_nodes: пакетно создать страницы и блоки; страница создаётся в вики или в другой странице, блок — в странице или в другом блоке.update_node: заменить заголовок и текст узла.patch_node: упорядоченные замены буквальных строк в тексте.move_node: перенести узел с его поддеревом к другому родителю, в том числе страницу.split_node: разделить слишком большой текст на дочерние блоки на сервере, не выгружая весь текст клиенту.delete_nodes: удалить узлы вместе с их поддеревьями (история сохраняется).migrate: перенести поддерево в другую вики с сохранением ID узлов; если ссылки пересекают границу вики в любую сторону, перенос отклоняется.link_translation,unlink_translation: связать узел с его переводом на другом языке или разъединить их.tag_nodes,update_tag,delete_tag: сгруппировать узлы, у которых нет общего родителя.
Файлы, доступ, SEO
upload_image: сохраняет изображение, которое сервер скачивает по публичному адресу или из вложения в разговоре.request_upload: одноразовый адрес для отправки локального файла изображения.view_image: посмотреть сохранённое изображение, доступное агенту, по его пути/s/.share_page: ссылка только для чтения на одну страницу закрытой вики и способ её отозвать.set_page_seo: ручные переопределения OG / Twitter для публичной страницы.
Оба способа дают путь для встраивания изображения. Три инструмента для изображений доступны только на серверах с настроенным объектным хранилищем.
Чат учётной записи
Инструменты чата учётной записи позволяют агентам писать и читать сообщения и ждать новых.