MCP server providing semantic and keyword-based search of jOOQ documentation using Pinecone vector database and OpenAI embeddings
The server defines 5 tools covering jOOQ documentation and reference material. Tools use clear action verbs (search, get) and have reasonable descriptions (120-180 chars each). However, schemas are problematic: only 2 of 5 tools have visible input parameters with type information; 3 tools have either empty schemas or no type annotations visible in the source. Parameter descriptions are present but minimal. No output schemas are documented. Error handling exists at the HTTP level (GlobalExceptionHandler) but tools themselves provide no recovery guidance. Security is adequate (read-only operations, no secrets exposed). Composition is good, tools are single-responsibility and chaining-capable via consistent naming.
Get jOOQ code generation guide and configuration examples
Get database-specific support information and SQL dialect details for a specific database (e.g., MySQL, PostgreSQL, Oracle, SQL Server)
Get jOOQ Query DSL reference for specific query types (e.g., SELECT, INSERT, UPDATE, DELETE, MERGE)
Get SQL query building examples for a specific topic (e.g., SELECT, INSERT, UPDATE, DELETE, JOIN, subqueries)
Search jOOQ documentation for specific topics, features, or SQL operations. Returns relevant documentation sections.
No output schemas documented. Tools return results but LLMs cannot see the structure of returned fields (response shape, field names, types). This forces LLMs to guess what fields are available for follow-up planning.
getCodeGenerationGuide has no input parameters visible in schema, it accepts an empty object. However, no description explains what it returns or when to use it vs. other tools. Minimal context for LLM selection.
Parameter descriptions are minimal or absent. 'query' in searchDocumentation is 'Search query for jOOQ documentation', no guidance on format, length, or example topics. 'database' in getDatabaseSupport lacks constraints or valid enum values (MySQL, PostgreSQL, Oracle, SQL Server mentioned in description but not as enum).
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | D | 57 | 2026-07-28+ | v2 |
| 2026-03-09 | D | 53 | - | v1 |
No pagination support. If documentation results are large (e.g. search returns 100+ matching sections), tool provides no limit or offset parameters and no guidance on result size limits. Unmanaged large responses can exhaust context windows.
Tool descriptions lack actionable recovery guidance. GlobalExceptionHandler returns HTTP error messages, but tools themselves do not indicate error conditions in their descriptions (e.g. 'Returns error if database type not supported, try getDatabaseSupport() first').