MCP Server for Quran.com API

MCP Server for Quran.com API

site icon
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' 以启用详细日志记录。

许可证

该项目遵循 MIT 开源许可条款,请参阅 MIT 了解完整条款。