الواجهة البرمجية

معجم اللهجات مفتوحٌ للقراءة: بحثٌ لفظيٌّ ودلالي، ومداخلُ كاملة بمعانيها وأصولها وإسناداتها، وشجرةُ اللهجات وخريطتُها — بلا مفتاح ولا تسجيل، وبحدِّ معدَّلٍ لكل عنوان.

وثيقة OpenAPI 3.1

/api/v1/openapi.json

أصل الواجهة

https://www.lahajatna.com/api/v1

خادم MCP

https://www.lahajatna.com/api/mcp

ما يلزمك قبل أن تنقل عنها

المعجم مرجعٌ شبه رسمي يتطوّر بحلقةٍ مفتوحة، ومادّتُه ليست كلها في درجةٍ واحدة من التحقق. فما يلي ليس نصائح استعمال بل شروطُ عرضٍ تلزم من بنى على هذه الواجهة.

لا يُعرض محتوى بوصفه معتمدًا قبل التحقق

كل مدخل ومعنًى يحمل review_status. وما دون approved يجب أن يُعرض موسومًا «قيد التحقق»، لا أن يُقدَّم مقرَّرًا. والمردود لا يصل الواجهة أصلًا — تحجبه سياسات القاعدة لا شرطٌ في الاستعلام.

الثقة لكل حقل على حدة

field_confidence خريطةُ حقلٍ إلى درجة، لا درجةً واحدة للمدخل: فحقلٌ موثوق في مدخل لا يجعل سائر حقوله موثوقة. ومن عرض المدخل فليعرض ثقةَ ما يعرضه منه.

المدخل يحمل معانيَ لا معنًى

«برج» مِرقبٌ ومبنًى شاهقٌ ومرحاضُ سطح. فاقرأ senses، و meaning_fsha مرآةٌ تجمعها لا مصدرٌ للحقيقة.

المثال غير الشاهد

ما في examples من إنشاء المولّد ولا إسناد له، وشرطه أن يوصل المعنى. وما في sources[].quote شاهدٌ منقول بنصّه عن مصدره بصفحته. فلا يُقاس أحدهما بمقياس الآخر.

الشجرة تُورَّث صاعدةً لا نازلة

تصفّح «النجدية» يعرض كلمات «الزلفي» معها. والعكس ليس صحيحًا: وجود الكلمة في الأب لا يعني ورودها في كل ابن، وإنما تُسند الكلمة إلى أدقِّ عقدة مؤكَّدة معرفيًّا.

الصوت الآلي يُوسم دائمًا

التسجيل الذي source فيه tts صوتٌ مولَّد لا نطقُ متحدّث، فوسمُه شرط عرضه. والبشريُّ الذي لم يجتز بوابة التفريغ الآلي لا تعيده الواجهة.

ابدأ بسطر

curl "https://www.lahajatna.com/api/v1/search?q=%D9%82%D9%84%D8%B7"

curl "https://www.lahajatna.com/api/v1/lookup?word=%D8%A8%D8%B1%D8%AC"

curl "https://www.lahajatna.com/api/v1/dialects"

وكل استجابة تحمل RateLimit-Remaining، و429 تحمل Retry-After بالثواني. وAccess-Control-Allow-Origin: * فالنداء من المتصفح مباشرةً جائز.

خادم MCP — للنماذج لا للمتصفحات

النقاط نفسها معروضةٌ أدواتٍ عبر Model Context Protocol، فيصل نموذجُ الذكاء الاصطناعي إلى المعجم من داخل محادثته. وهو خادمٌ للقراءة وحدها: لا أداةَ فيه تكتب في المعجم. وتعليماتُه تحمل شروطَ العرض أعلاه، فيصل النموذجَ حكمُها مع مادّتها.

# نقل HTTP (لا يحتاج تنصيبًا)
claude mcp add --transport http lahjat https://www.lahajatna.com/api/mcp

# أو محليًّا بنقل stdio من داخل المستودع
claude mcp add lahjat -- npx tsx mcp/stdio.ts
الأداةما تفعل
search_wordsيبحث في معجم اللهجات السعودية بحثين معًا: لفظيًّا بالرسم، ودلاليًّا بالمعنى.
lookup_wordيعيد المدخل كاملًا إن طابقت صيغتُه المطبَّعةُ الكلمةَ المطلوبة تمامًا.
get_wordبطاقة المدخل بكل أبوابها بمعرّفه (UUID) الذي تعيده أدوات البحث:
list_dialectsشجرة اللهجات كاملةً مرتَّبةً بمسارها، مع عدد مداخل كل لهجة شاملًا فروعها.
dialect_atlasلهجات الشجرة ذات المراكز الجغرافية بإحداثياتها وعدّاداتها وعيّنة من مداخلها — لرسم خريطة أو للإجابة عن «أين تُقال؟».
lexicon_statsحالة المعجم: حجم المتن وتوزيعه على حالات المراجعة وأنواع المداخل ودرجات الفصاحة والأصول، والمصادر، والمشاركة المجتمعية.
word_of_dayكلمة اليوم — اختيارٌ حتميٌّ باليوم من الشريحة الأعلى تحقُّقًا، وهي التي يعرضها الموقع.

مرجع النقاط (Swagger)

كلُّ نقطةٍ بمعاملاتها وحقول استجابتها مشروحةً حقلًا حقلًا، وفيها زرُّ تجربةٍ يُصدر الطلبَ فعلًا. والوثيقة مولَّدةٌ من مخططات الكود نفسها، فلا تشيخ بمعزلٍ عنه — وهي متاحةٌ خامًا في /api/v1/openapi.json.

…يُحمَّل المستعرض