انتقل إلى المحتوى الرئيسي

كيفية تكوين خادم MCP بمعلمة بيئية في Cursor

يتيح لك تكوين خوادم بروتوكول سياق النموذج (MCP) بمعلمات بيئية في Cursor تمرير المعلومات الحساسة بشكل آمن وتخصيص سلوك الخادم. يقدم هذا الدليل تعليمات مفصلة حول إعداد وإدارة المتغيرات البيئية لخوادم MCP الخاصة بك.

مقدمة لتكوين بيئة خادم MCP

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

  • تمرير مفاتيح API ورموز المصادقة بشكل آمن
  • تكوين سلوك الخادم دون تعديل الشفرة البرمجية
  • إعداد بيئات مختلفة (تطوير، اختبار، إنتاج)
  • تخصيص وظائف الخادم بناءً على سياق النشر

لماذا تستخدم المعلمات البيئية؟

توفر المعلمات البيئية العديد من المزايا:

  1. الأمان: إبقاء المعلومات الحساسة خارج قاعدة الشفرة البرمجية
  2. المرونة: تغيير التكوين دون تعديل الشفرة البرمجية
  3. قابلية النقل: تشغيل نفس الخادم في بيئات مختلفة
  4. فصل المسؤوليات: إبقاء التكوين منفصلاً عن التنفيذ

فهم تكوين خادم MCP

قبل إضافة معلمات بيئية، من المهم فهم البنية الأساسية لتكوين خادم MCP في Cursor.

بنية ملف تكوين MCP

يتم تكوين خوادم MCP في ملف JSON بالبنية التالية:

{
"mcpServers": {
"server-name": {
"command": "node",
"args": ["/path/to/server.js"],
"env": {
"KEY1": "value1",
"KEY2": "value2"
},
"disabled": false,
"autoApprove": ["tool1", "tool2"]
}
}
}

المكونات الرئيسية:

  • server-name: معرّف فريد لخادم MCP الخاص بك
  • command: الأمر لتشغيل الخادم (مثل node، python)
  • args: الوسائط التي يتم تمريرها إلى الأمر
  • env: المتغيرات البيئية التي يتم تمريرها إلى عملية الخادم
  • disabled: ما إذا كان الخادم معطلاً
  • autoApprove: قائمة بالأدوات التي لا تتطلب موافقة صريحة

دليل التكوين خطوة بخطوة

1. تحديد موقع ملف تكوين MCP الخاص بك

يعتمد موقع ملف تكوين MCP على نظام التشغيل الخاص بك:

ويندوز:

%APPDATA%\Code\User\globalStorage\tencent-cloud.coding-copilot\settings\Craft_mcp_settings.json

ماك:

~/Library/Application Support/Code/User/globalStorage/tencent-cloud.coding-copilot/settings/Craft_mcp_settings.json

لينكس:

~/.config/Code/User/globalStorage/tencent-cloud.coding-copilot/settings/Craft_mcp_settings.json

2. تحرير ملف التكوين

  1. افتح ملف التكوين في محرر النصوص المفضل لديك
  2. إذا لم يكن الملف موجودًا أو كان فارغًا، قم بإنشائه بالبنية التالية:
{
"mcpServers": {}
}
  1. أضف أو عدّل تكوين الخادم الخاص بك:
{
"mcpServers": {
"my-server": {
"command": "node",
"args": ["/path/to/my-server.js"],
"env": {
"API_KEY": "your-api-key-here",
"DEBUG": "true",
"PORT": "3000"
},
"disabled": false
}
}
}

3. إضافة معلمات بيئية

لإضافة معلمات بيئية إلى خادم MCP الخاص بك:

  1. حدد المتغيرات البيئية التي يحتاجها الخادم
  2. أضفها إلى كائن env في تكوين الخادم
  3. احفظ ملف التكوين

مثال مع متغيرات بيئية متعددة:

