ROS2 için MCP sunucusu, AI destekli robotik uygulamaları ve hizmetlerini etkinleştirir.
Claude Desktop config.json'a ekle
{
"mcpServers": {
"wise-vision-ros2-mcp": {
"command": "python",
"args": [
"-m",
"ros2_mcp"
]
}
}
} Kaynak kodu al ve yerel olarak çalıştır
git clone https://github.com/wise-vision/ros2_mcp.git ~/.mcp/ros2_mcp
cd ~/.mcp/ros2_mcp 
Python ile yazılmış Model Context Protocol (MCP) uygulaması ROS 2 için. Bu sunucu, AI araçlarının ROS 2 düğümleri, konuları ve servisleriyle MCP standardı üzerinden stdio kullanarak bağlanmasını sağlar. En kolay ROS 2 MCP sunucusu olarak tasarlanmıştır.
ROS2 konusuna abone ol, belirli bir süre boyunca mesajlar topla ve toplanan verilerin istatistiksel analizini sağla.
➡️ Yalnızca bir konu varsa otomatik olarak algılayabilir. Mesaj oranlarını, sayılarını ve sayısal alanlar üzerindeki istatistikleri analiz eder.
Bir ROS2 konusuna abone ol ve mesajları isteğe bağlı dönüştürmelerle başka bir konuya yeniden yayınla.
➡️ Kimlik geçişi, hız sınırlandırması ve değişim tabanlı filtrelemeyi destekler.
Beklenen ROS2 konuları ve servislerinin mevcut olduğunu ve doğru şekilde çalıştığını isteğe bağlı yayın oranı izlemesiyle kontrol et.
➡️ Durum göstergeleri ve önerilerle kapsamlı bir sağlık raporu sağlar.
İki ROS2 konusunu karşılaştır ve mesajlarındaki farklılıkları ayrıntılı alan-alan analizi ile rapor et.
➡️ Ham sensör verilerini filtrelenmiş/işlenmiş versiyonlarla karşılaştırmak veya konu senkronizasyonunu doğrulamak için kullanışlıdır.
Not: Özel (varsayılan olmayan) bir tür ile bir servisi çağırmak için sunucuyu başlatmadan önce bunu tanımlayan paketi kaynak haline getirin.
ROS 2 projelerinizde yapay zeka entegrasyonu ile geliştirme süresini saatlerce tasarruf edin:
Uygun: Robotik geliştiriciler, araştırmacılar, öğrenciler ve ROS 2 ile çalışan ve daha hızlı geliştirme ve hata ayıklama için yapay zekadan yararlanmak isteyen herkes.
Bu projeyi faydalı bulursanız lütfen ⭐ depo yıldızı ekleyin — başkalarının onu bulmasına yardımcı olur.
🚀 Bu projenin tadını mı alıyorsunuz?
Katkıda bulunmaktan veya destek almaktan çekinmeyin! İssueler yazın, PR'ler gönderin veya diğer ROS 2 ve yapay zeka meraklılarıyla bağlantı kurmak için Discord komunitemize katılın.


