A production-ready reasoning engine that integrates Claude AI with MCP tools
MCP Reasoning Engine with Claude Agent
A production-ready reasoning engine that combines Claude AI with Model Context Protocol (MCP) tools for structured reasoning across legal, health, and science domains.
Features
- š¤ Claude Agent Integration: Uses Anthropic's Claude API with tool use capabilities
- š§ MCP Tools: Three specialized tools for knowledge search, schema validation, and rubric evaluation
- š RAG Integration: Knowledge base search across domain-specific documents
- ā Schema Validation: Ensures structured JSON output matches required schemas
- š Rubric Scoring: Domain-specific evaluation with pass/fail thresholds
- š HTTP API: RESTful API for easy integration
- š³ Docker Ready: Containerized deployment support
Architecture
āāāāāāāāāāāāāāāāāāā
ā HTTP API ā (Optional - mcp_api_server.py)
ā or Direct ā
āāāāāāāāāā¬āāāāāāāāā
ā
ā¼
āāāāāāāāāāāāāāāāāāā āāāāāāāāāāāāāāāā
ā Claude Agent āāāāāāāŗā MCP Server ā
ā claude_agent.py ā ā server.py ā
āāāāāāāāāā¬āāāāāāāāā āāāāāāāā¬āāāāāāāā
ā ā
ā¼ ā¼
āāāāāāāāāāāāāāāāāāā āāāāāāāāāāāāāāāā
ā Anthropic API ā ā RAG Tools ā
ā (Claude) ā ā Validators ā
āāāāāāāāāāāāāāāāāāā āāāāāāāāāāāāāāāā
Quick Start
Prerequisites
- Python 3.8+
- Anthropic API key (Get one here)
Installation
Clone or extract the project
cd reasoning_engine_mcp_demoCreate virtual environment
python -m venv .venv # Windows .venv\Scripts\activate # Linux/Mac source .venv/bin/activateInstall dependencies
pip install -r requirements.txtSet API key
# Windows PowerShell $env:ANTHROPIC_API_KEY = "your_api_key_here" # Linux/Mac export ANTHROPIC_API_KEY="your_api_key_here"
Usage
Option 1: Direct Python Usage
import asyncio
from mcp.claude_agent import ClaudeReasoningAgent
async def main():
agent = ClaudeReasoningAgent()
result = await agent.reason("Is a verbal promise enforceable?")
print(result)
asyncio.run(main())
Option 2: Command Line
python -m mcp.claude_agent --question "Your question here"
Option 3: HTTP API Server
# Start server
python mcp_api_server.py
# Server runs on http://localhost:8000
# API docs: http://localhost:8000/docs
API Example:
curl -X POST http://localhost:8000/reason \
-H "Content-Type: application/json" \
-d '{"question": "Is a verbal promise enforceable?"}'
Project Structure
reasoning_engine_mcp_demo/
āāā mcp/ # MCP server and agent
ā āāā server.py # MCP server with 3 tools
ā āāā claude_agent.py # Claude agent with MCP integration
ā āāā DEPLOYMENT.md # Deployment guide
āāā rag_docs/ # Knowledge base documents
ā āāā legal/ # Legal domain documents
ā āāā health/ # Health domain documents
ā āāā science/ # Science domain documents
āāā domains/ # Domain configurations
ā āāā domain_config.json # Domain routing config
ā āāā legal/rubric.json # Legal rubric
ā āāā health/rubric.json # Health rubric
ā āāā science/rubric.json # Science rubric
āāā schemas/ # JSON schemas
ā āāā universal_reasoning_schema.json
āāā validators/ # Validation modules
ā āāā schema_validator.py
ā āāā rubric_validator.py
āāā tools_rag.py # RAG search implementation
āāā router.py # Domain routing
āāā mcp_api_server.py # HTTP API server
āāā requirements.txt # Python dependencies
āāā README.md # This file
MCP Tools
The MCP server exposes three tools:
search_knowledge_base(query: str)
- Searches RAG documents for relevant information
- Returns formatted results with source, title, and content
validate_reasoning_schema(output_json: str)
- Validates JSON output against the universal reasoning schema
- Returns validation status and errors
evaluate_with_rubric(domain: str, output_json: str)
- Evaluates reasoning output against domain-specific rubric
- Returns scores, pass/fail status, and human review flags
Domains
The system supports three domains:
- Legal: Contract law, enforceability, legal reasoning
- Health: Medical information, symptoms, safety boundaries
- Science: Scientific reasoning, hypotheses, evidence evaluation
Each domain has:
- Domain-specific RAG documents
- Custom rubric for evaluation
- Keyword-based routing
Configuration
Environment Variables
ANTHROPIC_API_KEY(required): Your Anthropic API keyMCP_PORT(optional): HTTP API por
Tools (3)
search_knowledge_baseSearches RAG documents for relevant information and returns formatted results with source, title, and content.validate_reasoning_schemaValidates JSON output against the universal reasoning schema and returns validation status and errors.evaluate_with_rubricEvaluates reasoning output against domain-specific rubric for scores and pass/fail status.Environment Variables
ANTHROPIC_API_KEYrequiredYour Anthropic API key for Claude integrationMCP_PORTHTTP API port for the serverConfiguration
{"mcpServers":{"mcp-reasoning-engine":{"command":"python","args":["mcp/server.py"],"env":{"ANTHROPIC_API_KEY":"your_api_key_here"}}}}