Skip to main content
Glama

MCP-сервер NWO Robotics v2.0

Полнофункциональный сервер протокола Model Context Protocol (MCP) для API NWO Robotics с 77 интегрированными инструментами, охватывающими SLAM, обучение с подкреплением, передовые датчики и полное управление роботизированными системами.

License: MIT Node.js TypeScript Status

📋 Обзор

Этот 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-robotics

2. Установка зависимостей

npm install

3. Настройка окружения

cp .env.example .env
# Edit .env and add your NWO_API_KEY
nano .env

4. Сборка и запуск

npm run build
npm start

5. Тестирование в действии

# 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-robotics

Docker 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

📚 Документация

🔗 Руководства по интеграции

С 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)

🎯 Следующие шаги

  1. Настройка: npm install && npm run build

  2. Конфигурация: Добавьте NWO_API_KEY в .env

  3. Тест: npm start и проверка загрузки инструментов

  4. Интеграция: Используйте с Claude API или вашим фреймворком

  5. Развертывание: Docker Compose или Kubernetes

  6. Мониторинг: Проверка логов и метрик использования

  7. Масштабирование: Повышение уровня доступа по мере необходимости

📞 Поддержка

📝 История версий

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