mcp-standards-server


Namemcp-standards-server JSON
Version 1.0.1 PyPI version JSON
download
home_pageNone
SummaryA Model Context Protocol server for intelligent access to development standards
upload_time2025-07-17 02:30:17
maintainerNone
docs_urlNone
authorNone
requires_python>=3.10
licenseMIT
keywords mcp model-context-protocol development-standards llm ai-tools code-quality software-standards compliance best-practices semantic-search code-standards nist software-quality testing code-review
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage
            # MCP Standards Server

[![CI](https://github.com/williamzujkowski/mcp-standards-server/actions/workflows/ci.yml/badge.svg)](https://github.com/williamzujkowski/mcp-standards-server/actions/workflows/ci.yml)
[![Release](https://github.com/williamzujkowski/mcp-standards-server/actions/workflows/release.yml/badge.svg)](https://github.com/williamzujkowski/mcp-standards-server/actions/workflows/release.yml)
[![Benchmark](https://github.com/williamzujkowski/mcp-standards-server/actions/workflows/benchmark.yml/badge.svg)](https://github.com/williamzujkowski/mcp-standards-server/actions/workflows/benchmark.yml)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
[![Python 3.10+](https://img.shields.io/badge/python-3.10+-blue.svg)](https://www.python.org/downloads/)
[![PyPI version](https://badge.fury.io/py/mcp-standards-server.svg)](https://badge.fury.io/py/mcp-standards-server)
[![PyPI - Downloads](https://img.shields.io/pypi/dm/mcp-standards-server)](https://pypi.org/project/mcp-standards-server/)

A Model Context Protocol (MCP) server that provides intelligent, context-aware access to development standards. This system enables LLMs to automatically select and apply appropriate standards based on project requirements.

## Project Status

### Recent Improvements (January 2025)

This project underwent significant remediation to restore functionality:

**✅ Issues Resolved:**
- Fixed critical CI/CD workflow failures and security vulnerabilities
- Resolved Python 3.12 compatibility issues (aioredis, type hints)
- Consolidated dependency management to pyproject.toml
- Fixed hundreds of code quality violations (flake8, mypy, black)
- Optimized GitHub workflows for 40% better performance

**✅ Core System Status:**
- 25 comprehensive standards fully loaded and accessible
- 25 intelligent selection rules operational
- MCP server with 21 tools fully functional
- Multi-language code analysis (6 languages) working
- Redis caching and performance optimization active

**⚠️ Components Requiring Verification:**
- Web UI deployment process and functionality
- Full E2E integration testing (some tests skipped)
- Performance benchmarking baseline establishment

See [CLAUDE.md](CLAUDE.md) for detailed implementation status.

## Features

### Core Capabilities
- **25 Comprehensive Standards**: Complete coverage of software development lifecycle
- **Intelligent Standard Selection**: Rule-based engine with 25 detection rules
- **MCP Server Implementation**: Full Model Context Protocol support with multiple tools
- **Standards Generation System**: Template-based creation with quality assurance
- **Hybrid Vector Storage**: ChromaDB + in-memory for semantic search
- **Multi-Language Analyzers**: Python, JavaScript, Go, Java, Rust, TypeScript support

### Advanced Features
- **Redis Caching Layer**: L1/L2 architecture for performance optimization
- **Web UI**: React/TypeScript interface for browsing and testing standards
- **CLI Tools**: Comprehensive command-line interface with documentation
- **Performance Benchmarking**: Continuous monitoring and optimization
- **Token Optimization**: Multiple compression formats for LLM efficiency
- **NIST Compliance**: NIST 800-53r5 control mapping and validation
- **Community Features**: Review process, contribution guidelines, analytics

## Requirements

- Python 3.10 or higher
- Redis (optional, for caching)
- Node.js 16+ (optional, for web UI)

## 🚀 5-Minute Quick Start

Get the MCP Standards Server running in under 5 minutes:

```bash
# 1. Clone and setup (1 minute)
git clone https://github.com/williamzujkowski/mcp-standards-server.git
cd mcp-standards-server
python -m venv venv && source venv/bin/activate

# 2. Install core dependencies (2 minutes)
pip install -e .

# 3. Verify CLI installation (30 seconds)
python -m src.cli.main --help
python -m src.cli.main status

# 4. Test MCP server functionality (1 minute)
python -m src  # Should load 31 standards and initialize MCP server

# 5. Check available standards (30 seconds)
python -m src.cli.main cache --list  # View cached standards
```

**🎉 Success!** Your MCP Standards Server is now running. Continue to [Full Installation](#installation) for complete setup with Redis caching and web UI.

## Full Installation Guide

### Installation

#### Install from PyPI (Recommended)

```bash
# Install the latest release
pip install mcp-standards-server

# Or install with specific feature sets:
pip install "mcp-standards-server[full]"         # All features including web API
pip install "mcp-standards-server[test]"         # Testing tools only
pip install "mcp-standards-server[dev]"          # Development tools
pip install "mcp-standards-server[performance]"  # Performance monitoring tools
```

#### Install from Source

```bash
# Clone the repository
git clone https://github.com/williamzujkowski/mcp-standards-server.git
cd mcp-standards-server

# Create and activate virtual environment (recommended)
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate

# Install in development mode
pip install -e .

# Or install with specific feature sets:
pip install -e ".[full]"         # All features including web API
pip install -e ".[test]"         # Testing tools only
pip install -e ".[dev]"          # Development tools (linting, formatting)
pip install -e ".[performance]"  # Performance monitoring tools

# Install all development dependencies
pip install -e ".[dev,test,performance,visualization,full]"

# Install Redis (optional but recommended for caching)
# macOS: 
brew install redis
brew services start redis

# Ubuntu/Debian:
sudo apt-get update
sudo apt-get install redis-server
sudo systemctl start redis-server

# Windows (using WSL2):
wsl --install  # If not already installed
# Then follow Ubuntu instructions inside WSL

# Or use Docker:
docker run -d -p 6379:6379 redis:alpine
```

### Verifying Installation

```bash
# Run basic tests to verify core functionality
pytest tests/unit/core/standards/test_rule_engine.py -v

# Check if the project is properly installed
python -c "import src; print('Installation successful')"

# Note: The CLI command (mcp-standards) requires the package to be installed
# in the current environment. If you see import errors, ensure you've run:
# pip install -e .
```

### Basic Usage

```python
from pathlib import Path
from src.core.standards.rule_engine import RuleEngine

# Load the rule engine
rules_path = Path("data/standards/meta/standard-selection-rules.json")
engine = RuleEngine(rules_path)

# Define your project context
context = {
    "project_type": "web_application",
    "framework": "react",
    "language": "javascript",
    "requirements": ["accessibility", "performance"]
}

# Get applicable standards
result = engine.evaluate(context)
print(f"Selected standards: {result['resolved_standards']}")
```

### Running the MCP Server

```bash
# Start the MCP server (stdio mode for tool integration)
python -m src

# Or use the CLI
mcp-standards --help

# Start MCP server with specific options
mcp-standards serve --stdio         # For direct tool integration
mcp-standards serve --port 3000     # HTTP server mode
mcp-standards serve --daemon        # Run as background service

# Start the web UI (requires separate setup)
cd web && ./start.sh
```

### MCP Tools Available

The MCP server exposes the following tools for LLM integration:

- **get_applicable_standards**: Get relevant standards based on project context
- **validate_against_standard**: Check code compliance with specific standards
- **suggest_improvements**: Get improvement recommendations
- **search_standards**: Semantic search across all standards
- **get_compliance_mapping**: Map standards to NIST controls
- **analyze_code**: Analyze code files for standard compliance
- **get_standard_content**: Retrieve full or compressed standard content

### MCP Integration Examples

```python
# Example: Using with MCP client
import mcp

# Connect to the MCP server
async with mcp.Client("stdio://python -m src") as client:
    # Get applicable standards for a project
    result = await client.call_tool(
        "get_applicable_standards",
        context={
            "project_type": "web_application",
            "framework": "react",
            "requirements": ["accessibility", "security"]
        }
    )
    
    # Validate code against standards
    validation = await client.call_tool(
        "validate_against_standard",
        code_path="./src",
        standard_id="react-18-patterns"
    )
    
    # Search for specific guidance
    search_results = await client.call_tool(
        "search_standards",
        query="authentication best practices",
        limit=5
    )
```

### Using the Universal Project Kickstart

```bash
# Copy the kickstart prompt for any LLM
cat kickstart.md
```

### Synchronizing Standards

The server can automatically sync standards from the GitHub repository:

```bash
# Check for updates
mcp-standards sync --check

# Perform synchronization
mcp-standards sync

# Force sync all files (ignore cache)
mcp-standards sync --force

# View sync status
mcp-standards status

# Manage cache
mcp-standards cache --list
mcp-standards cache --clear
```

Configure synchronization in `data/standards/sync_config.yaml`.

### Generating Standards

Create new standards using the built-in generation system:

```bash
# List available templates
mcp-standards generate list-templates

# Generate a new standard interactively
mcp-standards generate --interactive

# Generate from a specific template
mcp-standards generate --template standards/technical.j2 --title "My New Standard"

# Generate domain-specific standard
mcp-standards generate --domain ai_ml --title "ML Pipeline Standards"

# Validate an existing standard
mcp-standards generate validate path/to/standard.md
```

### Web UI

The project includes a React-based web UI for browsing and testing standards:

```bash
# Start the web UI
cd web
./start.sh

# Or run components separately:
# Backend API
cd web/backend
pip install -r requirements.txt
python main.py

# Frontend
cd web/frontend
npm install
npm start
```

The web UI provides:
- Standards browser with search and filtering
- Rule testing interface
- Real-time updates via WebSocket
- Standards analytics dashboard

Access the UI at http://localhost:3000 (frontend) and API at http://localhost:8000 (backend).

### Additional CLI Commands

The enhanced CLI provides additional functionality:

```bash
# Query standards based on project context
mcp-standards query --project-type web --framework react --language javascript

# Validate code against standards
mcp-standards validate src/ --format json --severity warning

# Auto-fix code issues (preview mode)
mcp-standards validate src/ --fix --dry-run

# Configuration management
mcp-standards config --init        # Initialize configuration
mcp-standards config --show        # Display current config
mcp-standards config --validate    # Validate config file
```

## Rule Configuration

Rules are defined in JSON format in `data/standards/meta/standard-selection-rules.json`. Each rule specifies:

- Conditions for when it applies
- Standards to apply when matched
- Priority for conflict resolution
- Tags for categorization

Example rule:

```json
{
  "id": "react-web-app",
  "name": "React Web Application Standards",
  "priority": 10,
  "conditions": {
    "logic": "AND",
    "conditions": [
      {
        "field": "project_type",
        "operator": "equals",
        "value": "web_application"
      },
      {
        "field": "framework",
        "operator": "in",
        "value": ["react", "next.js", "gatsby"]
      }
    ]
  },
  "standards": [
    "react-18-patterns",
    "javascript-es2025",
    "frontend-accessibility"
  ],
  "tags": ["frontend", "react", "web"]
}
```

## Available Standards

The system includes 25 comprehensive standards:

### Specialty Domains (8)
- AI/ML Operations, Blockchain/Web3, IoT/Edge Computing, Gaming Development
- AR/VR Development, Advanced API Design, Database Optimization, Green Computing

### Testing & Quality (3)
- Advanced Testing, Code Review, Performance Optimization

### Security & Compliance (3)
- Security Review & Audit, Data Privacy, Business Continuity

### Documentation & Communication (4)
- Technical Content, Documentation Writing, Team Collaboration, Project Planning

### Operations & Infrastructure (4)
- Deployment & Release, Monitoring & Incident Response, SRE, Technical Debt

### User Experience (3)
- Advanced Accessibility, Internationalization, Developer Experience

See [STANDARDS_COMPLETE_CATALOG.md](./STANDARDS_COMPLETE_CATALOG.md) for details.

## Architecture

```
mcp-standards-server/
├── src/
│   ├── core/
│   │   ├── mcp/              # MCP server implementation
│   │   ├── standards/        # Standards engine & storage
│   │   └── cache/            # Redis caching layer
│   ├── analyzers/            # Language-specific analyzers
│   ├── generators/           # Standards generation system
│   └── cli/                  # CLI interface
├── web/                      # React/TypeScript UI (separate app)
│   ├── frontend/            # React application
│   └── backend/             # FastAPI backend
├── data/
│   └── standards/            # 25 comprehensive standards
│       ├── meta/            # Rule engine configuration
│       └── cache/           # Local file cache
├── templates/                # Standard generation templates
├── tests/                    # Comprehensive test suite
├── benchmarks/              # Performance benchmarking
└── docs/                    # Documentation
```

## Testing

Run the test suite:

```bash
# Run all tests
pytest

# Run with coverage
pytest --cov=src --cov-report=term-missing

# Run specific test categories
pytest tests/unit/          # Unit tests only
pytest tests/integration/   # Integration tests
pytest tests/e2e/          # End-to-end tests

# Run specific test file
pytest tests/unit/core/standards/test_rule_engine.py

# Run performance tests
python run_performance_tests.py

# Run tests in parallel (faster)
python run_tests_parallel.py
```

## Development Workflow

### Setting Up Development Environment

```bash
# Clone the repository
git clone https://github.com/williamzujkowski/mcp-standards-server.git
cd mcp-standards-server

# Create virtual environment
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate

# Install in development mode with all dependencies
pip install -e ".[dev,test,performance,visualization,full]"

# Install pre-commit hooks (if available)
pre-commit install
```

### Running Benchmarks

```bash
# Run all benchmarks
python benchmarks/run_benchmarks.py

# Run specific benchmark suites
python benchmarks/analyzer_performance.py
python benchmarks/semantic_search_benchmark.py
python benchmarks/token_optimization_benchmark.py

# Generate performance reports
python benchmarks/run_benchmarks.py --report
```

## CI/CD Integration

The project uses GitHub Actions for continuous integration:

- **CI Badge**: Runs tests on every push and pull request
- **Release Badge**: Automates releases to PyPI
- **Benchmark Badge**: Tracks performance metrics over time

### Using in Your CI/CD Pipeline

```yaml
# Example GitHub Actions workflow
- name: Validate Standards
  run: |
    pip install mcp-standards-server
    mcp-standards validate . --format sarif --output results.sarif
    
- name: Upload SARIF results
  uses: github/codeql-action/upload-sarif@v2
  with:
    sarif_file: results.sarif
```

## Contributing

1. Fork the repository
2. Create a feature branch
3. Add tests for new functionality
4. Ensure all tests pass
5. Submit a pull request

## Documentation

### Quick Start
- [Universal Project Kickstart](./kickstart.md) - Copy-paste prompt for any LLM
- [Standards Complete Catalog](./STANDARDS_COMPLETE_CATALOG.md) - All 25 standards
- [Creating Standards Guide](./docs/CREATING_STANDARDS_GUIDE.md) - How to create new standards

### Technical Documentation
- [Implementation Status](IMPLEMENTATION_STATUS.md) - Current project status and roadmap
- [Claude Integration Guide](CLAUDE.md) - Main system documentation
- [Rule Engine Documentation](src/core/standards/README_RULE_ENGINE.md)
- [API Documentation](./docs/site/api/mcp-tools.md)
- [Project Plan](project_plan.md)
- [Web UI Documentation](./web/README.md)

## License

This project is licensed under the MIT License.

## Troubleshooting

### Common Issues

1. **Redis connection errors**: Ensure Redis is running or disable caching:
   ```bash
   export MCP_STANDARDS_NO_CACHE=true
   ```

2. **Import errors**: Make sure you installed in development mode:
   ```bash
   pip install -e .
   ```

3. **MCP server not starting**: Check for port conflicts:
   ```bash
   lsof -i :3000  # Check if port is in use
   ```

### Environment Variables

The following environment variables can be used to configure the server:

- `MCP_STANDARDS_CONFIG`: Path to custom configuration file
- `MCP_STANDARDS_CACHE_DIR`: Override default cache directory
- `MCP_STANDARDS_NO_CACHE`: Disable caching (set to `true`)
- `MCP_STANDARDS_LOG_LEVEL`: Set logging level (DEBUG, INFO, WARNING, ERROR)
- `REDIS_URL`: Custom Redis connection URL
- `NO_COLOR`: Disable colored output in CLI

## Performance Tips

1. **Enable Redis caching** for better performance with large codebases
2. **Use token optimization** when working with LLMs with limited context
3. **Run analyzers in parallel** for faster code validation
4. **Use the rule engine** for efficient standard selection

## Acknowledgments

This project is part of the williamzujkowski/standards ecosystem, designed to improve code quality and consistency through intelligent standard selection and application.

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "mcp-standards-server",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.10",
    "maintainer_email": "William Zujkowski <williamzujkowski@users.noreply.github.com>",
    "keywords": "mcp, model-context-protocol, development-standards, llm, ai-tools, code-quality, software-standards, compliance, best-practices, semantic-search, code-standards, nist, software-quality, testing, code-review",
    "author": null,
    "author_email": "William Zujkowski <williamzujkowski@users.noreply.github.com>",
    "download_url": "https://files.pythonhosted.org/packages/82/f7/f07f2e4484fdd826c25b6ffaba17b225f406d7ed4ddfa66fd4d6a42393ce/mcp_standards_server-1.0.1.tar.gz",
    "platform": null,
    "description": "# MCP Standards Server\n\n[![CI](https://github.com/williamzujkowski/mcp-standards-server/actions/workflows/ci.yml/badge.svg)](https://github.com/williamzujkowski/mcp-standards-server/actions/workflows/ci.yml)\n[![Release](https://github.com/williamzujkowski/mcp-standards-server/actions/workflows/release.yml/badge.svg)](https://github.com/williamzujkowski/mcp-standards-server/actions/workflows/release.yml)\n[![Benchmark](https://github.com/williamzujkowski/mcp-standards-server/actions/workflows/benchmark.yml/badge.svg)](https://github.com/williamzujkowski/mcp-standards-server/actions/workflows/benchmark.yml)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n[![Python 3.10+](https://img.shields.io/badge/python-3.10+-blue.svg)](https://www.python.org/downloads/)\n[![PyPI version](https://badge.fury.io/py/mcp-standards-server.svg)](https://badge.fury.io/py/mcp-standards-server)\n[![PyPI - Downloads](https://img.shields.io/pypi/dm/mcp-standards-server)](https://pypi.org/project/mcp-standards-server/)\n\nA Model Context Protocol (MCP) server that provides intelligent, context-aware access to development standards. This system enables LLMs to automatically select and apply appropriate standards based on project requirements.\n\n## Project Status\n\n### Recent Improvements (January 2025)\n\nThis project underwent significant remediation to restore functionality:\n\n**\u2705 Issues Resolved:**\n- Fixed critical CI/CD workflow failures and security vulnerabilities\n- Resolved Python 3.12 compatibility issues (aioredis, type hints)\n- Consolidated dependency management to pyproject.toml\n- Fixed hundreds of code quality violations (flake8, mypy, black)\n- Optimized GitHub workflows for 40% better performance\n\n**\u2705 Core System Status:**\n- 25 comprehensive standards fully loaded and accessible\n- 25 intelligent selection rules operational\n- MCP server with 21 tools fully functional\n- Multi-language code analysis (6 languages) working\n- Redis caching and performance optimization active\n\n**\u26a0\ufe0f Components Requiring Verification:**\n- Web UI deployment process and functionality\n- Full E2E integration testing (some tests skipped)\n- Performance benchmarking baseline establishment\n\nSee [CLAUDE.md](CLAUDE.md) for detailed implementation status.\n\n## Features\n\n### Core Capabilities\n- **25 Comprehensive Standards**: Complete coverage of software development lifecycle\n- **Intelligent Standard Selection**: Rule-based engine with 25 detection rules\n- **MCP Server Implementation**: Full Model Context Protocol support with multiple tools\n- **Standards Generation System**: Template-based creation with quality assurance\n- **Hybrid Vector Storage**: ChromaDB + in-memory for semantic search\n- **Multi-Language Analyzers**: Python, JavaScript, Go, Java, Rust, TypeScript support\n\n### Advanced Features\n- **Redis Caching Layer**: L1/L2 architecture for performance optimization\n- **Web UI**: React/TypeScript interface for browsing and testing standards\n- **CLI Tools**: Comprehensive command-line interface with documentation\n- **Performance Benchmarking**: Continuous monitoring and optimization\n- **Token Optimization**: Multiple compression formats for LLM efficiency\n- **NIST Compliance**: NIST 800-53r5 control mapping and validation\n- **Community Features**: Review process, contribution guidelines, analytics\n\n## Requirements\n\n- Python 3.10 or higher\n- Redis (optional, for caching)\n- Node.js 16+ (optional, for web UI)\n\n## \ud83d\ude80 5-Minute Quick Start\n\nGet the MCP Standards Server running in under 5 minutes:\n\n```bash\n# 1. Clone and setup (1 minute)\ngit clone https://github.com/williamzujkowski/mcp-standards-server.git\ncd mcp-standards-server\npython -m venv venv && source venv/bin/activate\n\n# 2. Install core dependencies (2 minutes)\npip install -e .\n\n# 3. Verify CLI installation (30 seconds)\npython -m src.cli.main --help\npython -m src.cli.main status\n\n# 4. Test MCP server functionality (1 minute)\npython -m src  # Should load 31 standards and initialize MCP server\n\n# 5. Check available standards (30 seconds)\npython -m src.cli.main cache --list  # View cached standards\n```\n\n**\ud83c\udf89 Success!** Your MCP Standards Server is now running. Continue to [Full Installation](#installation) for complete setup with Redis caching and web UI.\n\n## Full Installation Guide\n\n### Installation\n\n#### Install from PyPI (Recommended)\n\n```bash\n# Install the latest release\npip install mcp-standards-server\n\n# Or install with specific feature sets:\npip install \"mcp-standards-server[full]\"         # All features including web API\npip install \"mcp-standards-server[test]\"         # Testing tools only\npip install \"mcp-standards-server[dev]\"          # Development tools\npip install \"mcp-standards-server[performance]\"  # Performance monitoring tools\n```\n\n#### Install from Source\n\n```bash\n# Clone the repository\ngit clone https://github.com/williamzujkowski/mcp-standards-server.git\ncd mcp-standards-server\n\n# Create and activate virtual environment (recommended)\npython -m venv venv\nsource venv/bin/activate  # On Windows: venv\\Scripts\\activate\n\n# Install in development mode\npip install -e .\n\n# Or install with specific feature sets:\npip install -e \".[full]\"         # All features including web API\npip install -e \".[test]\"         # Testing tools only\npip install -e \".[dev]\"          # Development tools (linting, formatting)\npip install -e \".[performance]\"  # Performance monitoring tools\n\n# Install all development dependencies\npip install -e \".[dev,test,performance,visualization,full]\"\n\n# Install Redis (optional but recommended for caching)\n# macOS: \nbrew install redis\nbrew services start redis\n\n# Ubuntu/Debian:\nsudo apt-get update\nsudo apt-get install redis-server\nsudo systemctl start redis-server\n\n# Windows (using WSL2):\nwsl --install  # If not already installed\n# Then follow Ubuntu instructions inside WSL\n\n# Or use Docker:\ndocker run -d -p 6379:6379 redis:alpine\n```\n\n### Verifying Installation\n\n```bash\n# Run basic tests to verify core functionality\npytest tests/unit/core/standards/test_rule_engine.py -v\n\n# Check if the project is properly installed\npython -c \"import src; print('Installation successful')\"\n\n# Note: The CLI command (mcp-standards) requires the package to be installed\n# in the current environment. If you see import errors, ensure you've run:\n# pip install -e .\n```\n\n### Basic Usage\n\n```python\nfrom pathlib import Path\nfrom src.core.standards.rule_engine import RuleEngine\n\n# Load the rule engine\nrules_path = Path(\"data/standards/meta/standard-selection-rules.json\")\nengine = RuleEngine(rules_path)\n\n# Define your project context\ncontext = {\n    \"project_type\": \"web_application\",\n    \"framework\": \"react\",\n    \"language\": \"javascript\",\n    \"requirements\": [\"accessibility\", \"performance\"]\n}\n\n# Get applicable standards\nresult = engine.evaluate(context)\nprint(f\"Selected standards: {result['resolved_standards']}\")\n```\n\n### Running the MCP Server\n\n```bash\n# Start the MCP server (stdio mode for tool integration)\npython -m src\n\n# Or use the CLI\nmcp-standards --help\n\n# Start MCP server with specific options\nmcp-standards serve --stdio         # For direct tool integration\nmcp-standards serve --port 3000     # HTTP server mode\nmcp-standards serve --daemon        # Run as background service\n\n# Start the web UI (requires separate setup)\ncd web && ./start.sh\n```\n\n### MCP Tools Available\n\nThe MCP server exposes the following tools for LLM integration:\n\n- **get_applicable_standards**: Get relevant standards based on project context\n- **validate_against_standard**: Check code compliance with specific standards\n- **suggest_improvements**: Get improvement recommendations\n- **search_standards**: Semantic search across all standards\n- **get_compliance_mapping**: Map standards to NIST controls\n- **analyze_code**: Analyze code files for standard compliance\n- **get_standard_content**: Retrieve full or compressed standard content\n\n### MCP Integration Examples\n\n```python\n# Example: Using with MCP client\nimport mcp\n\n# Connect to the MCP server\nasync with mcp.Client(\"stdio://python -m src\") as client:\n    # Get applicable standards for a project\n    result = await client.call_tool(\n        \"get_applicable_standards\",\n        context={\n            \"project_type\": \"web_application\",\n            \"framework\": \"react\",\n            \"requirements\": [\"accessibility\", \"security\"]\n        }\n    )\n    \n    # Validate code against standards\n    validation = await client.call_tool(\n        \"validate_against_standard\",\n        code_path=\"./src\",\n        standard_id=\"react-18-patterns\"\n    )\n    \n    # Search for specific guidance\n    search_results = await client.call_tool(\n        \"search_standards\",\n        query=\"authentication best practices\",\n        limit=5\n    )\n```\n\n### Using the Universal Project Kickstart\n\n```bash\n# Copy the kickstart prompt for any LLM\ncat kickstart.md\n```\n\n### Synchronizing Standards\n\nThe server can automatically sync standards from the GitHub repository:\n\n```bash\n# Check for updates\nmcp-standards sync --check\n\n# Perform synchronization\nmcp-standards sync\n\n# Force sync all files (ignore cache)\nmcp-standards sync --force\n\n# View sync status\nmcp-standards status\n\n# Manage cache\nmcp-standards cache --list\nmcp-standards cache --clear\n```\n\nConfigure synchronization in `data/standards/sync_config.yaml`.\n\n### Generating Standards\n\nCreate new standards using the built-in generation system:\n\n```bash\n# List available templates\nmcp-standards generate list-templates\n\n# Generate a new standard interactively\nmcp-standards generate --interactive\n\n# Generate from a specific template\nmcp-standards generate --template standards/technical.j2 --title \"My New Standard\"\n\n# Generate domain-specific standard\nmcp-standards generate --domain ai_ml --title \"ML Pipeline Standards\"\n\n# Validate an existing standard\nmcp-standards generate validate path/to/standard.md\n```\n\n### Web UI\n\nThe project includes a React-based web UI for browsing and testing standards:\n\n```bash\n# Start the web UI\ncd web\n./start.sh\n\n# Or run components separately:\n# Backend API\ncd web/backend\npip install -r requirements.txt\npython main.py\n\n# Frontend\ncd web/frontend\nnpm install\nnpm start\n```\n\nThe web UI provides:\n- Standards browser with search and filtering\n- Rule testing interface\n- Real-time updates via WebSocket\n- Standards analytics dashboard\n\nAccess the UI at http://localhost:3000 (frontend) and API at http://localhost:8000 (backend).\n\n### Additional CLI Commands\n\nThe enhanced CLI provides additional functionality:\n\n```bash\n# Query standards based on project context\nmcp-standards query --project-type web --framework react --language javascript\n\n# Validate code against standards\nmcp-standards validate src/ --format json --severity warning\n\n# Auto-fix code issues (preview mode)\nmcp-standards validate src/ --fix --dry-run\n\n# Configuration management\nmcp-standards config --init        # Initialize configuration\nmcp-standards config --show        # Display current config\nmcp-standards config --validate    # Validate config file\n```\n\n## Rule Configuration\n\nRules are defined in JSON format in `data/standards/meta/standard-selection-rules.json`. Each rule specifies:\n\n- Conditions for when it applies\n- Standards to apply when matched\n- Priority for conflict resolution\n- Tags for categorization\n\nExample rule:\n\n```json\n{\n  \"id\": \"react-web-app\",\n  \"name\": \"React Web Application Standards\",\n  \"priority\": 10,\n  \"conditions\": {\n    \"logic\": \"AND\",\n    \"conditions\": [\n      {\n        \"field\": \"project_type\",\n        \"operator\": \"equals\",\n        \"value\": \"web_application\"\n      },\n      {\n        \"field\": \"framework\",\n        \"operator\": \"in\",\n        \"value\": [\"react\", \"next.js\", \"gatsby\"]\n      }\n    ]\n  },\n  \"standards\": [\n    \"react-18-patterns\",\n    \"javascript-es2025\",\n    \"frontend-accessibility\"\n  ],\n  \"tags\": [\"frontend\", \"react\", \"web\"]\n}\n```\n\n## Available Standards\n\nThe system includes 25 comprehensive standards:\n\n### Specialty Domains (8)\n- AI/ML Operations, Blockchain/Web3, IoT/Edge Computing, Gaming Development\n- AR/VR Development, Advanced API Design, Database Optimization, Green Computing\n\n### Testing & Quality (3)\n- Advanced Testing, Code Review, Performance Optimization\n\n### Security & Compliance (3)\n- Security Review & Audit, Data Privacy, Business Continuity\n\n### Documentation & Communication (4)\n- Technical Content, Documentation Writing, Team Collaboration, Project Planning\n\n### Operations & Infrastructure (4)\n- Deployment & Release, Monitoring & Incident Response, SRE, Technical Debt\n\n### User Experience (3)\n- Advanced Accessibility, Internationalization, Developer Experience\n\nSee [STANDARDS_COMPLETE_CATALOG.md](./STANDARDS_COMPLETE_CATALOG.md) for details.\n\n## Architecture\n\n```\nmcp-standards-server/\n\u251c\u2500\u2500 src/\n\u2502   \u251c\u2500\u2500 core/\n\u2502   \u2502   \u251c\u2500\u2500 mcp/              # MCP server implementation\n\u2502   \u2502   \u251c\u2500\u2500 standards/        # Standards engine & storage\n\u2502   \u2502   \u2514\u2500\u2500 cache/            # Redis caching layer\n\u2502   \u251c\u2500\u2500 analyzers/            # Language-specific analyzers\n\u2502   \u251c\u2500\u2500 generators/           # Standards generation system\n\u2502   \u2514\u2500\u2500 cli/                  # CLI interface\n\u251c\u2500\u2500 web/                      # React/TypeScript UI (separate app)\n\u2502   \u251c\u2500\u2500 frontend/            # React application\n\u2502   \u2514\u2500\u2500 backend/             # FastAPI backend\n\u251c\u2500\u2500 data/\n\u2502   \u2514\u2500\u2500 standards/            # 25 comprehensive standards\n\u2502       \u251c\u2500\u2500 meta/            # Rule engine configuration\n\u2502       \u2514\u2500\u2500 cache/           # Local file cache\n\u251c\u2500\u2500 templates/                # Standard generation templates\n\u251c\u2500\u2500 tests/                    # Comprehensive test suite\n\u251c\u2500\u2500 benchmarks/              # Performance benchmarking\n\u2514\u2500\u2500 docs/                    # Documentation\n```\n\n## Testing\n\nRun the test suite:\n\n```bash\n# Run all tests\npytest\n\n# Run with coverage\npytest --cov=src --cov-report=term-missing\n\n# Run specific test categories\npytest tests/unit/          # Unit tests only\npytest tests/integration/   # Integration tests\npytest tests/e2e/          # End-to-end tests\n\n# Run specific test file\npytest tests/unit/core/standards/test_rule_engine.py\n\n# Run performance tests\npython run_performance_tests.py\n\n# Run tests in parallel (faster)\npython run_tests_parallel.py\n```\n\n## Development Workflow\n\n### Setting Up Development Environment\n\n```bash\n# Clone the repository\ngit clone https://github.com/williamzujkowski/mcp-standards-server.git\ncd mcp-standards-server\n\n# Create virtual environment\npython -m venv venv\nsource venv/bin/activate  # On Windows: venv\\Scripts\\activate\n\n# Install in development mode with all dependencies\npip install -e \".[dev,test,performance,visualization,full]\"\n\n# Install pre-commit hooks (if available)\npre-commit install\n```\n\n### Running Benchmarks\n\n```bash\n# Run all benchmarks\npython benchmarks/run_benchmarks.py\n\n# Run specific benchmark suites\npython benchmarks/analyzer_performance.py\npython benchmarks/semantic_search_benchmark.py\npython benchmarks/token_optimization_benchmark.py\n\n# Generate performance reports\npython benchmarks/run_benchmarks.py --report\n```\n\n## CI/CD Integration\n\nThe project uses GitHub Actions for continuous integration:\n\n- **CI Badge**: Runs tests on every push and pull request\n- **Release Badge**: Automates releases to PyPI\n- **Benchmark Badge**: Tracks performance metrics over time\n\n### Using in Your CI/CD Pipeline\n\n```yaml\n# Example GitHub Actions workflow\n- name: Validate Standards\n  run: |\n    pip install mcp-standards-server\n    mcp-standards validate . --format sarif --output results.sarif\n    \n- name: Upload SARIF results\n  uses: github/codeql-action/upload-sarif@v2\n  with:\n    sarif_file: results.sarif\n```\n\n## Contributing\n\n1. Fork the repository\n2. Create a feature branch\n3. Add tests for new functionality\n4. Ensure all tests pass\n5. Submit a pull request\n\n## Documentation\n\n### Quick Start\n- [Universal Project Kickstart](./kickstart.md) - Copy-paste prompt for any LLM\n- [Standards Complete Catalog](./STANDARDS_COMPLETE_CATALOG.md) - All 25 standards\n- [Creating Standards Guide](./docs/CREATING_STANDARDS_GUIDE.md) - How to create new standards\n\n### Technical Documentation\n- [Implementation Status](IMPLEMENTATION_STATUS.md) - Current project status and roadmap\n- [Claude Integration Guide](CLAUDE.md) - Main system documentation\n- [Rule Engine Documentation](src/core/standards/README_RULE_ENGINE.md)\n- [API Documentation](./docs/site/api/mcp-tools.md)\n- [Project Plan](project_plan.md)\n- [Web UI Documentation](./web/README.md)\n\n## License\n\nThis project is licensed under the MIT License.\n\n## Troubleshooting\n\n### Common Issues\n\n1. **Redis connection errors**: Ensure Redis is running or disable caching:\n   ```bash\n   export MCP_STANDARDS_NO_CACHE=true\n   ```\n\n2. **Import errors**: Make sure you installed in development mode:\n   ```bash\n   pip install -e .\n   ```\n\n3. **MCP server not starting**: Check for port conflicts:\n   ```bash\n   lsof -i :3000  # Check if port is in use\n   ```\n\n### Environment Variables\n\nThe following environment variables can be used to configure the server:\n\n- `MCP_STANDARDS_CONFIG`: Path to custom configuration file\n- `MCP_STANDARDS_CACHE_DIR`: Override default cache directory\n- `MCP_STANDARDS_NO_CACHE`: Disable caching (set to `true`)\n- `MCP_STANDARDS_LOG_LEVEL`: Set logging level (DEBUG, INFO, WARNING, ERROR)\n- `REDIS_URL`: Custom Redis connection URL\n- `NO_COLOR`: Disable colored output in CLI\n\n## Performance Tips\n\n1. **Enable Redis caching** for better performance with large codebases\n2. **Use token optimization** when working with LLMs with limited context\n3. **Run analyzers in parallel** for faster code validation\n4. **Use the rule engine** for efficient standard selection\n\n## Acknowledgments\n\nThis project is part of the williamzujkowski/standards ecosystem, designed to improve code quality and consistency through intelligent standard selection and application.\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "A Model Context Protocol server for intelligent access to development standards",
    "version": "1.0.1",
    "project_urls": {
        "Homepage": "https://github.com/williamzujkowski/mcp-standards-server",
        "Issues": "https://github.com/williamzujkowski/mcp-standards-server/issues",
        "Repository": "https://github.com/williamzujkowski/mcp-standards-server"
    },
    "split_keywords": [
        "mcp",
        " model-context-protocol",
        " development-standards",
        " llm",
        " ai-tools",
        " code-quality",
        " software-standards",
        " compliance",
        " best-practices",
        " semantic-search",
        " code-standards",
        " nist",
        " software-quality",
        " testing",
        " code-review"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "e78d781495c4968d0e9e68bfe8bb1c2f5c0a7cfc564fecd336a9e4654772dac8",
                "md5": "f6b25d462bf85c7ce24f137762eacf43",
                "sha256": "c986fd733d62d1a12565da60ccc279af19d7a10c2c98a38d52971113d83be205"
            },
            "downloads": -1,
            "filename": "mcp_standards_server-1.0.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "f6b25d462bf85c7ce24f137762eacf43",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.10",
            "size": 267299,
            "upload_time": "2025-07-17T02:30:14",
            "upload_time_iso_8601": "2025-07-17T02:30:14.866295Z",
            "url": "https://files.pythonhosted.org/packages/e7/8d/781495c4968d0e9e68bfe8bb1c2f5c0a7cfc564fecd336a9e4654772dac8/mcp_standards_server-1.0.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "82f7f07f2e4484fdd826c25b6ffaba17b225f406d7ed4ddfa66fd4d6a42393ce",
                "md5": "590a7cc61902bc2412ca2829910fa524",
                "sha256": "32713ef8e8b1f1a800c904058ccd7f081ef256e4ccfc4162636949aaf9a80251"
            },
            "downloads": -1,
            "filename": "mcp_standards_server-1.0.1.tar.gz",
            "has_sig": false,
            "md5_digest": "590a7cc61902bc2412ca2829910fa524",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.10",
            "size": 1670649,
            "upload_time": "2025-07-17T02:30:17",
            "upload_time_iso_8601": "2025-07-17T02:30:17.138809Z",
            "url": "https://files.pythonhosted.org/packages/82/f7/f07f2e4484fdd826c25b6ffaba17b225f406d7ed4ddfa66fd4d6a42393ce/mcp_standards_server-1.0.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-07-17 02:30:17",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "williamzujkowski",
    "github_project": "mcp-standards-server",
    "travis_ci": false,
    "coveralls": true,
    "github_actions": true,
    "requirements": [],
    "lcname": "mcp-standards-server"
}
        
Elapsed time: 1.70534s