/ الدليل / الملعب / AWS Labs MCP
● رسمي awslabs 🔑 يتطلب مفتاحك

AWS Labs MCP

بواسطة awslabs · awslabs/mcp

مجموعة AWS Labs الرسمية — خادم MCP واحد لكل خدمة (S3، Lambda، CloudFormation، ECS، RDS، CloudWatch). للقراءة فقط بشكل افتراضي.

مجموعة AWS Labs MCP. بدلاً من خادم واحد ضخم، توفر AWS عائلة: aws-api (نمط CLI عام)، بالإضافة إلى خوادم متخصصة لـ S3، Lambda، CloudFormation، ECS، RDS، CloudWatch، Cost Explorer، وغيرها. جميعها للقراءة أولاً؛ الكتابة تتطلب موافقة صريحة عبر علامات env.

لماذا تستخدمه

الميزات الأساسية

عرض مباشر

كيف يبدو في الممارسة

aws.replay ▶ جاهز
0/0

التثبيت

اختر العميل

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "aws": {
      "command": "uvx",
      "args": [
        "awslabs.aws-api-mcp-server"
      ]
    }
  }
}

افتح Claude Desktop → Settings → Developer → Edit Config. أعد التشغيل بعد الحفظ.

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "aws": {
      "command": "uvx",
      "args": [
        "awslabs.aws-api-mcp-server"
      ]
    }
  }
}

يستخدم Cursor نفس مخطط mcpServers مثل Claude Desktop. إعدادات المشروع أولى من الإعدادات العامة.

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "aws": {
      "command": "uvx",
      "args": [
        "awslabs.aws-api-mcp-server"
      ]
    }
  }
}

انقر على أيقونة MCP Servers في شريط Cline الجانبي، ثم "Edit Configuration".

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "aws": {
      "command": "uvx",
      "args": [
        "awslabs.aws-api-mcp-server"
      ]
    }
  }
}

نفس الصيغة مثل Claude Desktop. أعد تشغيل Windsurf لتطبيق التغييرات.

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "aws",
      "command": "uvx",
      "args": [
        "awslabs.aws-api-mcp-server"
      ]
    }
  ]
}

يستخدم Continue مصفوفة من كائنات الخادم بدلاً من خريطة.

~/.config/zed/settings.json
{
  "context_servers": {
    "aws": {
      "command": {
        "path": "uvx",
        "args": [
          "awslabs.aws-api-mcp-server"
        ]
      }
    }
  }
}

أضف إلى context_servers. يعيد Zed التحميل تلقائيًا عند الحفظ.

claude mcp add aws -- uvx awslabs.aws-api-mcp-server

أمر من سطر واحد. تحقق باستخدام claude mcp list. احذف باستخدام claude mcp remove.

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

استخدامات عملية: AWS Labs MCP

تصنيف إنذار CloudWatch بربط السجلات والمقاييس والنشرات الحديثة

👤 مهندسو SRE والمهندسون في الخدمة ⏱ ~15 min intermediate

متى تستخدمه: للتو أطلق إنذار وتريد الانتقال من 'أي خدمة، أي نشرة، أي سطر سجل' دون التنقل عبر وحدة التحكم.

المتطلبات الأساسية
  • بيانات اعتماد AWS مع قراءة CloudWatch + CloudFormationaws sso login بدور يحتوي على سياسة ReadOnlyAccess المدارة
  • خادم aws-cloudwatch-mcp قيد التشغيلuvx awslabs.cloudwatch-mcp-server — أو ثبّت الحزمة
الخطوات
  1. اسحب تفاصيل الإنذار والموارد المتأثرة
    صف إنذار CloudWatch 'prod-api-5xx-high'. ما الموارد التي يراقبها، ما الحد، ما الحالة الحالية؟✓ تم النسخ
    → إعدادات الإنذار بالإضافة إلى سجل الحالة (متى تغيّرت)
  2. استعلم عن السجلات حول الخرق
    شغّل استعلام Logs Insights على مجموعة السجل /aws/ecs/prod-api من 10 دقائق قبل إطلاق الإنذار إلى الآن. ابحث عن أسطر سجل ERROR مجموعة حسب قالب الرسالة.✓ تم النسخ
    → قوالب الأخطاء الرئيسية مع الأعداد
  3. ربط مع النشرات الحديثة
    اسرد نشرات CodeDeploy إلى خدمة prod-api في آخر 6 ساعات. هل أي وقت نشرة يتوافق مع بداية خطأ 5xx؟✓ تم النسخ
    → خط زمني للنشرة مصطف مع بداية الأخطاء

النتيجة: فرضية ملموسة مثل 'النشرة abc123 الساعة 14:22 UTC تتوافق مع بداية 5xx الساعة 14:23' مع الأدلة التي تدعمها.

