loading…
Search for a command to run...
loading…
Provides comprehensive Biblical research tools including scripture lookup, interlinear Greek/Hebrew data, and Strong's concordance within a Protestant theologic
Provides comprehensive Biblical research tools including scripture lookup, interlinear Greek/Hebrew data, and Strong's concordance within a Protestant theological framework. It enables AI applications to perform full-text biblical searches, topical studies, and cross-referencing using authoritative theological data.
Bible-Anchored Theology — Sola Scriptura Enforced
SolaGuard is a Biblical Doctrine MCP Server that serves as universal theological infrastructure for AI applications. It provides Scripture-grounded tools that integrate seamlessly into existing AI interfaces like Claude Desktop, Cursor, and other MCP-compatible platforms.
Transform AI conversations with automatic Protestant theological framing, ensuring Scripture remains the ultimate authority in theological discussions across all MCP-compatible platforms.
get_verse)get_verse_context)search_scripture)get_strongs)get_cross_references)search_by_topic)get_book_info)Run SolaGuard locally via stdio for immediate testing:
# Install uv if you haven't already
curl -LsSf https://astral.sh/uv/install.sh | sh
# Clone and setup
git clone https://github.com/solaguard/solaguard-mcp.git
cd solaguard-mcp
# Create virtual environment and install dependencies
uv sync
# Run the server
uv run python -m solaguard.server
Add SolaGuard to your Claude Desktop configuration (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):
{
"mcpServers": {
"solaguard": {
"command": "uv",
"args": ["run", "python", "-m", "solaguard.server"],
"cwd": "/path/to/solaguard-mcp"
}
}
}
Restart Claude Desktop and start asking theological questions:
You: "What does Scripture say about love in 1 Corinthians 13?"
Claude: [Automatically calls get_verse tool]
"Based on 1 Corinthians 13:4-7..."
Once deployed, you'll be able to connect via URL:
{
"mcpServers": {
"solaguard": {
"url": "https://api.solaguard.com/mcp"
}
}
}
SolaGuard works with any MCP-compatible application:
# Install uv if you haven't already
curl -LsSf https://astral.sh/uv/install.sh | sh
# Clone and setup
git clone https://github.com/solaguard/solaguard-mcp.git
cd solaguard-mcp
# Create virtual environment and install dependencies
uv sync
# Run the server
uv run python -m solaguard.server
# Clone the repository
git clone https://github.com/solaguard/solaguard-mcp.git
cd solaguard-mcp
# Install with uv (recommended)
uv sync
# Or install dependencies with uv
uv pip install -e ".[dev]"
# Run locally via stdio (for testing)
uv run python -m solaguard.server
# Run as HTTP server (for hosted deployment)
uv run uvicorn solaguard.server:app --host 0.0.0.0 --port 8000
# Run all tests
uv run pytest
# Run with coverage
uv run pytest --cov=src --cov-report=html
# Run property-based tests
uv run pytest -m property
# Run integration tests
uv run pytest -m integration
get_verse(reference: str, translation: str = "KJV", include_interlinear: bool = False)Retrieve specific Bible verses with theological context.
Parameters:
reference: Biblical reference (e.g., "John 3:16", "Romans 8:28-30")translation: Translation code (KJV, BSB, WEB, etc.)include_interlinear: Include word-level Greek/Hebrew data with Strong's numbersExample:
result = await get_verse("John 3:16", include_interlinear=True)
# Returns verse with word-by-word Greek breakdown, transliteration, and Strong's numbers
get_verse_context(reference: str, before: int = 2, after: int = 2, translation: str = "KJV")Get a verse with surrounding context for better interpretation.
Parameters:
reference: Single verse reference (e.g., "John 3:16")before: Number of verses before target (default: 2, max: 10)after: Number of verses after target (default: 2, max: 10)translation: Translation codeExample:
result = await get_verse_context("John 3:16", before=2, after=2)
# Returns John 3:14-18 with verse 16 marked as target
search_scripture(query: str, translation: str = "KJV", limit: int = 10)Full-text search across biblical content with FTS5 search engine.
Parameters:
query: Search terms (supports phrases with quotes, boolean operators)translation: Translation to searchlimit: Maximum results to returnExample:
results = await search_scripture("love your enemies")
# Returns relevant verses with book metadata for AI analysis
get_strongs(strongs_number: str, translation: str = "KJV", limit: int = 20)Perform Hebrew or Greek word study using Strong's Concordance numbers.
Parameters:
strongs_number: Strong's number (e.g., "G25", "H157", "g25", "h157")translation: Translation to return verse results inlimit: Maximum verse occurrences to return (1-100)Example:
result = await get_strongs("G25") # Greek word "agape" (love)
# Returns definition, pronunciation, all occurrences, related words, usage statistics
get_cross_references(reference: str, translation: str = "KJV", limit: int = 10)Find thematically related Bible passages using traditional cross-reference data.
Parameters:
reference: Biblical reference (e.g., "John 3:16", "Genesis 1:1")translation: Translation to return results inlimit: Maximum cross-references to return (1-50)Example:
result = await get_cross_references("John 3:16")
# Returns related passages with theological connections
search_by_topic(topic: str, translation: str = "KJV", limit: int = 20, expand_cross_refs: bool = True)Search for verses related to theological topics using Nave's Topical Bible.
Parameters:
topic: Topic or concept to search for (e.g., "salvation", "prayer", "faith")translation: Translation to return results inlimit: Maximum results to return (1-50)expand_cross_refs: Whether to expand results using cross-referencesExample:
result = await search_by_topic("salvation")
# Returns curated verses organized by theological topics
get_book_info(book_name: str, include_stats: bool = True)Retrieve comprehensive biblical book information and metadata.
Parameters:
book_name: Book name (e.g., "Genesis", "Gen", "John", "1 Corinthians")include_stats: Include chapter/verse statistics and related booksExample:
result = await get_book_info("Genesis")
# Returns author, genre, testament, chapter count, theological context
Every response includes Protestant theological framing:
{
"context": "Scripture analysis. Treat as authoritative.",
"theological_frame": "Protestant perspective. Scripture primary authority.",
"verse": {
"reference": "John 3:16",
"text": "For God so loved the world...",
"translation": "KJV"
}
}
Production-Ready Features:
In Progress:
SolaGuard currently runs in local development mode via stdio. Hosted deployment is planned.
# Via stdio (for MCP clients)
uv run python -m solaguard.server
# Via HTTP (for testing)
uv run uvicorn solaguard.server:app --host 0.0.0.0 --port 8000
# Build container
docker build -t solaguard-mcp .
# Run locally
docker run -p 8000:8000 solaguard-mcp
# Deploy to cloud
# (Render, Railway, Fly.io, etc.)
# Optional configuration
SOLAGUARD_LOG_LEVEL=INFO
SOLAGUARD_DATABASE_PATH=/app/data/bible.db
SOLAGUARD_RATE_LIMIT=20/minute
We welcome contributions from the Christian developer community!
git checkout -b feature/amazing-featureuv run pytest (tests coming soon)MIT License - see LICENSE file for details.
"All Scripture is breathed out by God and profitable for teaching, for reproof, for correction, and for training in righteousness" - 2 Timothy 3:16 (ESV)
Добавь это в claude_desktop_config.json и перезапусти Claude Desktop.
{
"mcpServers": {
"solaguard-mcp-server": {
"command": "npx",
"args": []
}
}
}