Bible Mcp — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited Bible Mcp (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
A Model Context Protocol server that exposes Bible content from bible-api.com for Large Language Models like Claude.
"Bible MCP": {
"command": "uvx",
"args": [
"bible-mcp"
]
}
The simplest way to install Bible MCP is via pip:
pip install bible-mcpClone the repository and install dependencies:
git clone https://github.com/trevato/bible-mcp.git
cd bible-mcp
pip install -e .Requirements:
pyproject.tomlThe fastest way to test the server is with the MCP Inspector:
mcp dev bible_server.pyThis will run the server and open a web interface for testing.
To use this server with Claude Desktop:
mcp install bible_server.pyAfter installation, you can access Bible content in your Claude conversations.
You can also run the server directly:
python -m bible_serverBible MCP provides the following resources:
bible://{translation}/{book}/{chapter}Example: bible://web/JHN/3 (John chapter 3 from the World English Bible)
bible://{translation}/{book}/{chapter}/{verse}Example: bible://kjv/JHN/3/16 (John 3:16 from the King James Version)
bible://random/{translation}Example: bible://random/web (Random verse from the World English Bible)
get_verse_by_reference(reference: str, translation: str = "web") -> strParameters:
reference: Bible reference (e.g., "John 3:16", "Matthew 5:1-10")translation: Translation ID (default: "web")Example:
get_verse_by_reference("Psalm 23:1", "kjv")get_random_verse_tool(translation: str = "web", testament: Optional[str] = None) -> strParameters:
translation: Translation ID (default: "web")testament: Optional filter for "OT" (Old Testament) or "NT" (New Testament)Example:
get_random_verse_tool(translation="web", testament="NT")list_available_translations() -> strReturns a formatted list of all available Bible translations.
analyze_verse_prompt(reference: str) -> strCreates a prompt for analyzing a specific Bible verse.
Example:
analyze_verse_prompt("John 3:16")find_verses_on_topic_prompt(topic: str) -> strCreates a prompt for finding verses on a specific topic.
Example:
find_verses_on_topic_prompt("love")Bible MCP supports multiple translations through the bible-api.com service:
Run the list_available_translations tool to see all available translations.
When running mcp dev bible_server.py, you can navigate to the Web UI and:
bible://web/JHN/3/16 in the URI fieldfrom mcp import ClientSession, StdioServerParameters
import asyncio
async def use_bible_mcp():
server_params = StdioServerParameters(
command="python",
args=["bible_server.py"],
)
async with ClientSession.from_stdio_server(server_params) as session:
# Initialize session
await session.initialize()
# Get a verse
content, _ = await session.read_resource("bible://web/JHN/3/16")
print(content)
# Use a tool
result = await session.call_tool(
"get_random_verse_tool",
{"testament": "NT"}
)
print(result.content[0].text)
if __name__ == "__main__":
asyncio.run(use_bible_mcp())See CONTRIBUTING.md for details on how to contribute to this project.
This project uses the Bible API service provided by bible-api.com.
MIT
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.