spring-mcp-bridge
Spring MCP Bridge is a tool that automatically converts REST endpoints from Spring Boot applications into an MCP (Message Conversation Protocol) server, enabling AI assistants to interact directly with your APIs. It scans existing code without requiring modifications, generating a ready-to-use MCP server. Authentication is not included, so users must modify handler code if their API requires it.
GitHub Stars
3
User Rating
Not Rated
Favorites
0
Views
21
Forks
2
Issues
2
Spring MCP Bridge
Spring MCP Bridge is a tool that automatically converts REST endpoints from Spring Boot applications into an MCP (Message Conversation Protocol) server, allowing AI assistants like Claude, Cursor, and other MCP-compatible tools to directly interact with your APIs.
*It does not currently include authentication. If your Spring Boot API requires authentication, you will need to modify the handler code to include the appropriate headers or tokens.
๐ Overview
Integrating existing APIs with AI assistants typically requires manual coding or complex configuration. Spring MCP Bridge eliminates this complexity by automatically scanning your Spring Boot project and generating a ready-to-use MCP server.
โจ Features
- Automatic Scanning: Discovers all REST endpoints (@RestController, @GetMapping, etc.)
- Zero Configuration: No modifications needed to existing Spring Boot code
- Model Preservation: Maintains request and response models as MCP tools
- Javadoc Extraction: Uses existing documentation to enhance MCP tool descriptions
- Complete Documentation: Generates README and clear instructions for use
๐ Installation
# Clone the repository
git clone https://github.com/brunosantos/spring-mcp-bridge.git
# Enter the directory
cd spring-mcp-bridge
๐ ๏ธ Usage
- Scan your Spring Boot project:
python spring_boot_mcp_converter.py --project /path/to/spring-project --output ./mcp_server --name MyAPI
- Run the generated MCP server:
cd mcp_server
pip install -r requirements.txt
python main.py
- Connect via MCP client:
- Configure your MCP client (Claude, Cursor, etc.) to use
http://localhost:8000
- The MCP schema will be available at
http://localhost:8000/.well-known/mcp-schema.json
- Configure your MCP client (Claude, Cursor, etc.) to use
๐ Arguments
Argument | Description | Default |
---|---|---|
--project |
Path to Spring Boot project | (required) |
--output |
Output directory | ./mcp_server |
--name |
Application name | SpringAPI |
--debug |
Enable debug logging | False |
๐ป Example
python spring_mcp_bridge.py --project ~/projects/my-spring-api --output ./mcp_server --name MyAPI
The tool will:
- Scan the Spring Boot project for REST controllers
- Identify model types, parameters, and return types
- Generate a fully functional MCP server in Python/FastAPI
- Create a compatible MCP schema that describes all endpoints
๐ How It Works
- Scanning: Analyzes Java source code to extract metadata from REST endpoints
- Conversion: Converts Java types to JSON Schema types for MCP compatibility
- Generation: Creates a FastAPI application that maps MCP calls to Spring REST calls
- Forwarding: Routes requests from MCP client to the Spring Boot application
๐ Spring Boot Features Supported
- REST Controllers (
@RestController
,@Controller
) - HTTP Methods (
@GetMapping
,@PostMapping
,@PutMapping
,@DeleteMapping
,@PatchMapping
) - Request Parameters (
@RequestParam
) - Path Variables (
@PathVariable
) - Request Bodies (
@RequestBody
) - Java Models and DTOs
โ๏ธ Configuration
The generated MCP server can be configured by editing the main.py
file:
# The Spring Boot base URL - modify this to match your target API
SPRING_BASE_URL = "http://localhost:8080"
๐งช Testing
To test the MCP server:
- Ensure your Spring Boot application is running
- Start the MCP server
- Visit
http://localhost:8000/docs
to see the FastAPI documentation - Check the MCP schema at
http://localhost:8000/.well-known/mcp-schema.json
- Connect with an MCP client like Claude
๐ค Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature
) - Commit your changes (
git commit -m 'Add some amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
๐ License
This project is licensed under the MIT License - see the LICENSE file for details.
๐จโ๐ป Author
Bruno Santos
๐ Acknowledgments
- Inspired by FastAPI-MCP and the growing ecosystem of MCP-compatible tools
- Thanks to the Spring Boot and FastAPI communities
Software Engineer with 20 years of experience programming in Java and various technologies. Here I demonstrate my expertise and hands-on experience.
13
Followers
28
Repositories
0
Gists
0
Total Contributions
AGENTIX is an automation tool built with Python, designed to enable users to efficiently execute specific tasks. With an intuitive interface and powerful features, it is accessible even to users with limited programming knowledge. It offers a wide range of functionalities, including task automation, data processing, and API integration.