MCP

تعداد المنافذ وأتمتة تدفقات التسلسل عبر serial-mcp-server

لمساعد أو سكربت يحتاج المنافذ التسلسلية المحلية ووحدات ماكرو JSON لإعادة التوقيت. يلزم Rust 1.74+. أولًا list-ports؛ لا تكتب منفذًا مجهولًا.

Official source · serial-mcp-server

Install

cargo build --release

لمن يناسب

إذا أردت أن يصل مساعد أو سكربت إلى المنفذ التسلسلي/UART، وأن يصلح المسار نفسه أداة MCP وسطر أوامر، فإن serial-mcp-server يناسب. يقدّم خدمة MCP stdio وCLI قابلًا للسكربت لـ CI ولـ agent skill بلا إعداد MCP. هدف الإصدار الحالي هو 0.3.0.

يناسب من لديه Rust 1.74 أو أحدث على هذا الجهاز، ويستطيع تقديم جهاز تسلسلي أو محول USB إلى تسلسلي أثناء عمل العتاد، ولديه صلاحية النظام لذلك المنفذ. المستودع:

https://github.com/adancurusul/serial-mcp-server

إن أردت النقر في المتصفح فقط بلا بيئة تجميع فتوقف هنا — المدخل الرسمي هو الاستنساخ ثم cargo build --release.

إكمال أول محاولة في 3 دقائق

المسار الرئيسي الرسمي هو التجميع من المصدر. الشرط السابق: Rust 1.74+. في المرة الأولى لا توصل جهازًا حقيقيًا: عدّد المنافذ المحلية فقط حتى لا تكتب منفذًا تسلسليًا بالخطأ.

موضع التثبيت هو جذر المستودع المستنسخ:

git clone https://github.com/adancurusul/serial-mcp-server.git
cd serial-mcp-server
cargo build --release

الثنائي في target/release/serial-mcp-server. يمكن أيضًا cargo install --path . --locked إلى PATH، لكن في المرة الأولى يكفي الثنائي المبنى في المستودع.

أول استدعاء منخفض المخاطر:

serial-mcp-server list-ports --json

هذا تعداد للقراءة فقط؛ لا يكتب بيانات إلى الجهاز. يمكن أيضًا تشغيل serial-mcp-server --help أولًا للتأكد من وجود الأمر. لا تعامل عناصر نائبة للمنفذ في الوثائق كاسم جهاز حقيقي للكتابة.

علامة نجاح يمكن ملاحظتها: list-ports --json يطبع JSON للمنافذ (قد يكون فارغًا) وتخرج العملية بشكل طبيعي. إن نقصت الصلاحية فحل صلاحية نظام التشغيل للمنفذ التسلسلي المختار أولًا؛ لا تبدّل إلى مشغّل غير مكتوب.

حالات الاستخدام

الحالة 1: انظر أي منافذ موجودة ثم اختبر واحدًا. الأوامر المقابلة هي list-ports --json وprobe مع --baud 115200 --json. يجب أن تأتي أسماء المنافذ من ذلك الإخراج؛ لا تكتب مسارًا مختلقًا يدويًا. probe يصل إلى العتاد؛ أكّد أن الجهاز موصول قبل التنفيذ.

الحالة 2: اجمع تسلسلًا زمنيًا متعدد الخطوات في ماكرو JSON. تحتاج الأجهزة غالبًا: إرسال أمر، انتظار بضع مللي ثانية، قراءة موجه أو رد، ثم إرسال التالي. حزمة الماكرو تسجّل تلك العملية ليتمكن شخص أو CLI أو مساعد من macro validate وmacro list وmacro plan والمحاكاة بلا عتاد. على جانب MCP يوجد أيضًا تحميل / تعداد / تفريغ حزم الماكرو في الذاكرة وplan وrun. macro run أو write/read الحقيقي يشغّل منفذًا حقيقيًا؛ أكّد الكابل أولًا.

حدود الاستخدام

أزال 0.3.0 Quick من الواجهة العامة؛ يجب كتابة أسلوب Quick كوحدات ماكرو. لا تواصل البحث عن واجهة Quick.

بيانات المثال الافتراضية لـ write هي H مع --read --timeout-ms 1000 --json؛ ذلك يرسل بيانات إلى المنفذ. مقتطفات المهلة ومعدل البود تعرض فقط 115200 و1000 ms وليست قيمًا افتراضية آمنة لكل جهاز.

لا واجهة رسومية ولا منفذ تسلسلي سحابي مكتوب. MCP هو stdio. لم يُسمَّ عميل. يمكن محاكاة الماكرو أولًا، لكن run قد يغيّر حالة الجهاز. إن نقصت الصلاحية أو انعدم المشغّل تفشل أوامر العتاد.