spring-documentation-mcp-server
Verified Safeby andrlange
Overview
Provides a Model Context Protocol (MCP) server for comprehensive access to Spring ecosystem documentation, migration guides, code examples, language evolution, and Initializr metadata, primarily for AI agent consumption.
Installation
./gradlew bootRunEnvironment Variables
- DB_USER
- DB_PASSWORD
- DB_HOST
- DB_PORT
- DB_NAME
- GITHUB_TOKEN
Security Notes
The application uses Spring Security for authentication (API keys and users), with BCrypt hashing for API keys and passwords. External HTTP requests to Spring.io, GitHub, and Initializr are performed using WebClient with timeouts and retry logic. URL validation is implemented for documentation fetching to prevent SSRF by restricting domains to known Spring-related sites. Jsoup is used for HTML parsing, and HTML to Markdown conversion is handled with cleaning steps to mitigate XSS. No obvious hardcoded secrets, 'eval' usage, or malicious patterns were found in the provided code snippets. Robust input validation with `jakarta.validation` is used across DTOs. A potential concern is the logging of full request parameters in `McpRequestLoggerService`, which could contain sensitive data depending on tool usage, but this is a data privacy/retention concern rather than a direct code vulnerability.
Similar Servers
lex
Provides a UK legal research API with advanced search capabilities for legislation, caselaw, explanatory notes, and amendments, designed for integration with AI agents via the MCP protocol.
MCP-Client-Host-Java
An MCP (Model Context Protocol) client that acts as a server to the MCP host, managing connections to various external MCP servers (tools) and orchestrating tool discovery and execution for AI assistants.
mcp_server_2ex
A Next.js remote MCP (Microservices Communication Protocol) server designed for Retrieval Augmented Generation (RAG) search, often integrating with external Rust or Go MCP backend services or directly with Ollama and PostgreSQL for vector embeddings.
streamable-http-mcp-server
This project provides a Spring Boot starter for integrating MCP (Model Controller Protocol) services, enabling developers to define HTTP API functions using annotations.