Adım adım talimatlar için kurulum kılavuzunu izleyin:
Gazebo İnsansız Hava Aracı Demo bölümünü kontrol edin
| Araç | Açıklama | Girdiler | Çıktılar |
|---|---|---|---|
ros2_topic_list |
Mevcut konuların listesini döndürür | – | topic_name (string): Konu adı topic_type (string): Mesaj türü |
ros2_topic_subscribe |
Bir ROS 2 konusuna abone olur ve belirli bir süre veya mesaj sınırı için mesajlar toplar | topic_name (string) duration (float) message_limit (int) (varsayılanlar: ilk msg, 5s) |
messages count duration |
ros2_get_messages |
Konudan geçmiş mesajları alır (veri black box) | topic_name (string) message_type (string) number_of_messages (int) time_start (str) time_end (str) |
timestamps messages |
ros2_get_message_fields |
Bir mesaj türü için alan adlarını ve türlerini alır | message_type (string) |
Alan adları + türler |
ros2_topic_publish |
Konuya mesaj yayınlar | topic_name (string) message_type (string) data (dict) |
status |
| Araç | Açıklama | Girdiler | Çıktılar |
|---|---|---|---|
ros2_service_list |
Mevcut servislerin listesini döndürür | – | service_name (string) service_type (string) request_fields (array) |
ros2_service_call |
ROS 2 servisini çağırır | service_name (string) service_type (string) fields (array) force_call (bool, varsayılan: false) |
result (string) error (string, varsa) |
| Araç | Açıklama | Girdiler | Çıktılar |
|---|---|---|---|
ros2_list_actions |
Türleri ve istek alanlarıyla birlikte mevcut ROS 2 eylemlerinin listesini döndürür | – | actions[] (array) └ name (string) └ types[] (string dizisi) └ request_fields (array) |
ros2_send_action_goal |
Bir hedefe eylem hedefi gönderir. İsteğe bağlı olarak sonucu bekler. | action_name (string) action_type (string) goal_fields (object) wait_for_result (bool, varsayılan: false) timeout_sec (number, varsayılan: 60.0) |
accepted (bool) goal_id (string|null) send_goal_stamp (object|null) waited (bool) result_timeout_sec (number|null) status_code (int|null) status (string|null) result (object|null) | error (string) |
ros2_cancel_action_goal |
Belirli bir hedefi veya bir eylemin tüm hedeflerini iptal eder | action_name (string) goal_id_hex (string, cancel_all=false ise gerekli) cancel_all (bool, varsayılan: false) stamp_sec (int, varsayılan: 0) stamp_nanosec (int, varsayılan: 0) wait_timeout_sec (number, varsayılan: 3.0) |
service (string) return_code (int) return_code_text (string) goals_canceling[] (array of {goal_id, stamp}) | error (string) |
ros2_action_request_result |
GetResult aracılığıyla verilen bir hedefin SONUCUNU bekler | action_name (string) action_type (string) goal_id_hex (string, 32 karakterli UUID) timeout_sec (number|null, varsayılan: 60.0) wait_for_service_sec (number, varsayılan: 3.0) |
service (string) goal_id (string) waited (bool) result_timeout_sec (number|null) status_code (int|null) status (string|null) result (object|null) | error (string) |
ros2_action_subscribe_feedback |
Bir eylem için geri bildirim mesajlarına abone olur. Goal_id'ye göre filtreleyebilir. Süre veya maksimum sayı için mesajlar toplar. | action_name (string) action_type (string) goal_id_hex (string|null) duration_sec (number, varsayılan: 5.0) max_messages (int, varsayılan: 100) |
topic (string) action_type (string) goal_id_filter (string|null) duration_sec (number) messages[] (array of {goal_id, feedback, recv_stamp}) | error (string) |
ros2_action_subscribe_status |
Bir eylemin durum konusuna abone olur ve toplanan durum çerçevelerini döndürür | action_name (string) duration_sec (number, varsayılan: 5.0) max_messages (int, varsayılan: 100) |
topic (string) duration_sec (number) frames[] (array of {stamp, statuses[]}) | error (string) |
MCP sunucuları stdio üzerinden çalıştığı için hata ayıklama zor olabilir. En iyi hata ayıklama deneyimi için MCP Inspector kullanmanızı şiddetle tavsiye ederiz.
MCP Inspector'u bu komutla npm ile başlatabilirsiniz:
npx @modelcontextprotocol/inspector uv --directory /path/to/ros2_mcp run mcp_ros_2_server
Başladığında, Inspector hata ayıklamaya başlamak için tarayıcınızda erişebileceğiniz bir URL görüntüleyecektir.
Bu sunucuyu yapay zeka tarafından desteklenen ROS 2 geliştirmesini hızlı ve güvenilir hale getirmek için inşa ettik. Dahili olarak, ajanların mesaj türlerini keşfetmesi, konulara yayınlanması/abone olması ve servisleri çağırması için basit bir yol bulmamız gerekiyordu — boilerplate veya hatalı ağ olmadan. Bu birkaç çekirdek tasarım hedefine yol açtı:
Bunu dahili olarak denedikten sonra, daha geniş ROS 2 topluluğunun yapay zeka ile daha hızlı inşa etmesine yardımcı olmak için projeyi açık kaynak hale getirdik. Şimdi yalnızca geliştirme için değil, aynı zamanda robotları kontrol etmek, QoS deneyleri çalıştırmak ve canlı verileri ve robot/sürü durumunu analiz etmek için de kullanışlıdır. Proje aktif olarak sürdürülüyor — özellikler ve geliştirmeler kullanıcı geri bildirimine dayanarak düzenli olarak sevk edilir. Bu proje size yardımcı olursa lütfen depoyu yıldızlayın ve kendi durumunuzu paylaşın!
AI destekli geliştirme için yapay zeka tabanlı görev yönetim sistemi. PRD ayrıştırma, görev genişletme, çoklu provider desteği (Claude, OpenAI, Gemini, Perplexity, xAI) ve optimize edilmiş context kullanımı için seçmeli tool yükleme özelliklerine sahiptir.
Kodlama ajanlarına Figma verilerine doğrudan erişim sağlayarak tasarım implementasyonunu tek adımda tamamlamalarını sağlar.
Yüksek performanslı kod zekası MCP sunucusu. Codebase'leri kalıcı bir knowledge graph'e indeksler — ortalama repo milisaniyeler içinde. 66 dil desteği, sub-ms sorgular, %99 daha az token. Tek statik binary, hiç bağımlılık yok.
gitmcp.io, herhangi bir GitHub repository veya projeye bağlanıp belgelendirme yapabilen genel amaçlı bir remote MCP server'ıdır.
Android/iOS uygulamaları ve cihazların otomasyon, geliştirme ile app scraping işlemleri için MCP Server. iPhone, Google Pixel, Samsung gibi simülatör, emülatör ve fiziksel cihazları destekler.
21st.dev'in en iyi tasarım mühendislerinden ilham alarak özel olarak hazırlanmış UI bileşenleri oluşturun.