{"id":"duocrafters-java-mcp-client-server","name":"java-mcp-client-server","homepage":null,"repo_url":"https://github.com/duocrafters/java-mcp-client-server","category":"devtools","subcategories":[],"tags":["mcp","spring-ai","spring-boot","java","llm","sse","webmvc","client-server","demo"],"what_it_does":"Minimal working example of an MCP setup using Spring AI: an MCP server exposing tools over SSE/WebMVC and an MCP client that connects to the server and uses a Mistral LLM to orchestrate tool calls, with an additional simple frontend to interact with queries.","use_cases":["Learning/prototyping MCP tool integration with Spring Boot and Spring AI","Building a small agentic workflow where an LLM can call server-side tools","Demonstrating end-to-end wiring of MCP server (SSE) and client orchestration","Local development demo with a simple web UI"],"not_for":["Production deployments requiring strong security hardening, auth, and operational guarantees","Compliance-sensitive environments without documented compliance/security controls","Use cases needing a fully documented public API contract (OpenAPI) or SDK"],"best_when":"You want a lightweight educational/demo implementation to understand MCP tool calling with Java/Spring AI and quickly spin up client/server locally.","avoid_when":"You need robust authentication, rate-limit documentation, and well-defined error contracts suitable for multi-tenant production use.","alternatives":["Other MCP client/server implementations with better documented production interfaces","Agent frameworks that provide first-class MCP connectors plus stronger ops/security primitives","Custom REST/GraphQL tool endpoints with OpenAPI and standard auth middleware (if MCP is not strictly required)"],"af_score":32.8,"security_score":22.5,"reliability_score":25.0,"package_type":"mcp_server","discovery_source":["github"],"priority":"low","status":"evaluated","version_evaluated":null,"last_evaluated":"2026-04-04T19:50:02.734248+00:00","interface":{"has_rest_api":true,"has_graphql":false,"has_grpc":false,"has_mcp_server":true,"mcp_server_url":"http://localhost:8082/mcp/sse","has_sdk":false,"sdk_languages":["java"],"openapi_spec_url":null,"webhooks":false},"auth":{"methods":[],"oauth":false,"scopes":false,"notes":"No authentication mechanisms are mentioned in the provided README content; assume none or undocumented."},"pricing":{"model":null,"free_tier_exists":false,"free_tier_limits":null,"paid_tiers":[],"requires_credit_card":false,"estimated_workload_costs":null,"notes":"No pricing info provided; likely depends on your chosen Mistral usage and infrastructure costs."},"requirements":{"requires_signup":false,"requires_credit_card":false,"domain_verification":false,"data_residency":[],"compliance":[],"min_contract":null},"agent_readiness":{"af_score":32.8,"security_score":22.5,"reliability_score":25.0,"mcp_server_quality":55.0,"documentation_accuracy":45.0,"error_message_quality":0.0,"error_message_notes":null,"auth_complexity":20.0,"rate_limit_clarity":0.0,"tls_enforcement":40.0,"auth_strength":10.0,"scope_granularity":0.0,"dependency_hygiene":40.0,"secret_handling":30.0,"security_notes":"Provided README does not mention TLS enforcement, authentication/authorization, scopes, rate limits, or secret-management practices. Security posture is therefore assumed to be minimal for a demo. TLS/auth should be explicitly added/verified before any real deployment.","uptime_documented":0.0,"version_stability":40.0,"breaking_changes_history":30.0,"error_recovery":30.0,"idempotency_support":"false","idempotency_notes":null,"pagination_style":"none","retry_guidance_documented":false,"known_agent_gotchas":["No auth/rate-limit/error contract details were provided, so agents may need defensive handling (timeouts, retries, and tool-call validation).","SSE-based streaming endpoints can have subtle reconnect/timeout behaviors; without documented guidance, agent integrations should implement robust network retry/backoff at the HTTP client layer."]}}