MCP-сервер OData 1С
1C OData MCP Server
Небольшой MCP-сервер на Python, который оборачивает стандартные операции чтения OData 1С:Управление предприятием в три инструмента
Низкий риск
Низкий уровень ставим, когда запись в основном дает агенту инструкции и справочные материалы.
Почему такой уровень
- Сервер выполняет только GET-запросы к OData, записи данных нет
- Пароль может попасть в аргументы вызова инструмента, если не использовать переменные окружения
Установка
В терминале, через SkillFoxx CLI
npx skillfoxx add mcp/1c-odata-mcp-serverОпределит агенты на машине, проверит риск и зафиксирует версию.
Другие способы установки
Собрано автоматически, проверьте перед установкой.
Выполните в терминале
claude mcp add --transport stdio --env 'ODATA_HOST=<значение ODATA_HOST>' --env 'ODATA_USER=<значение ODATA_USER>' --env 'ODATA_PASS=<ваш ODATA_PASS>' 1c-odata -- uvx run python server.pyИли добавьте в файл .mcp.json, в проекте
{
"mcpServers": {
"1c-odata": {
"command": "uvx",
"args": [
"run",
"python",
"server.py"
],
"env": {
"ODATA_HOST": "<значение ODATA_HOST>",
"ODATA_USER": "<значение ODATA_USER>",
"ODATA_PASS": "<ваш ODATA_PASS>"
}
}
}
}Если файл уже есть, добавьте сервер внутрь ключа mcpServers.
Ключи и настройки
ODATA_HOSTобязательная- OData service host
ODATA_USERобязательная- OData service user
ODATA_PASSсекрет, обязательная- OData service password
Замените значения в угловых скобках своими. Ключи не попадают в ссылки установки и не хранятся у нас.
Кнопка откроет агент и предложит добавить сервер. Если ничего не произошло, скопируйте конфиг ниже.
Добавьте в файл ~/.cursor/mcp.json, для всех проектов
{
"mcpServers": {
"1c-odata": {
"command": "uvx",
"args": [
"run",
"python",
"server.py"
],
"env": {
"ODATA_HOST": "<значение ODATA_HOST>",
"ODATA_USER": "<значение ODATA_USER>",
"ODATA_PASS": "<ваш ODATA_PASS>"
}
}
}
}Если файл уже есть, добавьте сервер внутрь ключа mcpServers. Для одного проекта тот же блок кладут в .cursor/mcp.json.
Ключи и настройки
ODATA_HOSTобязательная- OData service host
ODATA_USERобязательная- OData service user
ODATA_PASSсекрет, обязательная- OData service password
Замените значения в угловых скобках своими. Ключи не попадают в ссылки установки и не хранятся у нас.
Кнопка откроет агент и предложит добавить сервер. Если ничего не произошло, скопируйте конфиг ниже.
Выполните в терминале
code --add-mcp '{"name":"1c-odata","type":"stdio","command":"uvx","args":["run","python","server.py"],"env":{"ODATA_HOST":"<значение ODATA_HOST>","ODATA_USER":"<значение ODATA_USER>","ODATA_PASS":"<ваш ODATA_PASS>"}}'Или добавьте в файл .vscode/mcp.json, в проекте
{
"servers": {
"1c-odata": {
"type": "stdio",
"command": "uvx",
"args": [
"run",
"python",
"server.py"
],
"env": {
"ODATA_HOST": "<значение ODATA_HOST>",
"ODATA_USER": "<значение ODATA_USER>",
"ODATA_PASS": "<ваш ODATA_PASS>"
}
}
}
}Если файл уже есть, добавьте сервер внутрь ключа servers.
Ключи и настройки
ODATA_HOSTобязательная- OData service host
ODATA_USERобязательная- OData service user
ODATA_PASSсекрет, обязательная- OData service password
Замените значения в угловых скобках своими. Ключи не попадают в ссылки установки и не хранятся у нас.
Выполните в терминале
codex mcp add 1c-odata --env 'ODATA_HOST=<значение ODATA_HOST>' --env 'ODATA_USER=<значение ODATA_USER>' --env 'ODATA_PASS=<ваш ODATA_PASS>' -- uvx run python server.pyИли добавьте в файл ~/.codex/config.toml, для всех проектов
[mcp_servers.1c-odata]
command = "uvx"
args = ["run", "python", "server.py"]
env = { ODATA_HOST = "<значение ODATA_HOST>", ODATA_USER = "<значение ODATA_USER>", ODATA_PASS = "<ваш ODATA_PASS>" }Если файл уже есть, допишите блок в конец.
Ключи и настройки
ODATA_HOSTобязательная- OData service host
ODATA_USERобязательная- OData service user
ODATA_PASSсекрет, обязательная- OData service password
Замените значения в угловых скобках своими. Ключи не попадают в ссылки установки и не хранятся у нас.
Выполните в терминале
gemini mcp add -s user -e 'ODATA_HOST=<значение ODATA_HOST>' -e 'ODATA_USER=<значение ODATA_USER>' -e 'ODATA_PASS=<ваш ODATA_PASS>' 1c-odata uvx run python server.pyИли добавьте в файл ~/.gemini/settings.json, для всех проектов
{
"mcpServers": {
"1c-odata": {
"command": "uvx",
"args": [
"run",
"python",
"server.py"
],
"env": {
"ODATA_HOST": "<значение ODATA_HOST>",
"ODATA_USER": "<значение ODATA_USER>",
"ODATA_PASS": "<ваш ODATA_PASS>"
}
}
}
}Если файл уже есть, добавьте сервер внутрь ключа mcpServers.
Ключи и настройки
ODATA_HOSTобязательная- OData service host
ODATA_USERобязательная- OData service user
ODATA_PASSсекрет, обязательная- OData service password
Замените значения в угловых скобках своими. Ключи не попадают в ссылки установки и не хранятся у нас.
Добавьте в файл ~/.config/devin/mcp_config.json, для всех проектов
{
"mcpServers": {
"1c-odata": {
"command": "uvx",
"args": [
"run",
"python",
"server.py"
],
"env": {
"ODATA_HOST": "<значение ODATA_HOST>",
"ODATA_USER": "<значение ODATA_USER>",
"ODATA_PASS": "<ваш ODATA_PASS>"
}
}
}
}Если файл уже есть, добавьте сервер внутрь ключа mcpServers. В легаси Cascade конфиг MCP лежит в ~/.codeium/windsurf/mcp_config.json.
Ключи и настройки
ODATA_HOSTобязательная- OData service host
ODATA_USERобязательная- OData service user
ODATA_PASSсекрет, обязательная- OData service password
Замените значения в угловых скобках своими. Ключи не попадают в ссылки установки и не хранятся у нас.
Бывший Windsurf.
Добавьте в файл cline_mcp_settings.json, для всех проектов
{
"mcpServers": {
"1c-odata": {
"command": "uvx",
"args": [
"run",
"python",
"server.py"
],
"env": {
"ODATA_HOST": "<значение ODATA_HOST>",
"ODATA_USER": "<значение ODATA_USER>",
"ODATA_PASS": "<ваш ODATA_PASS>"
}
}
}
}Если файл уже есть, добавьте сервер внутрь ключа mcpServers. Файл настроек открывается в Cline: вкладка MCP Servers, кнопка Configure MCP Servers.
Ключи и настройки
ODATA_HOSTобязательная- OData service host
ODATA_USERобязательная- OData service user
ODATA_PASSсекрет, обязательная- OData service password
Замените значения в угловых скобках своими. Ключи не попадают в ссылки установки и не хранятся у нас.
Добавьте в файл .roo/mcp.json, в проекте
{
"mcpServers": {
"1c-odata": {
"command": "uvx",
"args": [
"run",
"python",
"server.py"
],
"env": {
"ODATA_HOST": "<значение ODATA_HOST>",
"ODATA_USER": "<значение ODATA_USER>",
"ODATA_PASS": "<ваш ODATA_PASS>"
}
}
}
}Если файл уже есть, добавьте сервер внутрь ключа mcpServers.
Ключи и настройки
ODATA_HOSTобязательная- OData service host
ODATA_USERобязательная- OData service user
ODATA_PASSсекрет, обязательная- OData service password
Замените значения в угловых скобках своими. Ключи не попадают в ссылки установки и не хранятся у нас.
Форк Roo Code, папки .roo те же.
Добавьте в файл opencode.json, в проекте
{
"mcp": {
"1c-odata": {
"type": "local",
"command": [
"uvx",
"run",
"python",
"server.py"
],
"environment": {
"ODATA_HOST": "<значение ODATA_HOST>",
"ODATA_USER": "<значение ODATA_USER>",
"ODATA_PASS": "<ваш ODATA_PASS>"
}
}
}
}Если файл уже есть, добавьте сервер внутрь ключа mcp.
Ключи и настройки
ODATA_HOSTобязательная- OData service host
ODATA_USERобязательная- OData service user
ODATA_PASSсекрет, обязательная- OData service password
Замените значения в угловых скобках своими. Ключи не попадают в ссылки установки и не хранятся у нас.
Добавьте в файл ~/.config/zed/settings.json, для всех проектов
{
"context_servers": {
"1c-odata": {
"command": "uvx",
"args": [
"run",
"python",
"server.py"
],
"env": {
"ODATA_HOST": "<значение ODATA_HOST>",
"ODATA_USER": "<значение ODATA_USER>",
"ODATA_PASS": "<ваш ODATA_PASS>"
}
}
}
}Если файл уже есть, добавьте сервер внутрь ключа context_servers.
Ключи и настройки
ODATA_HOSTобязательная- OData service host
ODATA_USERобязательная- OData service user
ODATA_PASSсекрет, обязательная- OData service password
Замените значения в угловых скобках своими. Ключи не попадают в ссылки установки и не хранятся у нас.
Добавьте в файл .codeassistant/mcp.json, в проекте
{
"mcpServers": {
"1c-odata": {
"command": "uvx",
"args": [
"run",
"python",
"server.py"
],
"env": {
"ODATA_HOST": "<значение ODATA_HOST>",
"ODATA_USER": "<значение ODATA_USER>",
"ODATA_PASS": "<ваш ODATA_PASS>"
}
}
}
}Если файл уже есть, добавьте сервер внутрь ключа mcpServers.
Ключи и настройки
ODATA_HOSTобязательная- OData service host
ODATA_USERобязательная- OData service user
ODATA_PASSсекрет, обязательная- OData service password
Замените значения в угловых скобках своими. Ключи не попадают в ссылки установки и не хранятся у нас.
Установите uv, склонируйте репозиторий и запустите uv --directory {PATH_TO_FOLDER} run python server.py, задав переменные окружения ODATA_HOST, ODATA_USER и ODATA_PASS, затем добавьте секцию mcpServers.1c-odata из claude-desktop.example.json в конфигурацию Claude Desktop.
Другие способы из описания автора
uv --directory {PATH_TO_FOLDER} run python server.pyЛокальный запуск сервера после клонирования репозитория, из README.
Проверка безопасности
Как мы проверяемНизкий рискНизкий уровень ставим, когда запись в основном дает агенту инструкции и справочные материалы.
- Сервер выполняет только GET-запросы к OData, записи данных нет
- Пароль может попасть в аргументы вызова инструмента, если не использовать переменные окружения
Это чужой код. Посмотрите файлы в репозитории перед установкой.
Что делает
Сервер дает агенту три инструмента для работы со стандартным интерфейсом OData 1С: probe_odata проверяет подключение и учетные данные, get_odata выполняет GET-запрос к конкретному ресурсу OData, а list_entity_sets возвращает список доступных сущностей из служебного документа сервиса. Учетные данные задаются переменными окружения ODATA_HOST, ODATA_USER и ODATA_PASS либо передаются прямо в аргументах вызова инструмента.
Для кого. Для тех, у кого в 1С уже включен стандартный OData-интерфейс и нужен минимальный MCP-мост к нему для чтения данных агентом.
Подходит, если
- OData уже опубликован в базе 1С и нужен простой способ читать его из агента
- Нужно быстро проверить, какие сущности доступны через OData конкретной базы
- Достаточно только чтения, без записи и без сложной бизнес-логики поверх запросов
Не подходит, если
- Нужна запись данных в 1С: сервер выполняет только GET-запросы
- OData в базе не включен или недоступен по сети агенту
Пример запроса к агенту
Проверь подключение к OData базы и покажи список доступных сущностейMCP
- Транспорт
- stdio
- Авторизация
- API-ключ
Переменные окружения
ODATA_HOSTобязательная- Адрес публикации OData базы 1С.
ODATA_USERобязательная- Пользователь для подключения к OData.
ODATA_PASSобязательная, секрет- Пароль пользователя OData.
Ограничения
Лицензия не указана, README не содержит инструкций по публикации в реестры и запуску без клонирования репозитория. Сервер выполняет только чтение (GET), логики записи или изменения данных нет. Пароль ODATA_PASS можно передать переменной окружения или аргументом инструмента, во втором случае он попадает в контекст вызова.
Как отключить. Удалите секцию mcpServers.1c-odata из конфигурации MCP клиента.
Частые вопросы
Можно ли передать логин и пароль прямо в вызове инструмента?
Да, README допускает передачу значений в аргументах инструмента вместо переменных окружения.
Умеет ли сервер писать данные в 1С?
Нет, все три инструмента выполняют только чтение через GET-запросы к OData.
Похожие
MCP-серверыНабор скиллов, который задает агенту процесс разработки: уточнение задачи, план, TDD, субагенты и ревью кода
Скиллы Мэтта Покока для инженеров
Skills For Real Engineers
Небольшие компонуемые скиллы для инженерной работы с агентом: интервью по плану, TDD, диагностика багов, ревью и архитектура
Набор GitHub для разработки от спецификации: CLI specify ставит в проект команды и скиллы для агента, от принципов до реализации
Референсные MCP-серверы
Model Context Protocol servers
Официальные референсные MCP-серверы: Filesystem, Fetch, Git, Memory, Sequential Thinking, Time и Everything
Коротко о README
README короткое: описывает три инструмента, требования (Python 3.11+ и uv), запуск локально командой uv run, переменные окружения ODATA_HOST, ODATA_USER и ODATA_PASS и установку в Claude Desktop через готовый файл claude-desktop.example.json.