Spring AI Spring Boot Auto Configuration modules providing automatic setup for AI models, vector stores, MCP, and retry capabilities
Spring AI Spring Boot Auto Configuration provides automatic setup and configuration for Spring AI components, including AI model providers, vector stores, Model Context Protocol (MCP) support, and infrastructure components. This module enables zero-configuration Spring Boot applications to use AI capabilities by automatically creating and configuring beans based on classpath detection and application properties.
1. Add Dependencies:
<dependency>
<groupId>org.springframework.ai</groupId>
<artifactId>spring-ai-openai-spring-boot-starter</artifactId>
<version>1.1.2</version>
</dependency>2. Configure Properties:
spring.ai.openai.api-key=your-api-key
spring.ai.openai.chat.options.model=gpt-4
spring.ai.openai.chat.options.temperature=0.73. Use Autoconfigured Beans:
@Service
public class ChatService {
private final ChatModel chatModel;
public ChatService(ChatModel chatModel) {
this.chatModel = chatModel;
}
public String chat(String message) {
return chatModel.call(message);
}
}Spring AI autoconfiguration is organized into five major categories:
| Category | Modules | Purpose |
|---|---|---|
| Common | 1 | Retry capabilities and error handling |
| MCP | 6 | Model Context Protocol client and server support |
| Chat Infrastructure | 11 | Chat memory, observation, and tooling |
| AI Providers | 18 | Integration with AI service providers |
| Vector Stores | 20 | Vector database integrations |
Total: 56 autoconfiguration modules
Each module uses Spring Boot's @AutoConfiguration mechanism:
spring.ai.* properties@ConditionalOnMissingBean@AutoConfiguration(before/after) for proper initializationRetry capabilities with exponential backoff and intelligent error classification.
spring.ai.retry.max-attempts=10
spring.ai.retry.backoff.initial-interval=2s
spring.ai.retry.backoff.multiplier=5Client and server support with multiple transports (stdio, SSE, HTTP).
spring.ai.mcp.client.enabled=true
spring.ai.mcp.client.stdio.connections.myserver.command=node
spring.ai.mcp.client.stdio.connections.myserver.args[0]=server.jsMCP Client Documentation → | MCP Server Documentation →
Chat clients, memory management, observation, and tool calling.
spring.ai.chat.client.enabled=true
spring.ai.chat.memory.repository.mongo.create-indices=true
spring.ai.chat.observations.log-prompt=trueChat Infrastructure Documentation →
Support for 18 AI service providers with standard interfaces.
Supported Providers: OpenAI, Anthropic, Azure OpenAI, AWS Bedrock, Google Gemini, Ollama, Mistral AI, Vertex AI, and 11 more.
# OpenAI
spring.ai.openai.api-key=your-key
spring.ai.openai.chat.options.model=gpt-4
# Anthropic
spring.ai.anthropic.api-key=your-key
spring.ai.anthropic.chat.options.model=claude-3-5-sonnet-20241022Support for 20 vector databases with common interface.
Supported Stores: Pinecone, Weaviate, Milvus, Qdrant, PGVector, Chroma, MongoDB Atlas, Redis, and 12 more.
# PGVector
spring.ai.vectorstore.pgvector.initialize-schema=true
spring.ai.vectorstore.pgvector.index-type=HNSW
# Pinecone
spring.ai.vectorstore.pinecone.api-key=your-key
spring.ai.vectorstore.pinecone.index-name=my-indexspring.ai.mcp.client.enabled=false
spring.ai.retry.enabled=false
spring.ai.chat.client.enabled=falsespring.ai.retry.max-attempts=5
spring.ai.retry.backoff.initial-interval=1s
spring.ai.retry.backoff.multiplier=2
spring.ai.retry.on-http-codes=429,503
spring.ai.retry.exclude-on-http-codes=401,403spring.ai.chat.observations.log-prompt=true
spring.ai.chat.observations.log-completion=true
management.metrics.export.prometheus.enabled=true
management.tracing.enabled=trueAutomatic service binding integration for cloud environments (Kubernetes, Cloud Foundry).
Supported Bindings: MCP Client, Ollama, Chroma, GemFire, Milvus, OpenSearch, Qdrant, Typesense, Weaviate.
See Spring Cloud Bindings Details →
Built-in support for native images with automatic runtime hints.
./mvnw -Pnative native:compile
./target/my-spring-ai-appCommon (1 module)
MCP (6 modules)
Chat Infrastructure (11 modules)
AI Providers (18 modules)
Vector Stores (20 modules)
| Feature | Configuration Key | Default | Options |
|---|---|---|---|
| Retry Max Attempts | spring.ai.retry.max-attempts | 10 | 1-100 |
| Retry Initial Interval | spring.ai.retry.backoff.initial-interval | 2s | 100ms-60s |
| MCP Client Type | spring.ai.mcp.client.type | SYNC | SYNC, ASYNC |
| MCP Server Transport | spring.ai.mcp.server.transport | STDIO | STDIO, SSE, STREAMABLE_HTTP |
| Chat Client Enabled | spring.ai.chat.client.enabled | true | true, false |
| Observations Enabled | spring.ai.*.observations.enabled | varies | true, false |
See Complete Configuration Reference →
✅ Zero Configuration - Automatic bean creation based on classpath and properties
✅ Provider Agnostic - Consistent interfaces across 18 AI providers
✅ Production Ready - Retry, observation, and error handling built-in
✅ Flexible - Easy customization via properties or custom beans
✅ Cloud Native - Spring Cloud Bindings and native image support
✅ Comprehensive - 20 vector stores, 11 chat infrastructure modules, 6 MCP modules
Spring AI Spring Boot Auto Configuration provides comprehensive, zero-configuration setup for AI capabilities in Spring Boot applications. With 56 autoconfiguration modules covering chat models, embeddings, vector stores, MCP, and infrastructure components, it enables rapid development of AI-powered applications while maintaining flexibility for customization and production deployment.
Install with Tessl CLI
npx tessl i tessl/maven-org-springframework-ai--spring-ai-spring-boot-autoconfigure@1.1.0