{"id":"jsiggelkow-mcp-client-server-demo","name":"MCP-Client-Server-Demo","homepage":null,"repo_url":"https://github.com/JSiggelkow/MCP-Client-Server-Demo","category":"devtools","subcategories":[],"tags":["mcp","spring-boot","sse","spring-ai","docker","java"],"what_it_does":"A demo Spring Boot (Java) client/server architecture using MCP over SSE, wired to an OpenAI API key via Spring AI. It includes Docker Compose instructions to run the stack and configure an MCP server URL for the client.","use_cases":["Prototyping an MCP-style integration between an app (client) and tool providers (server)","Learning/validating Spring AI + MCP client wiring over SSE","Local development/testing with Docker Compose"],"not_for":["Production deployments requiring hardened security and operational guarantees (the README lacks production-grade details)","Environments where external API key handling cannot be performed","Teams needing formal API contracts (OpenAPI/SDK) or documented error/rate-limit behaviors"],"best_when":"Used as a learning/demo project in a controlled local environment (Docker) with trusted configuration inputs.","avoid_when":"Avoid for sensitive production integrations without additional security hardening, deployment configuration, and observability/error-handling documentation.","alternatives":["Use an MCP framework/library with a documented OpenAPI spec and production-ready SDKs","Implement MCP integration directly in your application with robust config management and retries","Use other tool-execution frameworks that provide clearer REST/GraphQL contracts"],"af_score":34.8,"security_score":34.0,"reliability_score":12.5,"package_type":"mcp_server","discovery_source":["github"],"priority":"low","status":"evaluated","version_evaluated":null,"last_evaluated":"2026-04-04T20:00:56.157610+00:00","interface":{"has_rest_api":false,"has_graphql":false,"has_grpc":false,"has_mcp_server":true,"mcp_server_url":"http://mcp-server:8080","has_sdk":false,"sdk_languages":[],"openapi_spec_url":null,"webhooks":false},"auth":{"methods":["OpenAI API key (as configured in Spring AI properties)"],"oauth":false,"scopes":false,"notes":"Authentication details for the MCP server itself are not described in the provided README; only the OpenAI API key configuration is shown."},"pricing":{"model":null,"free_tier_exists":false,"free_tier_limits":null,"paid_tiers":[],"requires_credit_card":false,"estimated_workload_costs":null,"notes":"Costs depend on OpenAI usage; no pricing information for this repository itself is provided."},"requirements":{"requires_signup":false,"requires_credit_card":false,"domain_verification":false,"data_residency":[],"compliance":[],"min_contract":null},"agent_readiness":{"af_score":34.8,"security_score":34.0,"reliability_score":12.5,"mcp_server_quality":30.0,"documentation_accuracy":40.0,"error_message_quality":0.0,"error_message_notes":null,"auth_complexity":70.0,"rate_limit_clarity":10.0,"tls_enforcement":20.0,"auth_strength":40.0,"scope_granularity":10.0,"dependency_hygiene":40.0,"secret_handling":60.0,"security_notes":"The README uses an OpenAI API key configuration but does not document MCP server auth, TLS requirements, or secrets handling practices beyond suggesting insertion into application.yml. The MCP URL shown is plain HTTP (insecure by default for non-local environments).","uptime_documented":0.0,"version_stability":30.0,"breaking_changes_history":0.0,"error_recovery":20.0,"idempotency_support":"false","idempotency_notes":null,"pagination_style":"none","retry_guidance_documented":false,"known_agent_gotchas":["MCP server authentication/behavior is not documented in the README provided","SSE connection details (timeouts, reconnection behavior) are not documented","No explicit guidance for handling transient failures or retry/idempotency concerns"]}}