Gives Claude direct access to jOOQ documentation through six focused tools: searchDocumentation for keyword lookups, getSqlExamples for query building patterns, getCodeGenerationGuide for codegen setup, getDatabaseSupport for vendor-specific info, getQueryDslReference for statement types, and getAdvancedFeatures for deeper functionality. Built on Spring Boot with local doc storage and TF-IDF search indexing for fast retrieval. Reach for this when you're writing database code with jOOQ and need quick reference on syntax, examples, or configuration without context switching to browser tabs. The crawler pulls docs locally so responses stay snappy even for complex queries about transactions, type safety, or multi-database support.
A Model Context Protocol (MCP) server that provides AI models with access to jOOQ documentation. This Spring Boot application uses Spring AI to expose jOOQ documentation as MCP tools, allowing AI systems to query and retrieve information about jOOQ features, SQL examples, and best practices.
The MCP server provides the following tools:
Clone the repository:
git clone <repository-url>
cd jooq-mcp
Build the project:
./mvnw clean install
Run the application:
./mvnw spring-boot:run
The MCP server will start and be available for connections from MCP clients.
Build the JAR file:
./mvnw clean package
Build the Docker image:
docker build -t jooq-mcp .
Run the Docker container:
docker run -p 8080:8080 jooq-mcp
This application is configured for deployment on Fly.io:
Install Fly CLI and authenticate:
brew install flyctl # or your preferred installation method
fly auth login
Deploy the application:
./mvnw clean package
fly deploy
The application includes health checks at /actuator/health and is configured with auto-scaling.
This server can be used with any MCP-compatible AI client. The server exposes tools that allow AI models to:
The application can be configured via application.properties:
# MCP Server Configuration
spring.ai.mcp.server.name=jooq-documentation-mcp
spring.ai.mcp.server.version=1.0.0
spring.ai.mcp.server.type=SYNC
spring.ai.mcp.server.capabilities.tool=true
# Cache Configuration
spring.cache.type=caffeine
spring.cache.caffeine.spec=maximumSize=100,expireAfterWrite=1h
# jOOQ Documentation Crawler Configuration
jooq.documentation.crawler.max-depth=4
jooq.documentation.crawler.max-urls-per-section=100
jooq.documentation.crawler.timeout-ms=10000
jooq.documentation.crawler.cache-duration-hours=24
# Server Configuration - SSE Buffer Settings
server.tomcat.max-http-response-header-size=64KB
server.tomcat.max-swallow-size=10MB
When connected to an MCP client, you can ask questions like:
The server will fetch the relevant documentation and provide detailed answers with code examples.
The application consists of:
src/main/resources/docs/ for faster accessRun the test suite:
./mvnw test
The application uses:
To add new tools, create methods annotated with @Tool in the JooqDocumentationService class.