Skip to main content
Glama
tool-reference.md25 kB
# MOIDVK Tool Reference Complete reference for all 37+ tools available in MOIDVK. Each tool is designed for specific development tasks and can be used via MCP clients or CLI. ## 📋 Tool Categories - [Code Quality & Analysis](#code-quality--analysis) - [Code Formatting](#code-formatting) - [Security & Safety](#security--safety) - [Performance & Optimization](#performance--optimization) - [Production Readiness](#production-readiness) - [Accessibility & Standards](#accessibility--standards) - [Testing & Quality Assurance](#testing--quality-assurance) - [Infrastructure & DevOps](#infrastructure--devops) - [Intelligent Development](#intelligent-development) - [Specialized Tools](#specialized-tools) --- ## Code Quality & Analysis ### `check_code_practices` **Language**: JavaScript/TypeScript **Purpose**: ESLint-powered code analysis with comprehensive rule sets #### Parameters ```json { "code": "string (required)", "filename": "string (optional)", "production": "boolean (default: false)", "ruleCategory": "enum: possible-errors|best-practices|stylistic-issues|es6|all", "severity": "enum: error|warning|all", "limit": "number (default: 50, max: 500)", "offset": "number (default: 0)", "sortBy": "enum: line|severity|ruleId|message", "sortOrder": "enum: asc|desc" } ``` #### Example Usage ```javascript // MCP Client await client.callTool('check_code_practices', { code: 'const x = 1; console.log(x);', production: true, severity: 'warning' }); // CLI moidvk check-code -f src/app.js --production --severity warning ``` #### Response Format ```json { "issues": [ { "line": 1, "column": 7, "severity": "warning", "ruleId": "no-console", "message": "Unexpected console statement", "category": "best-practices" } ], "summary": { "total": 1, "errors": 0, "warnings": 1 } } ``` ### `rust_code_practices` **Language**: Rust **Purpose**: Clippy-powered Rust code analysis #### Parameters ```json { "code": "string (required)", "filename": "string (optional)", "edition": "enum: 2015|2018|2021|2024 (default: 2021)", "level": "enum: allow|warn|deny|forbid (default: warn)", "category": "enum: correctness|suspicious|style|complexity|perf|pedantic|restriction|all", "pedantic": "boolean (default: false)", "severity": "enum: error|warning|all", "limit": "number (default: 50)", "offset": "number (default: 0)" } ``` #### Example Usage ```rust // Example Rust code analysis await client.callTool('rust_code_practices', { code: 'fn main() { let x = 1; println!("{}", x); }', edition: '2021', pedantic: true }); ``` ### `python_code_analyzer` **Language**: Python **Purpose**: Ruff-powered Python code analysis #### Parameters ```json { "code": "string (required)", "filename": "string (optional)", "pythonVersion": "enum: 2|3 (default: 3)", "category": "enum: style|error|bug|security|performance|all", "select": "array of strings (rule codes)", "ignore": "array of strings (rule codes to ignore)", "severity": "enum: error|warning|all", "limit": "number (default: 50)", "offset": "number (default: 0)" } ``` --- ## Code Formatting ### `format_code` **Languages**: JavaScript, TypeScript, CSS, HTML, Markdown, YAML **Purpose**: Prettier-powered code formatting #### Parameters ```json { "code": "string (required)", "filename": "string (optional)", "check": "boolean (default: false)" } ``` #### Example Usage ```javascript await client.callTool('format_code', { code: 'const x=1;console.log(x);', filename: 'app.js', }); ``` #### Response Format ```json { "formatted": "const x = 1;\nconsole.log(x);\n", "changed": true, "error": null } ``` ### `rust_formatter` **Language**: Rust **Purpose**: rustfmt-powered Rust code formatting #### Parameters ```json { "code": "string (required)", "filename": "string (optional)", "edition": "enum: 2015|2018|2021|2024", "max_width": "number (default: 100, min: 50, max: 200)", "tab_spaces": "number (default: 4, min: 2, max: 8)", "newline_style": "enum: Auto|Unix|Windows", "indent_style": "enum: Visual|Block", "use_small_heuristics": "enum: Default|Off|Max", "check": "boolean (default: false)" } ``` ### `python_formatter` **Language**: Python **Purpose**: Black-powered Python code formatting #### Parameters ```json { "code": "string (required)", "filename": "string (optional)", "lineLength": "number (default: 88, min: 50, max: 200)", "pythonVersion": "enum: 2|3", "skipStringNormalization": "boolean (default: false)", "skipMagicTrailingComma": "boolean (default: false)", "previewMode": "boolean (default: false)", "check": "boolean (default: false)" } ``` --- ## Security & Safety ### `scan_security_vulnerabilities` **Purpose**: Project dependency vulnerability scanning using npm/bun audit #### Parameters ```json { "projectPath": "string (default: current directory)", "production": "boolean (default: false)", "severity": "enum: low|moderate|high|critical", "format": "enum: summary|detailed", "limit": "number (default: 50)", "offset": "number (default: 0)", "sortBy": "enum: severity|package|title", "sortOrder": "enum: asc|desc" } ``` #### Example Usage ```javascript await client.callTool('scan_security_vulnerabilities', { projectPath: '/path/to/project', severity: 'high', production: true, }); ``` #### Response Format ```json { "vulnerabilities": [ { "package": "lodash", "version": "4.17.15", "severity": "high", "title": "Prototype Pollution", "description": "...", "recommendation": "Upgrade to 4.17.21" } ], "summary": { "total": 1, "high": 1, "moderate": 0, "low": 0 } } ``` ### `check_safety_rules` **Language**: JavaScript/TypeScript **Purpose**: NASA JPL Power of 10 safety-critical programming rules #### Parameters ```json { "code": "string (required)", "filename": "string (optional)" } ``` #### Response Format ```json { "violations": [ { "rule": "No dynamic memory allocation", "line": 5, "severity": "critical", "description": "Avoid malloc/new in safety-critical code" } ], "safetyScore": 85, "compliance": "partial" } ``` ### `rust_safety_checker` **Language**: Rust **Purpose**: Memory safety and ownership validation #### Parameters ```json { "code": "string (required)", "filename": "string (optional)", "strict": "boolean (default: false)" } ``` ### `python_security_scanner` **Language**: Python **Purpose**: Bandit-powered security analysis #### Parameters ```json { "code": "string (required)", "filename": "string (optional)", "severity": "enum: low|medium|high|all", "confidence": "enum: low|medium|high|all", "category": "enum: crypto|injection|misc|all", "tests": "array of strings (specific test IDs)", "skips": "array of strings (test IDs to skip)", "limit": "number (default: 50)", "offset": "number (default: 0)" } ``` --- ## Performance & Optimization ### `js_performance_analyzer` **Language**: JavaScript/TypeScript **Purpose**: Performance analysis and optimization recommendations #### Parameters ```json { "code": "string (required)", "filename": "string (optional)", "category": "enum: memory|cpu|io|async|dom|all", "focus": "enum: general|react|node|browser", "includeMetrics": "boolean (default: true)", "strictness": "enum: lenient|standard|strict", "projectPath": "string (optional)", "limit": "number (default: 50)", "offset": "number (default: 0)" } ``` #### Example Usage ```javascript await client.callTool('js_performance_analyzer', { code: 'for(let i=0; i<1000000; i++) { document.getElementById("test"); }', category: 'dom', focus: 'browser', }); ``` #### Response Format ```json { "issues": [ { "type": "dom_query_in_loop", "line": 1, "severity": "high", "impact": "performance", "description": "DOM query inside loop causes repeated reflow", "suggestion": "Cache DOM reference outside loop" } ], "metrics": { "complexity": "O(n)", "memoryUsage": "high", "optimizationPotential": 85 } } ``` ### `rust_performance_analyzer` **Language**: Rust **Purpose**: Rust performance analysis and optimization #### Parameters ```json { "code": "string (required)", "filename": "string (optional)", "category": "enum: allocation|cloning|loops|collections|io|async|all", "focus": "enum: memory|cpu|io|general", "severity": "enum: high|medium|low|all", "limit": "number (default: 50)", "offset": "number (default: 0)" } ``` ### `python_performance_analyzer` **Language**: Python **Purpose**: Python performance analysis and optimization #### Parameters ```json { "code": "string (required)", "filename": "string (optional)", "category": "enum: memory|cpu|io|async|algorithms|all", "focus": "enum: general|data_science|web|cli", "includeComplexity": "boolean (default: true)", "includeProfileSuggestions": "boolean (default: true)", "severity": "enum: high|medium|low|all", "projectPath": "string (optional)", "limit": "number (default: 50)", "offset": "number (default: 0)" } ``` ### `bundle_size_analyzer` **Purpose**: JavaScript/TypeScript bundle size analysis and optimization #### Parameters ```json { "projectPath": "string (default: current directory)", "entryPoint": "string (e.g., 'src/index.js')", "bundler": "enum: auto|bun|webpack|esbuild|rollup|vite", "target": "enum: web|node|browser", "sizeBudget": "number (default: 250KB)", "analyzeTreeShaking": "boolean (default: true)", "includeSourceMap": "boolean (default: false)", "limit": "number (default: 50)", "offset": "number (default: 0)" } ``` --- ## Production Readiness ### `check_production_readiness` **Language**: JavaScript/TypeScript **Purpose**: Production deployment validation #### Parameters ```json { "code": "string (required)", "filename": "string (optional)", "category": "enum: console-logs|todos|debugging|documentation|error-handling|all", "severity": "enum: critical|high|medium|low|all", "strict": "boolean (default: false)", "limit": "number (default: 50)", "offset": "number (default: 0)", "sortBy": "enum: line|severity|category|message", "sortOrder": "enum: asc|desc" } ``` #### Example Usage ```javascript await client.callTool('check_production_readiness', { code: 'console.log("Debug info"); // TODO: remove this', strict: true, }); ``` #### Response Format ```json { "issues": [ { "line": 1, "category": "console-logs", "severity": "medium", "message": "Console statement found in production code", "suggestion": "Remove or replace with proper logging" }, { "line": 1, "category": "todos", "severity": "low", "message": "TODO comment found", "suggestion": "Complete or remove TODO items before production" } ], "readinessScore": 75, "recommendation": "Address medium and high severity issues" } ``` ### `rust_production_readiness` **Language**: Rust **Purpose**: Rust production deployment validation #### Parameters ```json { "code": "string (required)", "filename": "string (optional)", "category": "enum: debugging|todos|error-handling|documentation|logging|testing|all", "severity": "enum: critical|high|medium|low|all", "strict": "boolean (default: false)", "limit": "number (default: 50)", "offset": "number (default: 0)" } ``` --- ## Accessibility & Standards ### `check_accessibility` **Languages**: HTML, JSX/TSX, CSS **Purpose**: WCAG 2.2 accessibility compliance validation using axe-core #### Parameters ```json { "code": "string (required)", "filename": "string (optional)", "standard": "enum: A|AA|AAA (default: AA)", "environment": "enum: development|production", "rule_set": "enum: minimal|forms|content|navigation|full", "include_contrast": "boolean (default: true)", "rules": "array of strings (specific axe rule IDs)" } ``` #### Example Usage ```javascript await client.callTool('check_accessibility', { code: '<button>Click me</button>', standard: 'AA', rule_set: 'full', }); ``` #### Response Format ```json { "violations": [ { "id": "button-name", "impact": "serious", "description": "Buttons must have discernible text", "help": "Ensure buttons have accessible names", "nodes": [ { "target": ["button"], "html": "<button>Click me</button>" } ] } ], "passes": [], "incomplete": [], "summary": { "violations": 1, "passes": 0, "incomplete": 0 } } ``` ### `check_graphql_schema` **Technology**: GraphQL **Purpose**: GraphQL schema validation and best practices #### Parameters ```json { "schema": "string (required)", "filename": "string (optional)", "category": "enum: syntax|design|security|performance|naming|all", "severity": "enum: critical|high|medium|low|all", "strict": "boolean (default: false)", "limit": "number (default: 50)", "offset": "number (default: 0)", "sortBy": "enum: line|severity|category|type", "sortOrder": "enum: asc|desc" } ``` ### `check_graphql_query` **Technology**: GraphQL **Purpose**: GraphQL query analysis for complexity and security #### Parameters ```json { "query": "string (required)", "schema": "string (optional)", "filename": "string (optional)", "maxDepth": "number (default: 7, max: 20)", "maxComplexity": "number (default: 100, max: 1000)", "category": "enum: complexity|performance|security|syntax|best-practices|all", "severity": "enum: critical|high|medium|low|all", "limit": "number (default: 50)", "offset": "number (default: 0)" } ``` ### `check_redux_patterns` **Technology**: Redux **Purpose**: Redux state management pattern validation #### Parameters ```json { "code": "string (required)", "filename": "string (optional)", "codeType": "enum: reducer|action|store|selector|middleware|component|auto", "category": "enum: mutation|performance|best-practices|anti-patterns|structure|all", "severity": "enum: critical|high|medium|low|all", "strict": "boolean (default: false)", "limit": "number (default: 50)", "offset": "number (default: 0)" } ``` --- ## Testing & Quality Assurance ### `js_test_analyzer` **Language**: JavaScript/TypeScript **Purpose**: Test analysis and quality metrics #### Parameters ```json { "code": "string (required)", "filename": "string (optional)", "framework": "enum: auto|jest|vitest|mocha|jasmine", "category": "enum: structure|coverage|quality|performance|all", "includeMetrics": "boolean (default: true)", "limit": "number (default: 50)", "offset": "number (default: 0)" } ``` #### Response Format ```json { "issues": [ { "type": "missing_assertion", "line": 5, "severity": "medium", "message": "Test case without assertions", "suggestion": "Add expect() assertions to verify behavior" } ], "metrics": { "testCount": 10, "assertionCount": 25, "coverage": { "estimated": 85, "missingAreas": ["error handling", "edge cases"] } } } ``` ### `python_test_analyzer` **Language**: Python **Purpose**: Python test analysis and quality metrics #### Parameters ```json { "code": "string (required)", "filename": "string (optional)", "framework": "enum: pytest|unittest|auto", "category": "enum: structure|coverage|quality|performance|all", "includeMetrics": "boolean (default: true)", "limit": "number (default: 50)", "offset": "number (default: 0)" } ``` ### `python_type_checker` **Language**: Python **Purpose**: mypy-powered type checking #### Parameters ```json { "code": "string (required)", "filename": "string (optional)", "pythonVersion": "enum: 3.7|3.8|3.9|3.10|3.11|3.12", "strict": "boolean (default: false)", "checkUntyped": "boolean (default: true)", "disallowUntyped": "boolean (default: false)", "followImports": "enum: normal|silent|skip|error", "ignoreErrors": "array of strings", "severity": "enum: error|warning|note|all", "limit": "number (default: 50)", "offset": "number (default: 0)" } ``` --- ## Infrastructure & DevOps ### `container_security_scanner` **Purpose**: Docker/container security analysis #### Parameters ```json { "projectPath": "string (default: current directory)", "scanType": "enum: dockerfile|compose|image|all", "dockerfilePath": "string (optional)", "dockerComposePath": "string (optional)", "imageName": "string (optional)", "checkBaseImages": "boolean (default: true)", "includeCompliance": "boolean (default: true)", "severity": "enum: low|medium|high|critical|all", "limit": "number (default: 50)", "offset": "number (default: 0)" } ``` ### `cicd_configuration_analyzer` **Purpose**: CI/CD pipeline analysis #### Parameters ```json { "projectPath": "string (default: current directory)", "platform": "enum: auto|github-actions|gitlab-ci|jenkins|azure-devops|circleci|travis-ci", "configPath": "string (optional)", "checkSecurity": "boolean (default: true)", "checkPerformance": "boolean (default: true)", "checkCompliance": "boolean (default: true)", "includeSecrets": "boolean (default: true)", "strictness": "enum: lenient|standard|strict", "limit": "number (default: 50)", "offset": "number (default: 0)" } ``` ### `license_compliance_scanner` **Purpose**: License compatibility and compliance scanning #### Parameters ```json { "projectPath": "string (default: current directory)", "packageManager": "enum: auto|npm|yarn|pnpm|bun|pip|pipenv|poetry|cargo", "projectLicense": "string (e.g., 'MIT', 'Apache-2.0')", "checkCompatibility": "boolean (default: true)", "flagRiskyLicenses": "boolean (default: true)", "includeDev": "boolean (default: false)", "generateReport": "boolean (default: true)", "strictness": "enum: lenient|standard|strict|enterprise", "format": "enum: detailed|summary|csv|json", "limit": "number (default: 100)", "offset": "number (default: 0)" } ``` ### `environment_config_validator` **Purpose**: Environment configuration validation #### Parameters ```json { "projectPath": "string (default: current directory)", "configType": "enum: auto|dotenv|docker|kubernetes|docker-compose|terraform|cloudformation|helm", "configPath": "string (optional)", "environment": "enum: development|staging|production|test", "checkSecurity": "boolean (default: true)", "checkCompleteness": "boolean (default: true)", "checkBestPractices": "boolean (default: true)", "validateSecrets": "boolean (default: true)", "category": "enum: security|completeness|performance|compliance|all", "strictness": "enum: lenient|standard|strict|enterprise", "format": "enum: detailed|summary|checklist", "limit": "number (default: 50)", "offset": "number (default: 0)" } ``` --- ## Intelligent Development ### `intelligent_development_analysis` **Purpose**: Optimal tool sequence orchestration #### Parameters ```json { "files": "array of strings (required)", "development_goals": "array of strings (optional)", "context": { "session_type": "enum: bug_fix|feature_development|refactoring|optimization|review", "scope": "enum: single_file|module|component|system", "urgency": "enum: low|medium|high|critical" }, "client_type": "enum: claude_desktop|claude_code|other_mcp" } ``` #### Example Usage ```javascript await client.callTool('intelligent_development_analysis', { files: ['src/app.js', 'src/utils.js'], development_goals: ['improve_performance', 'enhance_security'], context: { session_type: 'optimization', scope: 'module', urgency: 'medium', }, }); ``` #### Response Format ```json { "recommended_sequence": [ { "tool": "check_code_practices", "priority": "high", "reason": "Identify code quality issues first" }, { "tool": "scan_security_vulnerabilities", "priority": "high", "reason": "Security analysis for optimization context" }, { "tool": "js_performance_analyzer", "priority": "medium", "reason": "Performance optimization goal" } ], "estimated_time": "2-3 minutes", "parallel_execution": true } ``` ### `semantic_development_search` **Purpose**: Context-aware code search with embeddings #### Parameters ```json { "query": "string (required)", "search_type": "enum: similar_code|related_patterns|bug_hunt|optimization_targets|refactor_candidates", "max_results": "number (default: 10)", "context_aware": "boolean (default: true)", "include_analysis": "boolean (default: true)" } ``` ### `development_session_manager` **Purpose**: Cross-client development session management #### Parameters ```json { "action": "enum: start|resume|checkpoint|analyze|export|import", "session_data": { "id": "string", "client_type": "string", "context": "object", "goals": "array of strings" }, "import_data": "string (for import action)" } ``` --- ## Specialized Tools ### `documentation_quality_checker` **Purpose**: Documentation analysis and completeness #### Parameters ```json { "code": "string (optional)", "projectPath": "string (optional)", "filename": "string (optional)", "docType": "enum: code|readme|api|all", "standard": "enum: jsdoc|typedoc|tsdoc|auto", "strictness": "enum: minimal|standard|strict", "includePrivate": "boolean (default: false)", "checkSpelling": "boolean (default: false)", "limit": "number (default: 50)", "offset": "number (default: 0)" } ``` ### `openapi_rest_validator` **Purpose**: OpenAPI/REST API validation #### Parameters ```json { "spec": "string (optional)", "specPath": "string (optional)", "version": "enum: 2.0|3.0|3.1|auto", "validationType": "enum: syntax|semantic|security|best-practices|all", "strictness": "enum: minimal|standard|strict", "checkSecurity": "boolean (default: true)", "restCompliance": "boolean (default: true)", "includeExamples": "boolean (default: true)", "limit": "number (default: 50)", "offset": "number (default: 0)" } ``` ### `python_dependency_scanner` **Purpose**: Python dependency analysis #### Parameters ```json { "projectPath": "string (default: current directory)", "checkSecurity": "boolean (default: true)", "checkOutdated": "boolean (default: true)", "checkLicenses": "boolean (default: true)", "severity": "enum: low|moderate|high|critical", "format": "enum: summary|detailed", "limit": "number (default: 50)", "offset": "number (default: 0)" } ``` ### `git_blame_analyzer` **Purpose**: Code authorship and contribution analysis #### Parameters ```json { "filePath": "string (required)", "startLine": "number (optional)", "endLine": "number (optional)", "ignoreWhitespace": "boolean (default: true)", "showEmail": "boolean (default: false)" } ``` #### Response Format ```json { "blame_info": [ { "line": 1, "author": "John Doe", "email": "john@example.com", "commit": "abc123", "date": "2024-01-15", "content": "const x = 1;" } ], "summary": { "total_lines": 100, "authors": 3, "most_active_author": "John Doe", "last_modified": "2024-01-15" } } ``` --- ## 🔧 Common Parameters ### Pagination Most tools support pagination for large result sets: ```json { "limit": "number (default: 50, max: 500)", "offset": "number (default: 0)" } ``` ### Sorting Many tools support result sorting: ```json { "sortBy": "enum (varies by tool)", "sortOrder": "enum: asc|desc (default: asc)" } ``` ### Filtering Tools often support filtering by severity or category: ```json { "severity": "enum (varies by tool)", "category": "enum (varies by tool)" } ``` ## 🚀 Performance Notes - **Rust Tools**: Native Rust implementations provide 5-10x performance improvement - **Caching**: Results are cached for 1 hour by default - **Parallel Execution**: Up to 5 tools can run concurrently - **Memory Usage**: Optimized for large codebases with streaming processing ## 🔍 Error Handling All tools return consistent error formats: ```json { "error": { "code": "TOOL_ERROR_CODE", "message": "Human-readable error message", "details": "Additional error context", "suggestions": ["Possible solutions"] } } ``` ## 📚 Additional Resources - **[CLI Usage Guide](../user-guide/cli-usage.md)** - Command-line interface - **[Configuration Guide](configuration.md)** - Advanced configuration - **[Integration Examples](../user-guide/workflow-examples.md)** - Real-world usage - **[Performance Optimization](performance.md)** - Optimization tips --- **Need help with a specific tool?** Use `moidvk <tool-name> --help` for detailed CLI help or check our [troubleshooting guide](../user-guide/troubleshooting.md).

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/moikas-code/moidvk'

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