المزالق
  • استعلامات Logs Insights ضد مجموعة سجل كبيرة دون نافذة زمنية تكلف أموالاً حقيقية — ادرج دائماً حدود @timestamp أضيق من ساعة واحدة؛ لن يمنعك MCP من الفواتير $$$
  • موارد حسابات متعددة تحتاج ملف التعريف الصحيح للبيانات — عيّن متغير AWS_PROFILE env لكل استدعاء خادم؛ لا تفترض أن ملف التعريف الافتراضي هو ما تريده
اجمعها مع: sentry · github

تدقيق حزمة S3 للعثور على الكائنات العامة وحالة التشفير

👤 مهندسو الأمان، المدققون للامتثال ⏱ ~20 min intermediate

متى تستخدمه: قبل اختبار الاختراق أو التدقيق، تريد جرد سريع لموضع الحزمة.

المتطلبات الأساسية
  • أذونات S3:List و S3:GetBucket* — أرفق سياسة SecurityAudit المدارة (للقراءة فقط)
الخطوات
  1. اسرد الحزم واسحب سياساتها
    اسرد جميع حزم S3 في هذا الحساب. لكل منها، اسحب: إعداد Public Access Block، bucket ACL، سياسة الحزمة، إعداد التشفير الافتراضي.✓ تم النسخ
    → جدول موضع الحزمة
  2. علّم الحزم المحفوفة بالمخاطر
    أبرز أي حزمة حيث يكون Public Access Block مُطفأً، أو يكون التشفير مُطفأً، أو تحتوي سياسة الحزمة على Principal: '*'.✓ تم النسخ
    → قائمة قصيرة من الحزم المحفوفة بالمخاطر مع الأسباب
  3. عيّنة قليلة من الكائنات من الحزم المعلّمة
    لكل حزمة معلّمة، اسرد أول 5 كائنات وأظهر ACLs الخاصة بها. هل أي منها قابل للقراءة من الكل؟✓ تم النسخ
    → تأكيد على مستوى الكائن وليس فقط على مستوى الحزمة

النتيجة: قائمة مرتبة حسب الأولوية للإصلاح لمراجعتك الأمنية.

المزالق
  • سياسات الحزمة يمكن أن تمنح الوصول العام حتى عندما تبدو ACLs خاصة — قيّم كليهما؛ استخدم GetPublicAccessBlock و GetBucketPolicyStatus APIs، وليس فقط ACLs
اجمعها مع: filesystem

اكتشف لماذا ارتفعت فاتورة AWS لهذا الشهر

👤 قادة الهندسة، عمليات المالية ⏱ ~25 min intermediate

متى تستخدمه: الفاتورة مرتفعة بنسبة 30% ولديك 48 ساعة للشرح للمالية.

المتطلبات الأساسية
  • الوصول إلى Cost Explorer API — فعّل Cost Explorer في وحدة التحكم للفواتير؛ امنح ce:GetCostAndUsage لدورك
الخطوات
  1. احصل على فروقات التكلفة اليومية
    اسحب إجمالي التكلفة المدمجة لكل يوم في آخر 60 يوماً. حدد أي يوم ارتفعت فيه التكلفة بأكثر من 20% مقابل المتوسط المتحرك لـ 7 أيام.✓ تم النسخ
    → سلسلة التكلفة اليومية بالإضافة إلى الأيام الشاذة المعلّمة
  2. قسّم حسب الخدمة للشذوذ
    لأكبر يوم شاذ، قسّم التكلفة حسب الخدمة. ما الخدمة التي دفعت الارتفاع؟✓ تم النسخ
    → تم تحديد محرك مستوى الخدمة
  3. قسّم أكثر حسب الموارد
    لتلك الخدمة، قسّم حسب نوع الاستخدام وعلامة الموارد. ما الموارس المحددة المسؤولة؟✓ تم النسخ
    → المسؤول على مستوى الموارد — مثل 'nat gateway في us-east-1 معالج 12 TB'

النتيجة: إجابة بفقرة واحدة للمالية: 'الارتفاع كان X بسبب Y؛ الإصلاح هو Z'.

المزالق
  • Cost Explorer يعاني من تأخر يصل إلى 24 ساعة — تكاليف اليوم ليست كاملة بعد — قيّد الاستعلامات للانتهاء قبل يوم واحد على الأقل؛ لاحظ التأخر بوضوح في إجابتك
  • كل استدعاء Cost Explorer API يكلف $0.01 — لا تحلقّ الاستعلامات في نص برمجي دون حدود؛ لن يمنعك MCP
اجمعها مع: filesystem

