NWO Robotics
MCP-сервер NWO Robotics v2.0
Полнофункциональный сервер протокола Model Context Protocol (MCP) для API NWO Robotics с 77 интегрированными инструментами, охватывающими SLAM, обучение с подкреплением, передовые датчики и полное управление роботизированными системами.
📋 Обзор
Этот MCP-сервер предоставляет комплексный доступ ко всем конечным точкам API NWO Robotics через единый интерфейс с 77 инструментами, организованными по приоритету и функциональности.
✨ Ключевые особенности
77 интегрированных инструментов — полное покрытие API
SLAM и локализация — постоянное картографирование и навигация роботов
Обучение с подкреплением (RL) — облачное обучение RL (PPO, SAC, DDPG, TD3)
Передовые датчики — тепловизионные, миллиметрового диапазона (MMWave), газовые, акустические, магнитные
Зрение и привязка к объектам — обнаружение объектов с открытым словарем
Тактильное восприятие — обратная связь с 576 такселями руки ORCA Hand
Планирование движения — интеграция MoveIt2 с предотвращением столкновений
Планирование задач — иерархическое выполнение задач с использованием деревьев поведения
Интеграция ROS2 — облачный мост для реальных роботов (UR5e, Panda, Spot)
Мониторинг безопасности — проверка безопасности в реальном времени и аварийная остановка
MQTT IoT — поддержка более 1000 агентов с периферийными вычислениями
Автономные агенты — саморегистрация и платежи на основе ETH
🚀 Быстрый старт
1. Клонирование репозитория
git clone https://github.com/RedCiprianPater/mcp-server-robotics.git
cd mcp-server-robotics2. Установка зависимостей
npm install3. Настройка окружения
cp .env.example .env
# Edit .env and add your NWO_API_KEY
nano .env4. Сборка и запуск
npm run build
npm start5. Тестирование в действии
# The server will start and display available tools
# You can now use any of the 77 tools through Claude📦 Что включено
Файлы
src/index.ts — полная реализация MCP-сервера (77 инструментов)
package.json — зависимости и скрипты сборки
tsconfig.json — конфигурация TypeScript
Dockerfile — развертывание в контейнере
docker-compose.yml — полный стек с MQTT-брокером
.env.example — шаблон переменных окружения
INTEGRATION_GUIDE.md — подробные инструкции по интеграции
README.md — этот файл
Категории инструментов
Приоритет 1 — Уникальные функции (5 инструментов)
✅ nwo_initialize_slam - Persistent robot mapping
✅ nwo_localize - Landmark-based localization
✅ nwo_create_rl_env - Cloud RL training environments
✅ nwo_train_policy - Policy training (SB3)
✅ nwo_detect_objects_grounding - Open-vocabulary detectionПриоритет 2 — Новые датчики (5 инструментов)
✅ nwo_query_thermal - Heat detection
✅ nwo_query_mmwave - Millimeter-wave radar
✅ nwo_query_gas - Air quality sensors
✅ nwo_query_acoustic - Sound localization
✅ nwo_query_magnetic - Metal detectionПриоритет 3 — Расширенные функции (4 инструмента)
✅ nwo_read_tactile - ORCA Hand 576 taxels
✅ nwo_identify_material - Material recognition
✅ nwo_plan_motion - MoveIt2 motion planning
✅ nwo_execute_behavior_tree - Hierarchical task executionСтандартные операции (58 инструментов)
Inference & Models (6) Robot Control (3)
Task Planning & Learning (4) Agent Management (3)
Voice & Gesture (2) Simulation & Physics (3)
ROS2 & Hardware (3) MQTT & IoT (2)
Safety & Monitoring (3) Embodiment & Calibration (3)
Autonomous Agents (4) Dataset & Export (2)
Demo & Testing (2)🔧 Конфигурация
API-ключ
Получите бесплатный API-ключ на странице https://nwo.capital/webapp/api-key.php
export NWO_API_KEY="sk_live_your_key_here"Конечные точки API
# Standard API (full features)
NWO_API_BASE=https://nwo.capital/webapp
# Edge API (ultra-low latency, 200+ locations)
NWO_EDGE_API=https://nwo-robotics-api-edge.ciprianpater.workers.dev/api
# ROS2 Bridge (for physical robots)
NWO_ROS2_BRIDGE=https://nwo-ros2-bridge.onrender.com
# MQTT Broker (IoT sensors)
MQTT_BROKER=mqtt.nwo.capital
MQTT_PORT=8883📖 Примеры использования
Пример 1: SLAM и навигация
// Initialize SLAM mapping
const slam = await client.messages.create({
tools: [{name: "nwo_initialize_slam", input: {
agent_id: "robot_001",
map_name: "warehouse",
slam_type: "hybrid",
loop_closure: true
}}]
});
// Later: Localize in the map
const localize = await client.messages.create({
tools: [{name: "nwo_localize", input: {
agent_id: "robot_001",
map_id: "map_123",
image: "base64_encoded_image"
}}]
});Пример 2: Задача на основе зрения
// Detect objects with natural language
const detect = await client.messages.create({
tools: [{name: "nwo_detect_objects_grounding", input: {
agent_id: "robot_001",
image: "base64_image",
object_description: "red cylinder on the left",
threshold: 0.85,
return_mask: true
}}]
});
// Execute action based on detection
const execute = await client.messages.create({
tools: [{name: "nwo_inference", input: {
instruction: "Pick up the detected object",
images: ["base64_image"]
}}]
});Пример 3: Планирование сложных задач
// Break down high-level instruction
const plan = await client.messages.create({
tools: [{name: "nwo_task_planner", input: {
instruction: "Clean the warehouse floor",
agent_id: "robot_001",
context: {
location: "warehouse",
known_objects: ["shelves", "boxes"]
}
}}]
});
// Execute subtasks
for (let i = 1; i <= 5; i++) {
await client.messages.create({
tools: [{name: "nwo_execute_subtask", input: {
plan_id: "plan_123",
subtask_order: i,
agent_id: "robot_001"
}}]
});
}Пример 4: Сенсорная интеграция
const fusion = await client.messages.create({
tools: [{name: "nwo_sensor_fusion", input: {
agent_id: "robot_001",
instruction: "Pick up the hot object carefully",
images: ["base64_camera"],
sensors: {
temperature: {value: 85.5, unit: "celsius"},
proximity: {distance: 0.15, unit: "meters"},
force: {grip_pressure: 2.5},
gps: {lat: 51.5074, lng: -0.1278}
}
}}]
});Пример 5: Обучение политики RL
// Create RL environment
const env = await client.messages.create({
tools: [{name: "nwo_create_rl_env", input: {
agent_id: "robot_001",
task_name: "pick_place",
reward_function: "success",
sim_platform: "mujoco"
}}]
});
// Train policy
const train = await client.messages.create({
tools: [{name: "nwo_train_policy", input: {
agent_id: "robot_001",
env_id: "env_456",
algorithm: "PPO",
num_steps: 100000,
learning_rate: 0.0003
}}]
});📊 Метрики производительности
Операция | Задержка | Примечания |
Стандартный вывод | 100-120 мс | Центр обработки данных в ЕС |
Периферийный вывод | 25-50 мс | Более 200 локаций по всему миру |
Инициализация SLAM | 200-500 мс | Зависит от качества изображения |
Локализация SLAM | 100-300 мс | В существующей карте |
Обучение RL (за шаг) | 50-100 мс | Симуляция MuJoCo |
Планирование задач | 500-1000 мс | Сложная декомпозиция |
Сенсорная интеграция | 150-300 мс | Обработка данных с нескольких датчиков |
Аварийная остановка | <10 мс | Гарантированный отклик |
🐳 Развертывание в Docker
Простой запуск Docker
docker build -t mcp-nwo-robotics .
docker run -e NWO_API_KEY=sk_xxx mcp-nwo-roboticsDocker Compose (рекомендуется)
# Start full stack with MQTT broker
docker-compose up -d
# View logs
docker-compose logs -f mcp-nwo-robotics
# Stop
docker-compose downПромышленное развертывание
# Build for production
docker build -t mcp-nwo-robotics:prod .
# Push to registry
docker tag mcp-nwo-robotics:prod myregistry/mcp-nwo-robotics:latest
docker push myregistry/mcp-nwo-robotics:latest
# Deploy on Kubernetes
kubectl apply -f k8s-deployment.yaml🔐 Безопасность
Управление API-ключами
# Never commit API keys
echo "NWO_API_KEY=*" >> .gitignore
echo ".env" >> .gitignore
# Use environment variables or .env (in .gitignore)Ограничение частоты запросов (Rate Limiting)
Бесплатный уровень: 100 000 вызовов/мес
Прототип: 500 000 вызовов/мес (~16 666/день)
Промышленный: безлимитные вызовы
Мониторинг использования:
const balance = await client.messages.create({
tools: [{name: "nwo_agent_check_balance", input: {
agent_id: "agent_123"
}}]
});Функции безопасности
Обнаружение столкновений в реальном времени
Предупреждение о близости человека (по умолчанию 1,5 м)
Аварийная остановка (отклик <10 мс)
Принудительное ограничение силы/крутящего момента
Аудит-логирование для обеспечения соответствия требованиям
🧪 Тестирование
Запуск тестов
npm test
npm run test:watchТестирование отдельных инструментов
# Test SLAM
npm run dev -- --test nwo_initialize_slam
# Test inference
npm run dev -- --test nwo_inference
# Test sensor fusion
npm run dev -- --test nwo_sensor_fusion📚 Документация
Справочник API: https://nwo.capital/webapp/nwo-robotics.html
GitHub: https://github.com/RedCiprianPater/mcp-server-robotics
Whitepaper: https://www.researchgate.net/publication/401902987_NWO_Robotics_API_WHITEPAPER
Демо: https://huggingface.co/spaces/PUBLICAE/nwo-robotics-api-demo
Документация: https://docs.anthropic.com/
🔗 Руководства по интеграции
С Claude API
import Anthropic from "@anthropic-ai/sdk";
const client = new Anthropic();
const response = await client.messages.create({
model: "claude-3-5-sonnet-20241022",
max_tokens: 4096,
tools: tools, // All 77 NWO tools
messages: [{
role: "user",
content: "Initialize SLAM mapping on robot_001"
}]
});С LangChain
from langchain.chat_models import ChatAnthropic
from langchain.tools import StructuredTool
llm = ChatAnthropic(model_name="claude-3-sonnet-20240229")
tools = load_nwo_tools()
agent = initialize_agent(tools, llm, agent="tool-using-agent")С CrewAI
from crewai import Agent, Task, Crew
from nwo_tools import get_robotics_tools
tools = get_robotics_tools()
robot_agent = Agent(
role="Robot Controller",
goal="Control robots autonomously",
tools=tools
)🐛 Устранение неполадок
Проблема: "Invalid or missing API key"
# Solution: Check API key
echo $NWO_API_KEY
# If empty, set it:
export NWO_API_KEY="sk_your_actual_key"
# Or in .env:
NWO_API_KEY=sk_your_actual_keyПроблема: "API error 504: Gateway Timeout"
# Solution: Use edge API for faster response
# Set: NWO_EDGE_API endpoint
# Tool: nwo_edge_inference instead of nwo_inferenceПроблема: "Collision detected"
# Solution: Validate trajectory before execution
# Use: nwo_simulate_trajectory to check collision
# Use: nwo_check_collision for detailed analysisПроблема: "SLAM mapping failed"
# Solution: Ensure good image quality
# - Well-lit environment
# - Distinct visual features
# - Slow movement during initialization
# - Try visual instead of hybrid SLAM📈 Мониторинг и аналитика
Логи
# View real-time logs
npm run dev
# With custom log level
LOG_LEVEL=debug npm start
# Save to file
npm start > logs/server.log 2>&1Метрики
# Monitor API usage
nwo_agent_check_balance
# Export dataset for analysis
nwo_export_dataset
# Check system health
GET /health (if enabled)🎯 Следующие шаги
✅ Настройка:
npm install && npm run build✅ Конфигурация: Добавьте
NWO_API_KEYв.env✅ Тест:
npm startи проверка загрузки инструментов✅ Интеграция: Используйте с Claude API или вашим фреймворком
✅ Развертывание: Docker Compose или Kubernetes
✅ Мониторинг: Проверка логов и метрик использования
✅ Масштабирование: Повышение уровня доступа по мере необходимости
📞 Поддержка
Проблемы: https://github.com/RedCiprianPater/mcp-server-robotics/issues
Обсуждения: https://github.com/RedCiprianPater/mcp-server-robotics/discussions
Помощь с API-ключом: https://nwo.capital/webapp/api-key.php
Документация NWO: https://nwo.capital/nwo-robotics.html
📝 История версий
v2.0.0 (Текущая - апрель 2026)
✅ Реализовано 77 инструментов
✅ Приоритет 1: SLAM, RL, привязка (5)
✅ Приоритет 2: Передовые датчики (5)
✅ Приоритет 3: Расширенные функции (4)
✅ Стандартные операции (58)
✅ Полная поддержка TypeScript
✅ Готовность к Docker и Kubernetes
✅ Обработка ошибок промышленного уровня
✅ Полное покрытие тестами
v1.0.0 (Предыдущая)
Базовый набор инструментов (20 инструментов)
Только стандартный вывод
Ручная конфигурация
📄 Лицензия
Лицензия MIT — подробности см. в файле LICENSE
🙏 Благодарности
NWO Robotics — API и инфраструктура
Anthropic — Claude и протокол MCP
Open Source Community — вклад и обратная связь
Последнее обновление: Апрель 2026 Статус: ✅ Готов к промышленному использованию Сопровождающий: @RedCiprianPater
⭐ Если вам это полезно, пожалуйста, поставьте звезду репозиторию!
🔗 Связанные проекты
Latest Blog Posts
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/RedCiprianPater/mcp-server-robotics'
If you have feedback or need assistance with the MCP directory API, please join our Discord server