
MCP Server for Quran.com API

2025.04.01
21
TypeScript宗教研究多语言支持语音朗诵内容生成
quran-mcp-server 是一个基于 Model Context Protocol (MCP) 的服务器,用于通过 Quran.com 的官方 REST API v4 与 Quran.com 语料库进行交互。它提供了丰富的端点,使得大型语言模型(LLMs)可以通过兼容的客户端使用这些工具。
View on GitHub
Overview
基本能力
产品定位
quran-mcp-server 是一个专门用于与 Quran.com API 交互的 MCP 服务器,旨在为开发者和研究人员提供便捷的访问 Quran 数据的途径。
核心功能
- 章节管理:获取章节列表、特定章节信息等。
- 经文管理:通过章节、页码、Juz 号等多种方式获取经文。
- Juzs 管理:获取所有 Juzs 的列表。
- 搜索功能:在 Quran 中搜索特定术语。
- 翻译管理:获取可用的翻译列表及特定翻译的信息。
- Tafsirs 管理:获取可用的 Tafsirs 列表及特定 Tafsir 的信息。
- 音频管理:获取章节朗诵者列表和可用的朗诵风格。
- 语言管理:获取所有支持的语言。
适用场景
- 宗教研究和教育
- 多语言 Quran 应用开发
- 语音和朗诵应用开发
- 数据分析和研究
工具列表
- GET /chapters:列出所有章节。
- GET /chapters/{id}:获取特定章节。
- GET /chapters/{chapter_id}/info:获取章节信息。
- GET /verses/by_chapter/{chapter_number}:通过章节号获取经文。
- GET /verses/by_page/{page_number}:通过页码获取经文。
- GET /verses/by_juz/{juz_number}:通过 Juz 号获取经文。
- GET /verses/by_hizb/{hizb_number}:通过 Hizb 号获取经文。
- GET /verses/by_rub/{rub_el_hizb_number}:通过 Rub el Hizb 号获取经文。
- GET /verses/by_key/{verse_key}:通过经文键获取经文。
- GET /verses/random:获取随机经文。
- GET /juzs:获取所有 Juzs 的列表。
- GET /search:搜索 Quran 中的术语。
- GET /resources/translations:获取可用的翻译列表。
- GET /resources/translations/{translation_id}/info:获取特定翻译的信息。
- GET /resources/tafsirs:获取可用的 Tafsirs 列表。
- GET /resources/tafsirs/{tafsir_id}/info:获取特定 Tafsir 的信息。
- GET /quran/tafsirs/{tafsir_id}:获取单个 Tafsir。
- GET /resources/chapter_reciters:获取章节朗诵者列表。
- GET /resources/recitation_styles:获取可用的朗诵风格。
- GET /resources/languages:获取所有支持的语言。
常见问题解答
- 如何启用详细日志模式?:设置环境变量
VERBOSE_MODE=true
。 - 如何配置 API 密钥?:在环境变量中设置
API_KEY
。 - 如何更改服务器端口?:设置环境变量
PORT
。
使用教程
使用依赖
- Node.js 22+
- Docker
安装教程
# Build the Docker image
docker build -t quran-mcp-server .
调试方式
# Run tests
npm test
环境变量
API_KEY
:用于认证的 API 密钥。PORT
:服务器端口(默认:8000 或 3000)。VERBOSE_MODE
:设置为 'true' 以启用详细日志记录。