تصحيح Lambda الفاشل بقراءة استدعاءاته الأخيرة وسجلاته

👤 مهندسو Serverless ⏱ ~15 min intermediate

متى تستخدمه: Lambda يرمي أخطاء بشكل متقطع وتريد رؤية المدخلات والأخطاء واتجاهات المدة.

الخطوات
  1. صف الدالة
    صف دالة Lambda my-api-handler. ما وقت التشغيل والذاكرة والمهلة الزمنية والتعديل الأخير؟✓ تم النسخ
    → لقطة الإعدادات
  2. اسحب الأخطاء الأخيرة من CloudWatch Logs
    Logs Insights: لـ /aws/lambda/my-api-handler في آخر ساعتين، أظهر أسطر الأخطاء مع requestId والمدة ووقت التهيئة. جميع حسب نوع الخطأ.✓ تم النسخ
    → فئات الخطأ مع requestIds تمثيلية
  3. اسحب طلب واحد من البداية إلى النهاية
    اختر requestId فاشل واحد. اسحب تدفق السجل الكامل لهذا الاستدعاء — START، جميع الطبعات، END، REPORT. خبرني ما حدث.✓ تم النسخ
    → سرد استدعاء واحد مع توقيت البدء البارد ومسبب الخطأ

النتيجة: مسبب خطأ محدد بالإضافة إلى مسار الإصلاح (ذاكرة أكثر، ترقية dep، إعادة محاولة الإعداد، إلخ).

المزالق
  • الزمن المرصود المتزامن يشوه أرقام البدء البارد — صفّي أسطر REPORT حيث يكون Init Duration موجوداً — تلك هي البدايات الباردة؛ تجاهلها إذا كنت تصحح استدعاءات دافئة
اجمعها مع: github · sentry

اكتشف الانحراف بين مكدسات CloudFormation والموارد المباشرة

👤 مهندسو المنصات، devops ⏱ ~30 min advanced

متى تستخدمه: تشك في أن شخصاً ما نقر في وحدة التحكم وغيّر موارد خارج IaC.

الخطوات
  1. اسرد المكدسات وفعّل كشف الانحراف
    اسرد جميع مكدسات CloudFormation النشطة. لكل منها، ابدأ كشف الانحراف واستقصِ حتى تكتمل جميعها.✓ تم النسخ
    → حالة الانحراف لكل مكدس: IN_SYNC / DRIFTED / NOT_CHECKED
  2. احفر في المكدسات المنحرفة
    لكل مكدس بحالة DRIFTED، اسرد الموارد التي انحرفت والخاصية المختلفة.✓ تم النسخ
    → الفروقات على مستوى الموارد (مثل 'SG يسمح بـ 0.0.0.0/0 لكن القالب يقول 10.0.0.0/8')
  3. قرر: حدّث القالب أم أعد
    لكل انحراف، أوصِ: هل الحالة المباشرة مقصودة (حدّث القالب ليطابق) أم عرضية (أعد الموارد)؟ اجعلها على أساس طبيعة التغيير.✓ تم النسخ
    → توصية لكل انحراف مع التفكير

النتيجة: IaC الخاص بك متزامن مع الواقع، مع سجل القرارات.

المزالق
  • كشف الانحراف لا يمسك كل خاصية لكل نوع موارد — تحقق من مستندات CloudFormation لقائمة 'unsupported drift'؛ أكمل بقواعد AWS Config للتغطية الشاملة
اجمعها مع: github

التركيبات

اجمعها مع خوادم MCP أخرى لتحقيق نتائج x10

aws + github

ربط deploy PR مع إنذار CloudWatch الناتج — تحديد الالتزام الكاسر

إنذار CloudWatch prod-latency-p99 أطلق الساعة 14:22. ابحث عن GitHub PR المدمج إلى main الأقرب لذلك الوقت، اختصر الفرق، وخبرني أي جزء غالباً ما تسبب في الانحدار.✓ تم النسخ
aws + postgres

لـ Postgres المستضاف على RDS، اجمع قابلية الملاحظة على مستوى AWS مع الوصول إلى SQL

إنذار RDS 'cpu > 80%' على prod-db-01. ربط مع pg_stat_statements — أي استعلامات كانت تعمل معظم الوقت أثناء الارتفاع؟✓ تم النسخ

تصدير جرد موارد AWS إلى ملفات CSV محلية لمستندات الامتثال

صدّر كل حزمة S3 مع إعداد التشفير والإعدادات العامة للوصول إلى /reports/s3-audit-2026-04.csv.✓ تم النسخ

الأدوات

ما يوفره هذا الـ MCP