"env": {
"OPENAI_API_KEY": "sk-abcdef123456",
"SERVER_PORT": "3000",
"LOG_LEVEL": "info",
"CACHE_ENABLED": "true",
"MAX_TOKENS": "4096",
"MODEL_NAME": "gpt-4",
"TIMEOUT_MS": "30000"
}

4. استخدام المتغيرات البيئية في خادم MCP الخاص بك

في شفرة خادم MCP الخاص بك، يمكنك الوصول إلى هذه المتغيرات البيئية:

جافاسكريبت/نود.جيه إس:

const apiKey = process.env.API_KEY;
const debug = process.env.DEBUG === 'true';
const port = parseInt(process.env.PORT || '3000', 10);

console.log(`Starting server with API key ${apiKey} on port ${port}`);
if (debug) {
console.log('Debug mode enabled');
}

بايثون:

import os

api_key = os.environ.get('API_KEY')
debug = os.environ.get('DEBUG') == 'true'
port = int(os.environ.get('PORT', '3000'))

print(f"Starting server with API key {api_key} on port {port}")
if debug:
print("Debug mode enabled")

تقنيات التكوين المتقدمة

استخدام ملفات البيئة

للتكوينات الأكثر تعقيدًا، يمكنك استخدام ملفات البيئة:

  1. قم بإنشاء ملف .env:
API_KEY=your-api-key-here
DEBUG=true
PORT=3000
  1. قم بتحديث تكوين خادم MCP الخاص بك:
{
"mcpServers": {
"my-server": {
"command": "node",
"args": ["/path/to/my-server.js"],
"env": {
"ENV_FILE": "/path/to/.env"
}
}
}
}
  1. في شفرة الخادم الخاص بك، قم بتحميل ملف البيئة:

جافاسكريبت/نود.جيه إس (باستخدام dotenv):

require('dotenv').config({ path: process.env.ENV_FILE });

// الآن يمكنك الوصول إلى المتغيرات
const apiKey = process.env.API_KEY;

بايثون (باستخدام python-dotenv):

import os
from dotenv import load_dotenv

load_dotenv(os.environ.get('ENV_FILE'))

# الآن يمكنك الوصول إلى المتغيرات
api_key = os.environ.get('API_KEY')

توسيع المتغيرات البيئية

يمكنك الإشارة إلى متغيرات بيئية أخرى ضمن التكوين الخاص بك:

"env": {
"BASE_URL": "https://api.example.com",
"API_ENDPOINT": "${BASE_URL}/v1/data",
"HOME_DIR": "${HOME}/projects"
}

استخدام متغيرات بيئة النظام

يمكنك الإشارة إلى متغيرات بيئة النظام في التكوين الخاص بك:

"env": {
"USER_HOME": "${HOME}",
"SYSTEM_TEMP": "${TEMP}",
"CURRENT_USER": "${USER}"
}

أفضل ممارسات الأمان

عند العمل مع معلمات بيئية، خاصة للمعلومات الحساسة مثل مفاتيح API، اتبع أفضل ممارسات الأمان هذه:

1. لا تقم أبدًا بإرسال معلومات حساسة

  • استخدم .gitignore لاستبعاد ملفات البيئة
  • لا ترسل ملفات التكوين مع مفاتيح API الفعلية
  • استخدم قيم مؤقتة في الأمثلة المرسلة

2. استخدم التشفير للقيم الحساسة

  • فكر في تشفير المتغيرات البيئية الحساسة
  • استخدم نظام إدارة مفاتيح آمن عندما يكون ذلك ممكنًا

3. قيّد الوصول إلى ملفات التكوين

  • قم بتعيين أذونات ملف مناسبة
  • قيّد من يمكنه عرض وتحرير ملفات التكوين

4. قم بتدوير الأسرار بانتظام

  • قم بتغيير مفاتيح API والرموز بشكل دوري
  • قم بتحديث ملفات التكوين عند تغيير الأسرار

5. تحقق من صحة المتغيرات البيئية

في شفرة الخادم الخاص بك، تحقق من صحة المتغيرات البيئية قبل استخدامها:

