Context7
ส่งคู่มือการใช้ไลบรารีและเฟรมเวิร์กรุ่นล่าสุดให้ AI อ่านก่อนตอบ ช่วยให้โค้ดที่ AI เขียนไม่ใช้คำสั่งเก่าที่เลิกใช้แล้ว
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
Curated Islamic MCP: Quran (Arabic + Pickthall), 440 du'as, 99 Names, crisis-aware.
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
ต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
ใช้ได้ทั้ง Claude บนเว็บ แอปคอมพิวเตอร์ และมือถือ:
https://sakina-mcp.fly.dev/mcpเปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json
{
"mcpServers": {
"islamic-knowledge": {
"command": "npx",
"args": [
"-y",
"@asksakina/islamic-knowledge-mcp",
"--stdio"
]
}
}
}พิมพ์คำสั่งนี้ใน Terminal
claude mcp add --transport http islamic-knowledge https://sakina-mcp.fly.dev/mcpclaude mcp add islamic-knowledge -- npx -y @asksakina/islamic-knowledge-mcp --stdioวางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"islamic-knowledge": {
"url": "https://sakina-mcp.fly.dev/mcp"
}
}
}วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"islamic-knowledge": {
"command": "npx",
"args": [
"-y",
"@asksakina/islamic-knowledge-mcp",
"--stdio"
]
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"islamic-knowledge": {
"type": "http",
"url": "https://sakina-mcp.fly.dev/mcp"
}
}
}วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"islamic-knowledge": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@asksakina/islamic-knowledge-mcp",
"--stdio"
]
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ChatGPT ต่อได้เฉพาะ server ที่อยู่บนอินเทอร์เน็ต:
https://sakina-mcp.fly.dev/mcpชื่อเมนูอาจต่างกันเล็กน้อยตามแพ็กเกจและรุ่นของแอป
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
ชื่อและคำอธิบายเครื่องมือตามที่ server ตอบมาเมื่อ 6 พ.ย. 2569 ผู้ทำเป็นคนเขียน ไม่ใช่เรา แสดงเป็นข้อความล้วน
get_quran_verseReturns one Quran verse by surah and ayah number: Tanzil Uthmani Arabic and Pickthall English, with citation. Quote the Arabic exactly; do not paraphrase either text.
get_duaReturns du'as from a curated du'a corpus for a life context (e.g. anxiety, travel, gratitude), with source and grading where recorded. Show any crisis_resource block verbatim.
get_name_of_allahReturns one of the 99 Names of Allah by number (1-99) or by name: Arabic, transliteration, meaning, reflection and Quranic references. Quote the Arabic exactly.
find_versesSearches AskSakina's thematic index for Quran verses by topic keyword. Returns reference, Tanzil Arabic and Pickthall English. Quote the Arabic exactly.
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 6 พ.ย. 2569
ชื่อใน registry ยืนยันโดเมน asksakina.com แล้ว (registry ตรวจความเป็นเจ้าของโดเมน)
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ตอบกลับใน 269 ms (HTTP 200)
ไม่ต้องล็อกอิน
อ่านคำอธิบายเครื่องมือ 4 ตัวแล้ว ไม่พบคำสั่งแอบแฝงถึง AI
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 3 จาก 3 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
registry ไม่ได้ระบุว่าต้องใช้กุญแจ แต่บางตัวจะขอให้ล็อกอินตอนใช้ครั้งแรก
ได้ทั้งสองแบบ จะลงในเครื่องหรือต่อผ่านคลาวด์ก็ได้
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (2.7.0) เข้า registry 3 วันที่ผ่านมา
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต่อผ่าน URL จึงใช้กับโปรแกรมที่รับ remote MCP ได้ เช่น ChatGPT ที่เปิดโหมดนักพัฒนา
ในหมวดเดียวกันมี Context7, Codebase Memory, Exa
server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว
อ่านการ์ด:★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi
ส่งคู่มือการใช้ไลบรารีและเฟรมเวิร์กรุ่นล่าสุดให้ AI อ่านก่อนตอบ ช่วยให้โค้ดที่ AI เขียนไม่ใช้คำสั่งเก่าที่เลิกใช้แล้ว
Codebase knowledge graph for AI agents — 162 languages, sub-ms queries, 99% fewer tokens.
Connect AI agents to Exa for web search, content fetching, and multi-step research.
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
Specialist-AI-reviewed Islamic knowledge for AI agents. Quranic verses, a curated du'a corpus, and the 99 Names of Allah — reviewed across the four mainstream Sunni schools (Hanafi, Maliki, Shafi'i, Hanbali) through AskSakina's structured specialist-AI review chain, which is not a substitute for a qualified scholar. Every response is wrapped in a presentation contract so agents cannot silently misrepresent the content.
Architectural posture: *"AskSakina ships records, agents ship answers."* The server is a reference library, not an advisor. Each response includes a _sakina_meta envelope with disclaimer, LLM directives, presentation contract, and educational context. What the calling agent does with the record is its responsibility: every response carries explicit instructions for handling it, but the server cannot make another AI follow them.
Four lookup tools, four learning-journey prompts and seven resources over the Model Context Protocol. Every record is sourced from AskSakina's main app (asksakina.com), so each MCP release matches what the public app surfaced when it was built.
| Tool | What it does |
|---|---|
get_quran_verse | Verbatim Quranic verse lookup by surah:ayah |
get_dua | Curated du'a corpus lookup by life context (anxiety, morning, travel, ...) |
get_name_of_allah | One of the 99 Names by number (1–99) or string |
find_verses | Quran verses by topic keyword, from AskSakina's thematic verse index |
understand_a_verse (prompt) | Fetch one verse by surah and ayah, then present it with its teaching notes, if any |
explore_names_of_allah (prompt) | Fetch one Name by number (1 if none is given), then present it and offer the next Name |
what_muslims_believe (prompt) | Surah Al-Ikhlas, the Name Ar-Rahman, a reviewed overview of the articles of faith and the pillars, and Quran 2:256 |
first_steps_new_muslim (prompt) | For a new Muslim, one step at a time (1-4): One God and His mercy, what has passed is forgiven, prayer step by step, your people |
sakina://about (resource) | Read-once briefing — seven core directives plus three Gem-cleared dawah texts (Quran preservation, hadith grading, madhab attribution) |
sakina://learn/... (resources, 2.5.0) | The six reviewed texts the two journeys read, served verbatim |
get_quran_verseVerbatim Quranic verse lookup by surah:ayah. Returns the canonical AskSakina envelope with Arabic text, translation, surah name (Arabic + English), and the quran presentation contract, which instructs the agent not to paraphrase, to cite surah:ayah, and to label the translation "Translation of the Meaning".
Parameters
| Name | Type | Required | Notes | ||||
|---|---|---|---|---|---|---|---|
surah | 1..114 | yes | Surah number | ||||
ayah | 1..286 | yes | Ayah within the surah | ||||
locale | 'en' \ | 'id' \ | 'ur' \ | 'ar' \ | 'tr' | no, defaults en | Translation language. ar returns the Arabic original with the Pickthall English alongside. Urdu, Indonesian and Turkish translations are not yet available (pending licences): ur, id and tr return Pickthall English, translation_language: "en" and a translation_note saying so |
Example response (truncated)
{
"_sakina_meta": { "version": "1.0", "content_type": "quran_verse", "presentation_contract": { "quran": { "no_paraphrase": true, "require_citation": "surah:ayah", "translation_label": "Translation of the Meaning" } } /* … */ }, "content": { "surah": { "number": 2, "name_arabic": "البقرة", "name_english": "Al-Baqarah" }, "ayah": 186, "arabic": "وَإِذَا سَأَلَكَ عِبَادِي عَنِّي فَإِنِّي قَرِيبٌ ۖ …", "translation": "And when My servants ask you concerning Me — indeed I am near. …" } }
get_duaReturns du'as matching a life context (anxiety, grief, morning, travel, etc.). Context is resolved against canonical category slugs, an alias map, and tag dimensions. A natural phrase ("grief after losing my mother") also resolves: the server normalises it and matches known category, alias, tag and synonym words and a few multi-word phrases inside it, deterministically and without AI. content.matched_by says how it resolved. Grief (WO#386): a query that names the querier's own grief ("I lost my mother", "grief after losing my mother", "my father passed away", "bereaved") resolves to context bereaved; a funeral rite or the person who has died ("funeral", "dua for the deceased", "visiting my mother's grave") stays deceased. Parents (WO#430): a query that names a parent (mother, mum, mom, father, dad, parent, parents) together with a death word (late, dead, passed, grave, burial, janaza, janazah, cemetery, funeral, died, death, deceased, lost) takes this grief route and never returns mothers or fathers; "miss" with a parent and no death word returns only the du'as that suit a living or a deceased parent; a plain parent query ("my mother", "parents") is unchanged. A death word on its own, such as "grave", resolves to nothing. bereaved returns seven du'as ruled by the fiqh reviewer (Gem 4), in its order, with a teaching_note on the masculine forms in the Arabic, and always carries at least the soft support note. Crisis detection runs first, on the full raw input. Self-harm and abuse get separate blocks (crisis_type): the abuse block carries domestic-abuse lines and an abuse-specific directive. On any hard crisis (self-harm or abuse) no du'as are returned: content_type is crisis_resource_only and the crisis resource is the whole response. Each block lists 24/7 lines first and states the hours of any limited-hours line. If the context contains a crisis keyword (matched against the main app's `detectCrisis` keyword list), the response includes a mandatory `crisis_resource` block with the appropriate hotline and prosocial directive.
Parameters
| Name | Type | Required | Notes | ||||
|---|---|---|---|---|---|---|---|
context | string | one of context or id | Free-form life context | ||||
id | string | one of context or id | A du'a id taken from a related reference in an earlier response (WO#390) | ||||
locale | 'en' \ | 'id' \ | 'ur' \ | 'ar' \ | 'tr' | no, defaults en | Du'a records are English for every locale; a crisis resource is in the request locale (2.2.1); with the locale omitted or en, a hard crisis resource is in the language of the matched crisis keyword (id, ur, ar or tr; 2.2.2) |
audience | 'curious' \ | 'revert' \ | 'practising' | no | From the user's own self-description only. Echoed as teach.audience; omitted, the teach block says unknown (2.2.0) | ||
limit | integer 1 to 10 | no, defaults 3 | How many records a context lookup returns (2.2.0). The bereaved set and the abuse allowlist are always returned whole. Ignored with id | ||||
offset | integer, 0 or more | no, defaults 0 | How many records to skip before the page, for paging with limit (2.2.0). Ignored with id and on bereaved |
Result shaping (2.2.0). A context lookup returns limit records of the route's existing order (bundle order; Gem 4's fixed order on bereaved), starting at offset. When more follow the page, content.total_available gives the whole count, content.truncated is true, and content.more carries the note "N more du'as for this context; call get_dua with offset and limit to see them." The same note is in CRITICAL_RULES. content.offset is present when it is not 0. Every record of a category is reachable by paging.
Example response (truncated)
{
"_sakina_meta": { "content_type": "dua_collection", "presentation_contract": { "hadith": { "require_grading": "per_record" /* true when every record is graded */ } } /* … */ }, "content": { "context": "stress-anxiety", "duas": [ { "dua_block": "Arabic: …\nTransliteration: …\nTranslation: …\nOrigin: Quran 21:87\nSource: Quran 21:87\nGrading: Quranic", "title": "Dua to Deal with Distress & Depression", "arabic": "وَذَا ٱلنُّونِ إِذ ذَّهَبَ …", "source": "Quran 21:87", "grading": "Quranic", "grading_status": "quranic", "origin": "quran", "quran_citation": "Quran 21:87" }, { "title": "Dua to Remove Sorrow & Grief:", "source": "Source not recorded in AskSakina corpus", "grading": "Not graded in AskSakina corpus", "grading_status": "not_recorded" /* … */ } /* … */ ], "total_results": 3, "total_available": 12, "truncated": true, "more": "9 more du'as for this context; call get_dua with offset and limit to see them.", "grading_summary": { "quranic": 2, "graded": 0, "not_a_narration": 0, "not_recorded": 1 } } // crisis_resource block added if context triggers the crisis keyword list }
Grading status. Every du'a record carries grading_status: quranic (the text is a Quranic verse or clause), graded (a hadith grading is recorded), not_a_narration (a general supplication, not a narration from the Prophet; it carries a grading_directive saying so), or not_recorded (the AskSakina corpus holds no grading for it). Most of the corpus is not_recorded today; the Source and Grading lines say so rather than implying a grading exists. Du'as whose Quranic reference has been verified carry origin: "quran" and a quran_citation, and their Arabic is the Tanzil Uthmani text resolved from AskSakina's scripture module at bundle time.
get_name_of_allahLook up by number (1–99) or string (transliteration, Arabic, or English meaning). Returns Arabic, transliteration, locale-aware meaning, reflection, and Quranic references.
Parameters — one of:
| Name | Type | Notes |
|---|---|---|
number | 1..99 | Primary lookup |
name | string | Transliteration, Arabic, or English meaning |
Plus optional locale (tr returns the English meaning and reflection).
Example response (truncated)
{
"_sakina_meta": { "content_type": "name_of_allah" /* … */ }, "content": { "number": 29, "arabic": "الحَكَم", "transliteration": "Al-Hakam", "meaning": "The Judge", "reflection": "Allah is the absolute Judge…", "quran_references": ["6:114", "13:41"] } }
find_versesTopic lookup beside get_quran_verse's reference lookup (WO#386). The query is normalised and each word is matched to a theme of AskSakina's thematic verse index (anxiety, gratitude, patience, trust, grief, hope, forgiveness, morning, friday, ramadan, encouragement), by theme name or a fixed synonym list. Deterministic: no embedding, no AI call.
2.5.0 (WO#495) adds fifteen themes, each with its verses in a ruled order: companionship, family_and_marriage, hereafter, parents, night_and_rest, character, justice, protection, quran_and_knowledge, faith_and_guidance, prophets_and_creation, seasons, provision, healing and certainty. Companionship (loneliness) carries the soft support block, as grief does, and no teaching content. Healing carries one more directive: the verses are spiritual comfort and do not replace medical care. A query that carries an abuse word the crisis detector does not read alone ("abuse", "abusive", "violence" and their forms) reaches none of the fifteen and is answered as 2.4 answered it. Since 2.5.1 (WO#500), disclosure phrases built on t
ตัดมาแค่ช่วงต้น อ่านต่อใน repo