返回市场
时空典籍MCP服务器

时空典籍MCP服务器

作者:batson-j4 星标更新:2025-06-12

项目介绍

Kairos Codex - MCP Server

此服务器实现了模型上下文协议(MCP),以提供对圣经数据资源的标准访问。它作为大型语言模型(LLMs)的“工具提供者”,允许它们查询圣经翻译、书籍和章节。

该服务器在 bible.py 中实现,并作为 https://bible.helloao.org 的圣经API的封装器,提供带有全面错误处理和身份验证支持的MCP工具来访问圣经。

核心功能

服务器提供的MCP工具有以下几种:

  • get_translations - 获取可用的圣经翻译列表,可选语言过滤
  • get_books - 获取特定圣经翻译中的书籍列表
  • get_verses - 从给定翻译的章节中获取特定的经文
  • get_chapter - 从给定翻译的书中获取整个章节

技术栈

  • 语言: Python 3.11+
  • MCP框架: FastMCP
  • HTTP客户端: httpx
  • 身份验证: 简单的基于令牌的身份验证(可选)
  • 数据格式: 带有结构化错误处理的JSON响应
  • 容器化: 包含Docker支持

可用工具

get_translations(language)

  • 描述: 获取可用的圣经翻译列表
  • 参数:
    • language (str): 用于筛选的语言(匹配语言、英语名称或名称)
  • 返回值: 包含id、name、englishName、language、numberOfBooks等信息的翻译对象列表。

get_books(translation_id)

  • 描述: 获取特定圣经翻译中的书籍列表
  • 参数:
    • translation_id (str): 要获取书籍的翻译ID
  • 返回值: 包含翻译信息和书籍列表的对象,书籍包含id、name、commonName、numberOfChapters等信息。

get_verses(translation_id, book, chapter, verse_start, verse_end?)

  • 描述: 从章节中获取特定的经文
  • 参数:
    • translation_id (str): 要使用的翻译ID
    • book (str): 书名、标签或ID
    • chapter (int): 章节数
    • verse_start (int): 开始的经文号(包括)
    • verse_end (int, 可选): 结束的经文号(包括)
  • 返回值: 结构化的对象,包含翻译信息、书籍信息以及带元数据的经文数据。

get_chapter(translation_id, book, chapter)

  • 描述: 从书中获取整个章节
  • 参数:
    • translation_id (str): 要使用的翻译ID
    • book (str): 书名、标签或ID
    • chapter (int): 章节数
  • 返回值: 结构化的对象,包含翻译信息、书籍信息以及章节中的所有经文。

快速开始

预备条件

  • Python 3.11+
  • 所需包:fastmcp, httpx, pydantic, PyYAML, python-dotenv

安装

安装依赖项:

pip install -r requirements.txt

配置

可选设置访问控制的身份验证令牌。你可以通过两种方式来设置:

方案1:环境变量

export BIBLE_SERVER_TOKEN=your_token_here

方案2:.env文件(推荐)

在项目根目录创建一个.env文件:

echo "BIBLE_SERVER_TOKEN=your_token_here" > .env

如果未设置令牌,服务器将不进行身份验证运行。

运行服务器

直接Python执行:

python bible.py

使用Docker:

# 使用docker-compose构建并运行
docker-compose up --build

# 或手动构建并运行
docker build -t kairos-codex-mcp .
docker run -p 8000:8000 kairos-codex-mcp

服务器使用流式HTTP传输在端口8000上运行,并可通过MCP客户端连接。

贡献

(稍后填写 - 贡献指南)

许可证

(待定 - 例如MIT, GPL)