A multi-component MCP server with quota management, AI engine integration, trust system, error handling, and support for dynamic plugin loading. Provides chat, coder generation, patch management, and document processing capabilities with Redis-based quota tracking.
High-MCP exhibits severe quality gaps across nearly all definition dimensions. Of 20 tools analyzed, the majority lack proper schema documentation, descriptions are generic or missing context, and naming conventions are inconsistent. The server mixes AI/ML operations (chat, generate_content, coders_generate) with business logic (tenant_upsert, party_upsert) and infrastructure concerns (apply_patches, rollback) without clear separation of concerns. Input schemas are partially visible but lack type completeness for many parameters. No output schemas are documented. Error handling is absent. This is a prototype or internal tool, not production-ready.
Apply code patches to files with support for create, replace, and delete actions
Configure auto-fix settings for automatic error remediation
Block a provider/model from being used due to errors or quota exhaustion
Chat interface for AI model interactions with support for multiple models, image input, and response format options (text/JSON)
Create or update commercial invoice line item
Generate code using Claude AI with specified model and API credentials
Generate content using available AI models with fallback support, caching, and template optimization
Missing output schemas for all 20 tools. No documentation of what fields are returned, their types, or what chaining IDs are available for downstream calls.
Input schemas lack required type information for many parameters. Example: 'images' arrays in chat/generate_content have no documented object schema (mime_type, data types not specified). 'tools' array in generate_content is completely undocumented.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | F | 37 | <=2025-11-25 | v2 |
| 2026-03-09 | F | 17 | - | v1 |
Get current active quota status and usage for models
Retrieve model call logs with filtering by limit, model name, status, and time range
Get model call metrics and statistics for a specified number of days with optional status filtering
Scan and extract document metadata using LogiTrace system
Create or update party (business entity) information
Map Proforma Invoice (PI) to Commercial Invoice (CI)
Create or update proforma invoice line item
Create or update purchase order line item
Rollback to a previous version snapshot
Create or update tenant configuration
Toggle server features on or off via configuration
Update quota usage for a specific model after API calls
Create or update user account
Vague/missing descriptions for critical parameters. 'toggle_feature' has no parameter descriptions at all. 'apply_patches' describes 'patches' as 'List of patch objects' without documenting action enum values or required fields. 'coders_generate' accepts api_key as a parameter (security risk).
Credentials exposed as tool parameters. 'coders_generate' accepts api_key and api_base as parameters. Agent calls log all parameters, secrets leak into audit trails and prompt histories. Must use server-side secret injection.
No error handling guidance. No tool provides actionable recovery instructions. Agents cannot distinguish retryable errors from fatal ones. Example: 'update_quota' has no documented error cases (what if model_name is invalid? What if tokens_used exceeds quota?).
Absence of destructive tool safeguards. 'apply_patches' (IRREVERSIBLE), 'rollback' (REVERSIBLE), 'block_provider' (WRITE) have no dry-run, confirmation request, or undo mechanism. LLMs can accidentally destroy systems.
Inconsistent naming conventions and ambiguous tool names. 'toggle_feature' does not specify WHICH feature is toggled. 'apply_patches', 'rollback' lack verb clarity. 'pi_ci_map', 'logitrace_scan' use domain-specific abbreviations not self-documenting. 'tenant_upsert', 'user_upsert', 'party_upsert', 'po_line_upsert', 'pi_line_upsert', 'ci_line_upsert', upsert is not a standard verb; consider 'create_or_update_*' for clarity.
No pagination support for read-only tools that likely return large datasets. 'get_model_call_logs' and 'get_model_call_metrics' accept 'limit' but no offset/cursor or total_count documentation. Risk of context window exhaustion.
Inconsistent domain separation. Server conflates AI operations (chat, generate_content, coders_generate) with business entity management (tenant_upsert, user_upsert, party_upsert, po_line_upsert, pi_line_upsert, ci_line_upsert) and infrastructure control (apply_patches, rollback, toggle_feature). This violates single-responsibility and complicates LLM reasoning about when to use each tool.
No tool annotations (readOnlyHint, destructiveHint, idempotentHint) visible in schemas. LLMs cannot infer safety/idempotency properties and may make dangerous assumptions about which tools are safe to call repeatedly.
Parameter descriptions lack format/range constraints. Example: 'limit' in get_model_call_logs has no stated min/max (defaults to 200, is that enforced? Can agents request 1000000?). 'days' in get_model_call_metrics has no constraint. 'lineNo' in po_line_upsert, pi_line_upsert, ci_line_upsert has no documented range.
Natural identifier handling unclear. Tools like 'block_provider' require 'model_name', but is this the internal system name or a user-friendly name? No guidance on resolving ambiguous names (e.g., two models named 'gpt-4'). 'tenant_upsert', 'user_upsert', 'party_upsert' require system IDs but never explain how agents obtain them.