function validateEnv() {
const requiredVars = ['API_KEY', 'SERVER_PORT'];
const missing = requiredVars.filter(varName => !process.env[varName]);

if (missing.length > 0) {
throw new Error(`Missing required environment variables: ${missing.join(', ')}`);
}
}

validateEnv();

استكشاف المشكلات الشائعة وإصلاحها

المتغيرات البيئية غير متاحة

المشكلة: المتغيرات البيئية المكونة في إعدادات MCP غير متاحة في الخادم الخاص بك.

الحلول:

  • تحقق من صحة بناء جملة ملف التكوين
  • تأكد من بدء تشغيل الخادم بشكل صحيح
  • أعد تشغيل Cursor بعد إجراء تغييرات على التكوين
  • تحقق من سجلات الخادم للأخطاء المتعلقة بالبيئة

ملف التكوين غير موجود

المشكلة: لا يمكن لـ Cursor العثور على ملف تكوين MCP الخاص بك.

الحلول:

  • تحقق من صحة مسار الملف لنظام التشغيل الخاص بك
  • قم بإنشاء بنية الدليل إذا لم تكن موجودة
  • تحقق من أذونات الملف
  • أعد تشغيل Cursor بعد إنشاء الملف

تنسيق JSON غير صالح

المشكلة: ملف التكوين يحتوي على أخطاء في بناء جملة JSON.

الحلول:

  • تحقق من صحة JSON باستخدام أداة التحقق من صحة JSON
  • تحقق من الفواصل أو الأقواس أو علامات الاقتباس المفقودة
  • تأكد من أن جميع أسماء الخصائص بين علامتي اقتباس مزدوجتين
  • قم بإزالة الفواصل الزائدة

تعطل الخادم عند بدء التشغيل

المشكلة: يتعطل خادم MCP مباشرة بعد بدء التشغيل.

الحلول:

  • تحقق من سجلات الخادم للحصول على رسائل الخطأ
  • تأكد من توفير جميع المتغيرات البيئية المطلوبة
  • تأكد من أن قيم المتغيرات البيئية بالتنسيق الصحيح
  • تحقق من مشكلات المسار في مراجع الملفات

أمثلة لحالات الاستخدام الشائعة

1. تكامل OpenAI API

{
"mcpServers": {
"openai-tools": {
"command": "node",
"args": ["/path/to/openai-server.js"],
"env": {
"OPENAI_API_KEY": "sk-your-key-here",
"MODEL": "gpt-4",
"MAX_TOKENS": "8192",
"TEMPERATURE": "0.7"
}
}
}
}

2. اتصال قاعدة البيانات

{
"mcpServers": {
"db-tools": {
"command": "python",
"args": ["/path/to/db-server.py"],
"env": {
"DB_HOST": "localhost",
"DB_PORT": "5432",
"DB_NAME": "mydb",
"DB_USER": "user",
"DB_PASSWORD": "password",
"CONNECTION_POOL_SIZE": "10"
}
}
}
}

3. إعدادات التطوير مقابل الإنتاج

{
"mcpServers": {
"api-tools": {
"command": "node",
"args": ["/path/to/api-server.js"],
"env": {
"NODE_ENV": "development",
"API_URL": "http://localhost:8080/api",
"CACHE_ENABLED": "false",
"LOG_LEVEL": "debug"
}
}
}
}

الخلاصة

يوفر تكوين خوادم MCP بمعلمات بيئية في Cursor طريقة مرنة وآمنة لتخصيص سلوك الخادم وإدارة المعلومات الحساسة. باتباع الخطوات وأفضل الممارسات الموضحة في هذا الدليل، يمكنك إعداد وإدارة المتغيرات البيئية لخوادم MCP الخاصة بك بشكل فعال.

سواء كنت تتكامل مع واجهات برمجة تطبيقات خارجية، أو تتصل بقواعد بيانات، أو ببساطة تخصص سلوك الخادم، توفر المعلمات البيئية فصلاً نظيفًا بين التكوين والشفرة البرمجية، مما يعزز الأمان وقابلية الصيانة.

موارد إضافية