thingctx — MCP-сервер для Claude Code: что делает и как установить
Превращает описания API и устройств W3C WoT в инструменты для ИИ-агентов. Позволяет вызывать операции без передачи ключей модели и контролировать доступ к каждой команде.
claude mcp add --env THINGCTX_POLICY=<THINGCTX_POLICY> --env THINGCTX_APPROVE_WHEN=<THINGCTX_APPROVE_WHEN> --env THINGCTX_FS_ROOT=<THINGCTX_FS_ROOT> --transport stdio thingctx -- uvx thingctxЧто делает thingctx
thingctx преобразует спецификации W3C Thing Description или файлы OpenAPI 3.x в функции вида <thing>__<action>. Агент получает понятную схему действий, а запросы уходят через протоколы целевой системы: HTTP, MQTT или локальные вызовы. Транспорты система выбирает сама.
Ключи доступа к сервисам остаются на стороне среды исполнения. Модель их не видит. Сервер разрешает вызовы поштучно, поэтому чтение данных можно открыть, а запись на том же ресурсе заблокировать. Встроенный транспорт exec изначально заперт и отклоняет системные вызовы без явного белого списка команд.
Для работы требуется Python 3.10 или новее. Базовый пакет содержит только локальный и exec транспорты. Для подключения Redis или конвертации спецификаций OpenAPI понадобятся отдельные расширения пакета.
Какие задачи решает
- преобразовать спецификацию OpenAPI или манифест W3C WoT в инструменты агента
- исключить передачу секретных API-ключей в контекст языковой модели
- разрешить только подтверждённые системные команды через транспорт
exec - объединить вызовы через HTTP, MQTT и локальные процессы в одну схему
Примеры запросов агенту
- Сконвертируй спецификацию
openapi.jsonв манифест Thing Description для thingctx. - Вызови инструмент
weather__forecastс координатами нужного города. - Покажи доступные действия для устройства из описания
pump.td.json.
Как установить thingctx
Командой платформы
claude mcp add --env THINGCTX_POLICY=<THINGCTX_POLICY> --env THINGCTX_APPROVE_WHEN=<THINGCTX_APPROVE_WHEN> --env THINGCTX_FS_ROOT=<THINGCTX_FS_ROOT> --transport stdio thingctx -- uvx thingctxВместо <…> подставьте свои значения. uvx запускает команду с именем пакета; если в README она другая — uvx --from thingctx <команда>
Командой платформы
codex mcp add thingctx --env THINGCTX_POLICY=<THINGCTX_POLICY> --env THINGCTX_APPROVE_WHEN=<THINGCTX_APPROVE_WHEN> --env THINGCTX_FS_ROOT=<THINGCTX_FS_ROOT> -- uvx thingctxВместо <…> подставьте свои значения. uvx запускает команду с именем пакета; если в README она другая — uvx --from thingctx <команда>
Файл настроек
{
"mcpServers": {
"thingctx": {
"command": "uvx",
"args": [
"thingctx"
],
"env": {
"THINGCTX_POLICY": "<THINGCTX_POLICY>",
"THINGCTX_APPROVE_WHEN": "<THINGCTX_APPROVE_WHEN>",
"THINGCTX_FS_ROOT": "<THINGCTX_FS_ROOT>"
}
}
}
}Вместо <…> подставьте свои значения. uvx запускает команду с именем пакета; если в README она другая — uvx --from thingctx <команда>
Файл настроек
{
"servers": {
"thingctx": {
"type": "stdio",
"command": "uvx",
"args": [
"thingctx"
],
"env": {
"THINGCTX_POLICY": "<THINGCTX_POLICY>",
"THINGCTX_APPROVE_WHEN": "<THINGCTX_APPROVE_WHEN>",
"THINGCTX_FS_ROOT": "<THINGCTX_FS_ROOT>"
}
}
}
}Вместо <…> подставьте свои значения. uvx запускает команду с именем пакета; если в README она другая — uvx --from thingctx <команда>
Командой платформы
gemini mcp add -e THINGCTX_POLICY=<THINGCTX_POLICY> -e THINGCTX_APPROVE_WHEN=<THINGCTX_APPROVE_WHEN> -e THINGCTX_FS_ROOT=<THINGCTX_FS_ROOT> thingctx uvx thingctxВместо <…> подставьте свои значения. uvx запускает команду с именем пакета; если в README она другая — uvx --from thingctx <команда>
По шагам, с командами для каждой платформы: Как подключить MCP-сервер: Claude Code, Codex, Cursor, VS Code, Gemini CLI и другие
Вопросы о thingctx
Как установить thingctx в Claude Code?
Выполните в терминале команду `claude mcp add --env THINGCTX_POLICY=<THINGCTX_POLICY> --env THINGCTX_APPROVE_WHEN=<THINGCTX_APPROVE_WHEN> --env THINGCTX_FS_ROOT=<THINGCTX_FS_ROOT> --transport stdio thingctx -- uvx thingctx`.
Что делает thingctx?
Он трансформирует форматы описания W3C WoT и OpenAPI в инструменты MCP. Вызовы транслируются в нужные транспорты без передачи учётных данных нейросети.
Какие системные требования нужны для работы?
Нужен Python версии 3.10 или выше. Для импорта OpenAPI-спецификаций или интеграции с Redis требуется доустановить зависимости thingctx[openapi] или thingctx[redis].