OAuth2 Authorization Server with MariaDB, Docker OpenTelemetry LGTM, and Redis Integrations with Spring Boot 4, Java 25 and Docker. Integration Tests
OAuth2 Authorization Server with MariaDB, Docker OpenTelemetry LGTM, and Redis Integrations with Spring Boot 4, Java 25 and Docker. Integration Tests with Testcontainers and unit Tests with Junit 5, and Mockito. Exposed over MCP by the oauth2 authorization server mcp server, that capability becomes something an assistant can invoke while it works, not something you go and do afterwards.
mvn test -Dmaven.surefire.debug - If port 5005 is already in use, you can specify a custom port - mvn test -Dmaven.surefire.debug="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000" 2. Open IntelliJ IDEA 3. Go to Run > Attach to Process (or use shortcut) - Windows/Linux: Ctrl + Alt + 5 - Mac: Cmd + Alt + 5 4. Select the Java process running your tests 5. The test will pause until you connect your debugger. Once connected, you can use breakpoints and step through your code.Everything the assistant can do here goes through one of these:
Swagger — http://localhost:9000/swagger-ui/index.htmlclient_id — clientclient_secret — secretusername — Developer password: passwordActuator — http://localhost:9000/actuator/url — jdbc:mariadb://localhost:3306/oauth2_authorization_serverpassword — testRedis — host: localhostport — 6379Ollama — http://localhost:3000/ sign up for an account for local environmentMac — Cmd + Alt + 5Warning — ** for real projects make sure to not leak sensitive data in CRaC files since they contain a snapshot of theSetup follows the usual MCP pattern — install or clone the server, register it in your client's configuration file, restart the client.
You will need 5 environment variables: JAVA_HOME, OPENAI_API_KEY, DEEPSEEK_API_KEY, ANTHROPIC_API_KEY, GOOGLE_GENAI_API_KEY. The server will not start without them, which is usually why the tools fail to appear on a first run. Keep credentials in your client's env block or a secrets manager rather than in a file you might commit.
export JAVA_HOME=$(/usr/libexec/java_home -v 25) - Maven should be installed - Docker should be installed - Postman can be installedPlenty of database access servers cover similar ground. The differences that matter in practice are scope of access and how much setup stands between you and a working tool call. Oauth2 Authorization Server's toolset — Swagger, client_id, client_secret and 11 more — is a fair guide to whether it matches your workflow. It is maintained by musabbozkurt; worth a glance at recent repository activity before you build anything load-bearing on it.
SyncDev reviews every entry in this directory against the project's own documentation before publishing, and revisits them as servers change.
| Tool | What it does |
|---|---|
| Swagger | http://localhost:9000/swagger-ui/index.html |
| client_id | client |
| client_secret | secret |
| username | Developer password: password |
| Actuator | http://localhost:9000/actuator/ |
| url | jdbc:mariadb://localhost:3306/oauth2_authorization_server |
| password | test |
| Redis | host: localhost |
| port | 6379 |
| Ollama | http://localhost:3000/ sign up for an account for local environment |
| Mac | Cmd + Alt + 5 |
| Warning | ** for real projects make sure to not leak sensitive data in CRaC files since they contain a snapshot of the |
| Checkpoint | Run |
| Restore | Restore the application with: ./docs/scripts/restore.sh |
export JAVA_HOME=$(/usr/libexec/java_home -v 25) - Maven should be installed - Docker should be installed - Postman can be installed| Variable | Description | Required |
|---|---|---|
| JAVA_HOME | Configuration value read at startup. | Optional |
| OPENAI_API_KEY | Credential the server authenticates with. | Yes |
| DEEPSEEK_API_KEY | Credential the server authenticates with. | Yes |
| ANTHROPIC_API_KEY | Credential the server authenticates with. | Yes |
| GOOGLE_GENAI_API_KEY | Credential the server authenticates with. | Yes |
Read-only SQL access to Postgres — let your assistant inspect schemas and answer questions from real data.
Manage your whole Supabase project in conversation — database, auth, storage, Edge Functions and branches.
Query, modify and analyse local SQLite databases in conversation — the fastest way to chat with a data file.
Metabase ships its own MCP endpoint — search your BI content, build and run queries, and save questions and dashboards without leaving the chat.
Official MongoDB server covering data, schemas and Atlas management — from find queries to spinning up clusters.
Serverless Postgres with database branching — point your assistant at Neon and let it work on disposable copies.