{"id":"g-khan-spring-ai-mcp-wallet-server","name":"spring-ai-mcp-wallet-server","homepage":null,"repo_url":"https://github.com/G-khan/spring-ai-mcp-wallet-server","category":"ai-ml","subcategories":[],"tags":["java","spring-boot","spring-ai","mcp","wallet-management","tooling","h2","maven"],"what_it_does":"A Spring Boot 3 wallet management backend (CRUD wallets plus income/expense operations) that exposes service methods as AI-accessible tools via Spring AI’s Model Context Protocol (MCP) server integration, backed by an H2 in-memory database for testing.","use_cases":["AI-assisted finance/wallet tooling for prototyping (create/read/update/delete wallets)","Natural-language agents that call wallet operations (add income/expenses, check balance)","Local development/testing of REST-to-MCP tool exposure patterns with Spring AI"],"not_for":["Production systems requiring strong authentication/authorization and audit controls","Handling real financial transactions or compliance-grade ledgering","Deployments that need durable storage (H2 in-memory is primarily for ease of testing)"],"best_when":"You want a small demo/example or local integration environment to connect an LLM agent to deterministic wallet operations using MCP tool callbacks.","avoid_when":"You need robust security controls (auth, fine-grained scopes, rate limiting) and production-grade reliability guarantees; the README does not describe these.","alternatives":["Direct REST API integration from the agent (custom tool wrappers)","Other MCP server examples/SDKs that provide stronger security primitives and standardized schemas","GraphQL wrapper or gRPC services with generated client tooling for agent access"],"af_score":46.2,"security_score":26.8,"reliability_score":21.2,"package_type":"mcp_server","discovery_source":["github"],"priority":"low","status":"evaluated","version_evaluated":null,"last_evaluated":"2026-04-04T20:00:29.126616+00:00","interface":{"has_rest_api":true,"has_graphql":false,"has_grpc":false,"has_mcp_server":true,"mcp_server_url":"http://localhost:8091 (server.port=8091; exact MCP endpoint not specified in README)","has_sdk":false,"sdk_languages":[],"openapi_spec_url":null,"webhooks":false},"auth":{"methods":[],"oauth":false,"scopes":false,"notes":"No authentication/authorization is described in the provided README. Tool access appears unsecured by default unless configured outside the shown content."},"pricing":{"model":null,"free_tier_exists":false,"free_tier_limits":null,"paid_tiers":[],"requires_credit_card":false,"estimated_workload_costs":null,"notes":"Repository README does not mention any hosted service pricing."},"requirements":{"requires_signup":false,"requires_credit_card":false,"domain_verification":false,"data_residency":[],"compliance":[],"min_contract":null},"agent_readiness":{"af_score":46.2,"security_score":26.8,"reliability_score":21.2,"mcp_server_quality":72.0,"documentation_accuracy":60.0,"error_message_quality":null,"error_message_notes":null,"auth_complexity":20.0,"rate_limit_clarity":0.0,"tls_enforcement":20.0,"auth_strength":10.0,"scope_granularity":0.0,"dependency_hygiene":55.0,"secret_handling":60.0,"security_notes":"No authn/authz is described (likely unsecured by default). README includes an H2 console and default credentials (username sa, empty password) for local testing, which would be insecure if exposed. TLS enforcement and operational security controls (rate limiting, logging of sensitive data, secret management) are not discussed. Dependency hygiene cannot be fully assessed from README; only spring-ai-starter-mcp-server and Spring/H2 are referenced.","uptime_documented":0.0,"version_stability":50.0,"breaking_changes_history":0.0,"error_recovery":35.0,"idempotency_support":"false","idempotency_notes":"No guidance on idempotency for mutating operations (create/update/delete, income/expense). Retrying could duplicate side effects.","pagination_style":"none","retry_guidance_documented":false,"known_agent_gotchas":["Mutating tools (create-wallet, add-income, add-expense, update-wallet, delete-wallet) may not be idempotent; agent retries could produce unintended duplicate updates.","Insufficient-balance/validation errors are described for REST (400) but there is no documented MCP retry/error-handling strategy.","Port/transport details for MCP are only partially specified (server.port set to 8091; exact MCP endpoint not provided)."]}}