A FastMCP server providing database operations, system information, Google search, Google Drive integration, and dynamic plugin-based tools for multi-model LLM orchestration with session management, memory systems, and agentic tool execution.
AIOps-DB-Tools exhibits significant gaps in definition quality. While all four tools are explicitly registered with @mcp_server.tool() decorators and have descriptions, the quality is inconsistent. Tool names follow verb_noun patterns (db_query, get_system_info, google_search, google_drive) which is good. However, parameter descriptions are sparse or missing context. The db_query tool exposes dangerous write operations with minimal guardrails. The google_drive tool has a lengthy, cautionary description but lacks structured parameter validation guidance. Output schemas are not documented for any tool, making it unclear what LLMs should expect. Error handling is absent, tools return raw strings without recovery guidance. Average tool score: 52/100.
Execute SQL against mymcp MySQL database.
Return current date/time and status.
Perform CRUD operations on Google Drive within a SPECIFIC authorized folder. IMPORTANT: This tool only accesses files in a pre-configured folder (FOLDER_ID from .env). Do NOT pass folder_id="root" or attempt to access the entire Drive. Leave folder_id empty to use the configured folder.
Search web using Gemini grounding.
db_query: No input validation, no SQL injection protection guidance, no return schema documentation. Tool directly executes user-supplied SQL with 'WRITE' risk but provides no error recovery guidance or confirmation step.
All tools: No output schema documentation. LLMs cannot predict what fields to expect in responses, breaking downstream tool chaining and forcing trial-and-error reasoning.
google_drive: Parameter descriptions lack format/constraint guidance. 'operation' accepts 'create, read, update, delete' but no enum is defined. 'file_id', 'file_name', 'content', 'folder_id' all have generic defaults ('') with no validation hints. LLMs will guess at valid values.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | D | 50 | 2026-07-28+ | v2 |
| 2026-03-09 | F | 41 | - | v1 |
All tools: No error handling guidance. If a tool fails, responses are raw strings (inferred from async def returning str) with no categorization (retryable vs fatal) or recovery hints. LLMs cannot self-correct.
db_query: No SQL injection protection mentioned. Tool signature accepts raw 'sql: str' parameter. Source code not shown for execute_sql(), but no sanitization hints in description. Critical security gap.
google_drive: Parameter 'operation' should be an enum (create|read|update|delete) but is documented as free-form string. Invites hallucinated invalid operations.
get_system_info: Returns nested dict with 'session_context' that is conditionally populated. No documentation of when/why this field appears or disappears. LLMs cannot reliably access it.