Skip to main content
Glama

code-index-mcp

README.md3.72 kB
# User Management System (Python) A comprehensive user management system built in Python for testing Code Index MCP's analysis capabilities. ## Features - **User Management**: Create, update, delete, and search users - **Authentication**: Password-based authentication with session management - **Authorization**: Role-based access control (Admin, User, Guest) - **Data Validation**: Comprehensive input validation and sanitization - **Export/Import**: JSON and CSV export capabilities - **CLI Interface**: Command-line interface for system management ## Project Structure ``` user_management/ ├── models/ │ ├── __init__.py │ ├── person.py # Basic Person model │ └── user.py # User model with auth features ├── services/ │ ├── __init__.py │ ├── user_manager.py # User management service │ └── auth_service.py # Authentication service ├── utils/ │ ├── __init__.py │ ├── validators.py # Input validation utilities │ ├── exceptions.py # Custom exception classes │ └── helpers.py # Helper functions ├── tests/ # Test directory (empty for now) ├── __init__.py └── cli.py # Command-line interface ``` ## Installation 1. Install dependencies: ```bash pip install -r requirements.txt ``` 2. Install the package in development mode: ```bash pip install -e . ``` ## Usage ### Running the Demo ```bash python main.py ``` ### Using the CLI ```bash # Create a new user user-cli create-user --name "John Doe" --username "john" --age 30 --email "john@example.com" # List all users user-cli list-users # Get user information user-cli get-user john # Update user user-cli update-user john --age 31 # Delete user user-cli delete-user john # Search users user-cli search "john" # Show statistics user-cli stats # Export users user-cli export --format json --output users.json ``` ### Programmatic Usage ```python from user_management import UserManager, UserRole from user_management.services.auth_service import AuthService # Create user manager user_manager = UserManager() # Create a user user = user_manager.create_user( name="Jane Smith", username="jane", age=28, email="jane@example.com", role=UserRole.USER ) # Set password user.set_password("SecurePass123!") # Authenticate auth_service = AuthService(user_manager) authenticated_user = auth_service.authenticate("jane", "SecurePass123!") # Create session session_id = auth_service.create_session(authenticated_user) ``` ## Testing Features This project tests the following Python language features: - **Classes and Inheritance**: Person and User classes with inheritance - **Dataclasses**: Modern Python data structures - **Enums**: Role and status enumerations - **Type Hints**: Comprehensive type annotations - **Properties**: Getter/setter methods - **Class Methods**: Factory methods and utilities - **Static Methods**: Utility functions - **Context Managers**: Resource management - **Decorators**: Method decorators - **Generators**: Iteration patterns - **Exception Handling**: Custom exceptions - **Package Structure**: Modules and imports - **CLI Development**: Click framework integration - **JSON/CSV Processing**: Data serialization - **Regular Expressions**: Input validation - **Datetime Handling**: Time-based operations - **Cryptography**: Password hashing - **File I/O**: Data persistence ## Dependencies - **click**: Command-line interface framework - **pytest**: Testing framework - **pydantic**: Data validation (optional) ## License MIT License - This is a sample project for testing purposes.

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/johnhuang316/code-index-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server