coppeliasim-mcp
coppeliasim-mcp
MCP-сервер, позволяющий Claude Code (или любому MCP-клиенту) управлять запущенной симуляцией CoppeliaSim 4.10: создавать сцены, перемещать объекты, создавать шарниры и датчики приближения, запускать симуляцию и считывать показания датчиков.
Выполнение произвольного Lua намеренно не предусмотрено. Это главное отличие от других MCP-серверов для CoppeliaSim. См. Security.
Не является частью Coppelia Robotics AG, не одобрено и не поддерживается ею. CoppeliaSim является товарным знаком Coppelia Robotics AG. Это независимая сторонняя интеграция; сам симулятор доступен на coppeliarobotics.com.
Требования
CoppeliaSim 4.10 в запущенном состоянии, сактивным аддоном ZMQ remote API. Он поставляется включённым по умолчанию и слушает порт 23000.
Python 3.10 или новее.
Related MCP server: Robonine MCP Server
Установка
# Recommended: no clone, no virtualenv to manage
uvx coppeliasim-mcp
# Or install it
pip install coppeliasim-mcpЗарегистрируйте его в Claude Code:
claude mcp add coppelia -- uvx coppeliasim-mcpИли для любого MCP-клиента, читающего JSON-конфигурацию:
{
"mcpServers": {
"coppelia": {
"command": "uvx",
"args": ["coppeliasim-mcp"]
}
}
}Конфигурация
Все настройки задаются необязательными переменными окружения. Их также можно разместить в файле .env в рабочем каталоге — см. .env.example.
Variable | Default | Описание |
|
| Хост аддона ZMQ remote API. |
|
| Его порт. |
| текущий рабочий каталог | Можно загружать только сцены из этой папки. |
|
| Установите |
|
| Алиасы имён инструментов. |
|
| Сколько секунд ждать ответа, прежде чем прекратить ожидание. |
Tools
Simulation control — iniciar_simulacion, detener_simulacion, pausar_simulacion, estado_simulacion, tiempo_simulacion
Scenes — cargar_escena, cerrar_escena
Objects — listar_objetos, obtener_posicion, fijar_posicion, obtener_orientacion, fijar_orientacion, crear_primitiva, eliminar_objeto, emparentar_objeto, fijar_detectable
Joints — obtener_posicion_junta, fijar_objetivo_junta, fijar_velocidad_junta, obtener_fuerza_junta
Proximity sensors — crear_sensor_proximidad, leer_sensor_proximidad, comprobar_sensor_proximidad
Языки имён инструментов
Инструменты определены на испанском (crear_primitiva, leer_sensor_proximidad, …). Установка COPPELIA_IDIOMAS регистрирует алиасы на английском и португальском, которые указывают на те же самые функции — никакой дублирующейся логики, просто больше имён в каталоге.
| Tools | Catalog | Cost per request |
| 23 | 15.0 KB | — |
| 46 | 27.7 KB | ~3,300 tokens |
| 69 | 40.5 KB | ~6,500 tokens |
Каталог отправляется модели при каждом запросе, поэтому алиасы по умолчанию выключены. Это стоит знать заранее: модели не нужны переведённые имена, чтобы понимать вас на другом языке. Имена инструментов — это идентификаторы, а не пользовательский текст: попросите «move the cube forward» или «mova o cubo para frente» — и она в любом случае обратится к fijar_posicion. Алиасы полезны, когда вы хотите просмотреть каталог целиком или явно назвать инструмент в промпте.
Примеры
examples/carrito_diferencial.py создаёт полноценного робота с дифференциальным приводом и объездом препятствий, а также проверяет, действительно ли он работает. См. examples/README.md.
Вопросы безопасности
Lua-окружение CoppeliaSim имеет доступ к os и io. Поэтому инструмент, выполняющий произвольный Lua, превращает любую prompt-injection — например, текст, встроенный в стороннюю сцену .ttt, которую модель попросили изучить, — в выполнение команд на вашей машине. В этом сервере такого инструмента нет, и это сделано намеренно.
Остальная поверхность намеренно сужена:
cargar_escenaпреобразует путь (Path.resolve(strict=True)) до сравнения сCOPPELIA_DIRECTORIO_ESCENAS, поэтому../..и симлинки не могут выйти за его пределы; принимаются только расширения сцен.COPPELIA_MODO_LECTURA=1отключает все изменяющие инструменты разом.Каталог сцен по умолчанию — рабочий каталог, а не ваш домашний.
Заметки, которые экономят время на отладке
Свойства API Coppelia, в которых легко ошибиться и которые инструменты сразу же проявляют:
leer_sensor_proximidadне выполняет обнаружение. Он возвращает результат последнего срабатывания датчика симулятором, поэтому при остановленной симуляции всегда сообщает, что ничего нет. Для обнаружения по запросу используйтеcomprobar_sensor_proximidad.Объект должен быть помечен как определяемый, чтобы его увидел датчик приближения. Для этого и существует
fijar_detectable; именно это чаще всего мешает датчику «работать».Широкий конус, направленный горизонтально, видит пол раньше, чем препятствие. При полуапертуре a и датчике на высоте h пол входит в конус на расстоянии h / tan(a). Если это меньше дальности датчика, датчик сообщает о земле.
Смена родителя перенумеровывает пути соседних объектов. После подвешивания
/Сylinder[1]к шасси/Сylinder[3]может стать/Сylinder[1]. Повторно запрашивайте список объектов, либо разрешайте хэндлы заранее.Родительство не является жёстким креплением двух динамических тел. Нестатические формы будут падать, если их не ограничивает сустав или датчик силы.
Публикация
Публикация происходит при передаче тега в рабочий процесс .github/workflows/publicar.yml:
# bump version in pyproject.toml first, then
git tag v0.1.0 && git push --tagsРабочий процесс отказывается публиковать пакет, если тег не совпадает с версией в pyproject.toml, устанавливает спиленное колесо на Python 3.10 и Python 3.13 и запускает scripts/prueba_humo.py — MCP-хендшейк и проверку того, что вызов с отсутствующим симулятором отвечает, а не зависает — перед тем как загрузить что-либо. Версию PyPI нельзя перезаписать или повторно использовать, поэтому сбой в CI всё-таки дешевле, чем просто сжечь номер версии.
Он аутентифицируется в PyPI через Trusted Publishing (OIDC), поэтому в секретах репозитория не хранится токен.
Лицензия
MIT — см. LICENSE.
Лицензия MIT распространяется только на этот сервер. Сам же CoppeliaSim лицензируется отдельно компанией Coppelia Robotics AG, а этот пакет не включает и не должен распространять его части — он общается с симулятором, который вы устанавливаете и лицензируете сами.
coppeliasim-mcp (испанский)
MCP-сервер для управления симуляцией CoppeliaSim 4.10 из Claude Code или любого тяжелого MCP-клиента: чтобы строить сцены, перемещать объекты, создавать суставы и датчики удара, запускать симуляцию и считывать данные в симуляторе.
Не предоставляет исполнение произвольного Lua — это сделано намеренно. Это главное отличие от других MCP-серверов для CoppeliaSim. У CoppeliaSim'а Lua имеет доступ к os and io, поэтому подобный инструмент превращает любой промпт-инъекцию — например, текст в третьертной сцене .ttt — в выполнение команд на вашем компьютере.
Не является частью Coppelia Robotics AG, не одобрено и не поддерживается ею. CoppeliaSim — торговый знак Coppelia Robotics AG. Это независимая сторонняя интеграция; для работы с самим симулятором переходите на coppeliarobotics.com.
Требования
CoppeliaSim 4.10 запущен, с активным аддоном ZMQ remote API. Включён по умолчанию и прослушивает порт из 23000.
Python 3.10 или новее.
Установка
uvx coppeliasim-mcp # recomendado
pip install coppeliasim-mcp # o instalado
claude mcp add coppelia -- uvx coppeliasim-mcp # registrar en Claude CodeИнструменты
coppelia_power— [iniciar_simulacion], [detener_simulacion], [pausar_simulation], [estado_simulation], [tiempo_simulation].Сцены — [
cargar_escena], [cerrar_escena].Объекты — [
listar_objetos], [obtener_posicion], [fijar_posicion], [obtener_orientacion], [fijar_orientacion], [crear_primitiva], [eliminar_objeto], [emparentar_objeto], [fijar_detectable].Шарниры — [
getPosicion], [fijar_objetivo_junta], [fijar_velocidad_junta], [obtener_fuerza_junta].Датчики близости — [
crear_sensor_proximidad], [leer_sensor_proximidad], [comprobar_sensor_proximidad].
Hidden note: We need to close that line.
Языки инструментов
Инструменты определены на испанском. COPPELIA_IDIOMAS создает алиасы на английском и португальском, используя те же функции, не дублируя логику.
| Tools | Catalog | Cost per |
| 23 | 15.0 KB | — |
| 46 | 27.7 KB | ~3,300 tokens |
| 69 | 40.5 KB | ~6,500 tokens |
Каталог отправляется при каждом запросе модели, поэтому по умолчанию алиасы выключены. Это важно понимать заранее: model не нуждается в переводных именах, чтобы понимать вас на другом языке. Имена инструментов — это идентификаторы, а не отображаемый текст.
Затем некоторо
examples/carrito_diferencial.py конструирует полного робота с дифференциальным приводом и выявлением препятствий, чтобы убедиться, что он на самом деле работает. См. examples/README.md.
Заметки, которые экономят часы
leer_sensor_proximidadне ищет. Возвращает результат последнего сканирования датчика, поэтому при остановленном симуляторе всегда сообщает, что ничего нет. Для обнаружения в момент запускаcomprobar_sensor_proximidad.Объект должен быть заметным, тогда сенсор его увидит. Это требует
fijar_detectable. Это обычная причина того, что датчик якобы «не работает».Горизонтально направленный широкий конус видит землю раньше, чем ваш объект. Стрелка a и высота h создают пол, входящий в конус в h / tan(a). Если это под полусканием, and that is under sensor range.
Переродитель изменяет общие пути. При переносе
/Cylinder[1]под шасси/Cylinder[3]can become/Cylinder[1].
Лицензия
MIT — см. LICENSE.
Лицензия MIT покрывает только этот сервер. Сам CoppeliaSim лицензируется отдельно через Coppelia Robotics AG, и эта библиотека не включает и не распространяет его компоненты, так как она работает с симулятором, который вы используете по своей лицензии.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseNot gradedqualityAmaintenanceMCP server that lets Claude drive a running TouchDesigner instance to create operators, wire them, set parameters, run arbitrary Python, and introspect the td API.MIT

Robonine MCP Serverofficial
AlicenseAqualityDmaintenanceA local MCP server that connects Claude Code or any MCP-compatible AI assistant to a Robonine robot arm.1MIT- AlicenseAqualityBmaintenanceA self-hosted MCP server that lets Claude (or any MCP client) drive Autodesk Fusion 360 on your own machine.98MIT
- FlicenseNot gradedqualityCmaintenanceFull-access MCP server for the Webots robot simulator that enables AI assistants to see, understand, and modify a running simulation, including scene-tree inspection/editing, robot control, viewport screenshots, and arbitrary code execution.
Related MCP Connectors
Hosted MCP server connecting claude.ai, ChatGPT and other AI apps to your own computer
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to control Unreal E…
MCP server for AI dialogue using various LLM models via AceDataCloud
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/KevinInoCol/coppeliasim-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server