الأداةالمدخلاتمتى تستدعيهاالتكلفة
call_aws service: str, operation: str, parameters: object معادل AWS CLI عام — أي خدمة، أي عملية قراءة usually free; some services (CE) bill per call
describe_stack stack_name: str التفتيش على CloudFormation free
detect_stack_drift / describe_stack_drift_detection_status stack_name: str تحقق من انحراف IaC مقابل المباشر free
list_functions / get_function / invoke_function Lambda name, payload? إدارة واختبار Lambdas — استدعاء هو عملية كتابة، محمية invoke costs per Lambda pricing
list_buckets / get_object / list_objects_v2 S3 params جرد S3 والوصول إلى المحتوى standard S3 request pricing
start_query / get_query_results (Logs Insights) logGroupName, queryString, startTime, endTime تحليل السجل عبر مجموعة سجل واحدة أو أكثر $0.005 per GB scanned
get_metric_data CloudWatch metric query JSON سحب المقاييس الزمنية free tier applies
get_cost_and_usage TimePeriod, Granularity, GroupBy, Metrics استعلامات Cost Explorer $0.01 per API call
list_services / describe_services / list_tasks (ECS) cluster params التفتيش على مجموعة/خدمة ECS free
describe_db_instances (RDS) identifier? جرد RDS؛ استخدم postgres MCP للـ SQL الفعلي free

التكلفة والحدود

تكلفة التشغيل

حصة API
لكل خدمة. معظم استدعاءات describe/list مجانية؛ بعض APIs تفرض رسوماً لكل استدعاء (Cost Explorer $0.01، Logs Insights $0.005/GB الممسوحة)
الرموز لكل استدعاء
200-2000 رموز نموذجياً؛ نتائج Logs Insights يمكن أن تكون كبيرة — اضبط دائماً حد الصفوف
التكلفة المالية
MCP نفسه مجاني. فاتورة AWS الخاصة بك تعكس أي استدعاءات API يجريها الوكيل.
نصيحة
اربط النوافذ الزمنية، اربط صفوف النتائج، cache output describe-* لكل جلسة. حلقة Logs Insights غير حذرة على مدى 30 يوماً من السجلات المفصلة يمكن أن تمسح TB من البيانات.

الأمان

الصلاحيات والأسرار ونطاق الأثر

الحد الأدنى من الصلاحيات: arn:aws:iam::aws:policy/ReadOnlyAccess (للاستخدام للقراءة فقط)
تخزين بيانات الاعتماد: سلسلة بيانات الاعتماد القياسية الخاصة بـ AWS — متغيرات env، ~/.aws/credentials، SSO، أو دور المثيل. لا تبرمج أبداً المفاتيح.
نقل البيانات الخارجي: مباشرة إلى نقاط نهاية AWS API (إقليمية). لا أطراف ثالثة.
لا تمنح أبدًا: AdministratorAccess iam:* write kms:Decrypt on sensitive keys without scoping

استكشاف الأخطاء

الأخطاء الشائعة وحلولها

Could not load credentials from any providers

شغّل aws sts get-caller-identity — إذا فشل، أصلح إعدادات CLI أولاً. MCP يستخدم نفس السلسلة.

تحقق: aws sts get-caller-identity
AccessDenied on a Describe call

دورك ينقصه الإذن المحدد. اقرأ الخطأ — يسمي الإجراء المفقود. أضف إلى الدور أو بدّل ملف التعريف.

Throttling: Rate exceeded

أنت تضرب حدود API الخدمة (مثل CloudFormation 1 req/s). تراجع؛ معظم SDKs تعاد محاولة بشكل تلقائي لكن الحلقات الضخمة تتجاوز. أضف sleeps صريح في prompts متعددة الاستدعاءات.

uvx can't find awslabs.<server>

صيغة اسم الحزمة: awslabs.<name>-mcp-server. تحقق من README مستودع awslabs/mcp للقائمة الحالية — تغيرت الأسماء في أواخر 2025.

تحقق: uvx --help | head

البدائل

AWS Labs MCP مقابل البدائل

البديلمتى تستخدمهاالمقايضة
Cloudflare MCPتعمل على Cloudflare (Workers/R2/D1) بدلاً من AWSسحابة مختلفة؛ ليست بديلاً مباشراً
Terraform MCP (community)تريد workflows موجهة IaC عبر السحاباتتغطية أقل لتصحيح حالة المباشر
Direct `aws` CLI via a shell MCPتريد Claude لتشغيل أي أمر CLI، وليس فقط الأوامر المعتمَدة مسبقاًسطح هجوم أكبر بكثير؛ تجنب إلا إذا كان معزولاً

المزيد

الموارد

📖 اقرأ ملف README الرسمي على GitHub

🐙 تصفح القضايا المفتوحة

🔍 تصفح أكثر من 400 خادم MCP و Skills