|
| 1 | +{ |
| 2 | + "keep": [ |
| 3 | + "MCP", |
| 4 | + "Model Context Protocol", |
| 5 | + "MCPServer", |
| 6 | + "FastMCP", |
| 7 | + "ClientSession", |
| 8 | + "Context", |
| 9 | + "ctx", |
| 10 | + "stdio", |
| 11 | + "Streamable HTTP", |
| 12 | + "SSE", |
| 13 | + "JSON-RPC", |
| 14 | + "JSON", |
| 15 | + "OAuth", |
| 16 | + "PKCE", |
| 17 | + "JWT", |
| 18 | + "CIMD", |
| 19 | + "HTTP", |
| 20 | + "HTTPS", |
| 21 | + "TLS", |
| 22 | + "CORS", |
| 23 | + "URI", |
| 24 | + "URL", |
| 25 | + "ASGI", |
| 26 | + "WebSocket", |
| 27 | + "API", |
| 28 | + "SDK", |
| 29 | + "CLI", |
| 30 | + "IDE", |
| 31 | + "LLM", |
| 32 | + "SEP", |
| 33 | + "RFC", |
| 34 | + "Python", |
| 35 | + "TypeScript", |
| 36 | + "Node.js", |
| 37 | + "PyPI", |
| 38 | + "Pydantic", |
| 39 | + "Starlette", |
| 40 | + "FastAPI", |
| 41 | + "uvicorn", |
| 42 | + "httpx", |
| 43 | + "anyio", |
| 44 | + "asyncio", |
| 45 | + "trio", |
| 46 | + "pytest", |
| 47 | + "OpenTelemetry", |
| 48 | + "Inspector", |
| 49 | + "Claude", |
| 50 | + "GitHub", |
| 51 | + "VS Code", |
| 52 | + "Windows", |
| 53 | + "macOS", |
| 54 | + "Linux", |
| 55 | + "llms.txt", |
| 56 | + "2026-07-28", |
| 57 | + "2025-11-25", |
| 58 | + "2025-06-18", |
| 59 | + "2025-03-26" |
| 60 | + ], |
| 61 | + "terms": [ |
| 62 | + { |
| 63 | + "source": "tool", |
| 64 | + "target": "أداة", |
| 65 | + "note": "MCP callable primitive; plural أدوات. Keep Tools when naming the Inspector UI tab, and all code identifiers unchanged." |
| 66 | + }, |
| 67 | + { |
| 68 | + "source": "resource", |
| 69 | + "target": "مورد", |
| 70 | + "note": "Readable MCP data; plural موارد. A resource template is قالب مورد. Keep Resources and Resource Templates when naming actual UI tabs." |
| 71 | + }, |
| 72 | + { |
| 73 | + "source": "prompt", |
| 74 | + "target": "قالب توجيه", |
| 75 | + "note": "Reusable MCP message template, plural قوالب توجيه. First prose mention on a page may include (prompt). A general instruction to an LLM is توجيه; a UI confirmation prompt is مطالبة. Keep Prompts as a literal UI label." |
| 76 | + }, |
| 77 | + { |
| 78 | + "source": "sampling", |
| 79 | + "target": "أخذ العينات", |
| 80 | + "note": "MCP model-generation feature; first prose occurrence takes (sampling). Do not suggest it merely samples existing data. Wire identifiers remain unchanged." |
| 81 | + }, |
| 82 | + { |
| 83 | + "source": "roots", |
| 84 | + "target": "المجلدات الجذرية", |
| 85 | + "note": "Client-exposed directory roots; first prose mention takes (roots). Not mathematical roots or administrator privileges." |
| 86 | + }, |
| 87 | + { |
| 88 | + "source": "elicitation", |
| 89 | + "target": "استقاء المعلومات", |
| 90 | + "note": "Server requests user input through the client; first prose mention takes (elicitation). Preserve form/URL and push/pull distinctions." |
| 91 | + }, |
| 92 | + { |
| 93 | + "source": "capability", |
| 94 | + "target": "قدرة", |
| 95 | + "note": "Declared protocol capability; plural قدرات. A feature is ميزة, not necessarily a declared capability." |
| 96 | + }, |
| 97 | + { |
| 98 | + "source": "transport", |
| 99 | + "target": "وسيلة نقل", |
| 100 | + "note": "Protocol connection mechanism; plural وسائل نقل. stdio, Streamable HTTP, and SSE stay unchanged." |
| 101 | + }, |
| 102 | + { |
| 103 | + "source": "session", |
| 104 | + "target": "جلسة", |
| 105 | + "note": "Plural جلسات. Session identifiers and class names stay unchanged." |
| 106 | + }, |
| 107 | + { |
| 108 | + "source": "handler", |
| 109 | + "target": "دالة معالجة", |
| 110 | + "note": "Registered handler function; plural دوال معالجة. A handler body is جسم دالة المعالجة; avoid the hardware sense of processor." |
| 111 | + }, |
| 112 | + { |
| 113 | + "source": "dependency", |
| 114 | + "target": "اعتمادية", |
| 115 | + "note": "Plural اعتماديات, for packages and injected dependencies. Dependency injection is حقن الاعتماديات." |
| 116 | + }, |
| 117 | + { |
| 118 | + "source": "resolver", |
| 119 | + "target": "دالة حل الاعتمادية", |
| 120 | + "note": "Function supplying an injected parameter. Shorten to دالة الحل after the role is clear; preserve Resolve identifiers." |
| 121 | + }, |
| 122 | + { |
| 123 | + "source": "client", |
| 124 | + "target": "عميل", |
| 125 | + "note": "Plural عملاء; the MCP component inside a host, distinct from the user and host application." |
| 126 | + }, |
| 127 | + { |
| 128 | + "source": "server", |
| 129 | + "target": "خادم", |
| 130 | + "note": "Plural خوادم. Class and module names remain unchanged." |
| 131 | + }, |
| 132 | + { |
| 133 | + "source": "host", |
| 134 | + "target": "تطبيق مضيف", |
| 135 | + "note": "The user-facing MCP application containing clients, not the MCP server or a hosting machine. Shorten to المضيف when unambiguous." |
| 136 | + }, |
| 137 | + { |
| 138 | + "source": "request", |
| 139 | + "target": "طلب", |
| 140 | + "note": "Protocol/HTTP request; plural طلبات. A response is استجابة, a result is نتيجة." |
| 141 | + }, |
| 142 | + { |
| 143 | + "source": "token", |
| 144 | + "target": "رمز", |
| 145 | + "note": "OAuth: access token رمز وصول, refresh token رمز تحديث, bearer token رمز حامل. LLM token: وحدة نصية (token) on first use, then وحدة نصية. Do not conflate the two." |
| 146 | + }, |
| 147 | + { |
| 148 | + "source": "lifespan", |
| 149 | + "target": "دورة الحياة", |
| 150 | + "note": "Server startup/shutdown feature. Preserve lifespan= and other identifiers." |
| 151 | + }, |
| 152 | + { |
| 153 | + "source": "callback", |
| 154 | + "target": "دالة رد نداء", |
| 155 | + "note": "Plural دوال رد نداء. OAuth callback URL is عنوان URL لرد النداء. First prose mention may take (callback)." |
| 156 | + }, |
| 157 | + { |
| 158 | + "source": "deploy", |
| 159 | + "target": "نشر", |
| 160 | + "note": "Deploy a server: انشر الخادم. Deployment نشر; distinct from running locally, تشغيل." |
| 161 | + }, |
| 162 | + { |
| 163 | + "source": "library", |
| 164 | + "target": "مكتبة", |
| 165 | + "note": "Software library; plural مكتبات." |
| 166 | + }, |
| 167 | + { |
| 168 | + "source": "back-channel", |
| 169 | + "target": "قناة عكسية", |
| 170 | + "note": "Server-to-client calls during a request; first prose mention takes (back-channel). Preserve NoBackChannelError." |
| 171 | + }, |
| 172 | + { "source": "file", "target": "ملف", "note": "Plural ملفات." }, |
| 173 | + { |
| 174 | + "source": "user", |
| 175 | + "target": "مستخدم", |
| 176 | + "note": "Plural مستخدمون / مستخدمين according to case. Distinct from client." |
| 177 | + }, |
| 178 | + { |
| 179 | + "source": "escape hatch", |
| 180 | + "target": "منفذ للتحكم المباشر", |
| 181 | + "note": "Lower-level API mechanism for bypassing convenience-layer restrictions. Translate metaphor by its function." |
| 182 | + }, |
| 183 | + { |
| 184 | + "source": "type hint", |
| 185 | + "target": "تلميح نوع", |
| 186 | + "note": "Python typing hint; plural تلميحات الأنواع. Type annotation is تعليق نوع when distinction matters; do not translate the identifier." |
| 187 | + }, |
| 188 | + { |
| 189 | + "source": "Get started", |
| 190 | + "target": "ابدأ هنا", |
| 191 | + "note": "Guide section/index title; distinct from First steps." |
| 192 | + }, |
| 193 | + { |
| 194 | + "source": "First steps", |
| 195 | + "target": "الخطوات الأولى", |
| 196 | + "note": "Tutorial page inside Get started." |
| 197 | + }, |
| 198 | + { |
| 199 | + "source": "authentication", |
| 200 | + "target": "مصادقة", |
| 201 | + "note": "Verifying identity, distinct from authorization." |
| 202 | + }, |
| 203 | + { |
| 204 | + "source": "authorization", |
| 205 | + "target": "تفويض", |
| 206 | + "note": "Granting/checking permission, distinct from authentication." |
| 207 | + }, |
| 208 | + { |
| 209 | + "source": "middleware", |
| 210 | + "target": "برمجيات وسيطة", |
| 211 | + "note": "Request-processing middleware. A single middleware component is مكوّن وسيط." |
| 212 | + }, |
| 213 | + { |
| 214 | + "source": "schema", |
| 215 | + "target": "مخطط", |
| 216 | + "note": "Data/type schema; JSON Schema remains the name JSON Schema." |
| 217 | + }, |
| 218 | + { |
| 219 | + "source": "structured output", |
| 220 | + "target": "مخرجات منظّمة", |
| 221 | + "note": "Tool output matching a schema; structured content is محتوى منظّم." |
| 222 | + }, |
| 223 | + { |
| 224 | + "source": "pagination", |
| 225 | + "target": "تقسيم النتائج إلى صفحات", |
| 226 | + "note": "Protocol list pagination, not printed-page numbering." |
| 227 | + }, |
| 228 | + { |
| 229 | + "source": "subscription", |
| 230 | + "target": "اشتراك", |
| 231 | + "note": "Plural اشتراكات. Subscribe اشترك; unsubscribe ألغِ الاشتراك." |
| 232 | + }, |
| 233 | + { |
| 234 | + "source": "notification", |
| 235 | + "target": "إشعار", |
| 236 | + "note": "Protocol notification distinct from request and response." |
| 237 | + }, |
| 238 | + { |
| 239 | + "source": "cancellation", |
| 240 | + "target": "إلغاء", |
| 241 | + "note": "Cancelling a request/task; preserve cooperative cancellation semantics." |
| 242 | + }, |
| 243 | + { |
| 244 | + "source": "stateless", |
| 245 | + "target": "عديم الحالة", |
| 246 | + "note": "No server-side state required between requests; statelessness انعدام الحالة." |
| 247 | + }, |
| 248 | + { |
| 249 | + "source": "stateful", |
| 250 | + "target": "ذو حالة", |
| 251 | + "note": "Preserves state across requests; inflect for gender and number." |
| 252 | + }, |
| 253 | + { |
| 254 | + "source": "identity assertion", |
| 255 | + "target": "إفادة الهوية", |
| 256 | + "note": "Signed assertion carrying authenticated identity; first prose occurrence may take (identity assertion)." |
| 257 | + }, |
| 258 | + { |
| 259 | + "source": "completion", |
| 260 | + "target": "إكمال", |
| 261 | + "note": "MCP argument autocomplete إكمال تلقائي للوسائط; LLM completion استكمال يولّده النموذج. Preserve protocol/class identifiers." |
| 262 | + }, |
| 263 | + { |
| 264 | + "source": "in-memory", |
| 265 | + "target": "داخل الذاكرة", |
| 266 | + "note": "Direct in-process test connection, without network transport or subprocess." |
| 267 | + }, |
| 268 | + { |
| 269 | + "source": "legacy", |
| 270 | + "target": "قديم", |
| 271 | + "note": "Older protocol path, not a judgement about quality. Legacy client عميل قديم. Preserve mode=\"legacy\"." |
| 272 | + }, |
| 273 | + { |
| 274 | + "source": "pull", |
| 275 | + "target": "سحب", |
| 276 | + "note": "New protocol where clients fetch outstanding requests; contrast with server-initiated دفع (push)." |
| 277 | + }, |
| 278 | + { |
| 279 | + "source": "argument", |
| 280 | + "target": "وسيطة", |
| 281 | + "note": "Passed call value; plural وسائط. Parameter is مَعلمة, plural مَعلمات; preserve identifiers." |
| 282 | + }, |
| 283 | + { |
| 284 | + "source": "stream", |
| 285 | + "target": "تدفّق", |
| 286 | + "note": "Streaming تَدَفّق / بث according to context; never translate the name Streamable HTTP." |
| 287 | + }, |
| 288 | + { |
| 289 | + "source": "cache", |
| 290 | + "target": "ذاكرة تخزين مؤقت", |
| 291 | + "note": "Caching تخزين مؤقت; cached result نتيجة مخزّنة مؤقتًا." |
| 292 | + } |
| 293 | + ] |
| 294 | +} |
0 commit comments