Skip to main content
Glama
constitution.md4.79 kB
<!-- Faker-MCP Constitution Update Report Version: 1.0.0 → 1.0.0 (Initial version) Modified principles: N/A (Initial creation) Added sections: All sections (Initial creation) Removed sections: N/A Templates requiring updates: ✅ All validated Follow-up TODOs: None --> # Faker-MCP Constitution ## Core Principles ### I. Code Quality & Standards (NON-NEGOTIABLE) Code MUST maintain professional standards at all times. All code MUST pass linting, formatting, and static analysis checks before merge. Type hints MUST be used in Python code where applicable. Code MUST follow language-specific conventions (PEP 8 for Python, etc.). Documentation strings MUST be provided for all public APIs, classes, and complex functions. Code complexity MUST be justified - prefer simple, readable solutions over clever optimizations unless performance requirements demand otherwise. **Rationale**: High-quality code reduces maintenance burden, improves collaboration, and ensures long-term project sustainability. ### II. Test-Driven Development (NON-NEGOTIABLE) Tests MUST be written before implementation begins. The Red-Green-Refactor cycle MUST be strictly enforced: write failing tests, implement minimal code to pass, refactor for quality. All new features MUST achieve minimum 90% code coverage. Critical paths and MCP protocol interactions MUST have 100% test coverage. Tests MUST be independent, deterministic, and fast-running (unit tests <1s, integration tests <10s). **Rationale**: TDD ensures requirements clarity, prevents regressions, and creates living documentation of system behavior. ### III. User Experience Consistency All user-facing interfaces MUST provide consistent behavior and error messages. CLI commands MUST follow predictable patterns: standard flags (--help, --version, --verbose), consistent output formats (JSON + human-readable options), and uniform error handling. API responses MUST use consistent data structures and status codes. Error messages MUST be actionable and include suggested remediation steps where applicable. **Rationale**: Consistent UX reduces learning curve, improves user satisfaction, and reduces support burden. ### IV. Performance Requirements All operations MUST meet defined performance thresholds: API responses <200ms p95, fake data generation >1000 records/second, memory usage <100MB for standard operations. Performance regression tests MUST be included for critical paths. Benchmarking MUST be automated and integrated into CI/CD. Resource-intensive operations MUST provide progress indicators and be interruptible. **Rationale**: Performance requirements ensure the tool remains viable for production use cases and scales with user needs. ## Development Standards ### Code Organization Projects MUST follow established directory structures: `src/` for implementation, `tests/` for test code, `docs/` for documentation. Module boundaries MUST be clear with well-defined public interfaces. Dependencies MUST be minimal and well-justified. Configuration MUST be externalized and environment-aware. ### MCP Protocol Compliance All MCP server implementations MUST strictly adhere to the Model Context Protocol specification. Tool definitions MUST include comprehensive parameter validation. Server capabilities MUST be accurately declared. Error responses MUST use standard MCP error codes and formats. ## Quality Gates ### Pre-Merge Requirements All pull requests MUST pass: automated tests (unit, integration, performance), code quality checks (linting, formatting, type checking), security scans, and peer review by at least one other developer. Breaking changes MUST be documented and include migration guides. Performance-sensitive changes MUST include benchmark comparisons. ### Release Criteria Releases MUST include: comprehensive test suite execution, performance benchmarking results, security vulnerability scans, and end-to-end integration testing with MCP clients. Documentation MUST be updated to reflect all changes. Version numbers MUST follow semantic versioning (MAJOR.MINOR.PATCH). ## Governance This constitution supersedes all other development practices and guidelines. All development decisions MUST be evaluated against these principles. Amendments require documentation of rationale, community discussion, and formal approval process. Violations MUST be justified in writing with explanation of why alternative approaches were insufficient. All pull requests and code reviews MUST verify constitutional compliance. Complexity violations require explicit justification in commit messages or PR descriptions. When constitution conflicts arise, halt development and resolve through formal amendment process. **Version**: 1.0.0 | **Ratified**: 2025-11-05 | **Last Amended**: 2025-11-05

Latest Blog Posts

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/funsjanssen/faker-mcp'

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