Commit Graph

55 Commits

Author SHA1 Message Date
Ilayaperumal Gopinathan
22f3f55cbc Fix examples for deprecated usages
- Fix Java FunctionCallback chatClient to use toolNames instead of tools to specify the function name
 - Fix MCP FileSystem Application ChatClientBuilder to use defaultToolCallbacks instead of defaultTools
2025-05-01 18:12:30 +01:00
Soby Chacko
40e1b43d53 Updating the version to 1.0.0-SNAPSHOT 2025-04-28 21:03:22 -04:00
Soby Chacko
e0ba3438ba Update spring-ai version to 1.0.0-M7 (#22)
Signed-off-by: Soby Chacko <soby.chacko@broadcom.com>
2025-04-10 17:15:09 -04:00
Christian Tzolov
e8a266467c feat(mcp): Add MCP logging support and refactor code
- Add logging consumer to MCP client specification
- Implement logging notifications for sampling start/finish in WeatherService
- Refactor WeatherService to use McpToolUtils and StringBuilder

Signed-off-by: Christian Tzolov <christian.tzolov@broadcom.com>
2025-04-10 20:30:22 +02:00
Soby Chacko
7e04dc20f9 Update Spring AI dependencies to 1.0.0-SNAPSHOT (#21)
- Update Spring AI version from 1.0.0-M5 to 1.0.0-SNAPSHOT across all modules
- Update artifact IDs to match new naming convention (spring-ai-*-spring-boot-starter → spring-ai-starter-model-*)
- Add central-portal-snapshots repository to all projects for SNAPSHOT dependency resolution
- Standardize repository URLs to use repo.spring.io/milestone instead of libs-milestone-local
- Remove the obsolete spring-ai-core dependency in Kotlin modules
- Update QuestionAnswerAdvisor import path in rag-with-kotlin
- Reorganize root POM module ordering for better organization

Signed-off-by: Soby Chacko <soby.chacko@broadcom.com>
2025-04-10 20:27:35 +02:00
Christian Tzolov
cf100596ff fix deps from spring-ai-core to spring-ai-model
Signed-off-by: Christian Tzolov <christian.tzolov@broadcom.com>
2025-04-04 23:25:08 +02:00
Christian Tzolov
a12bf24104 fix mcp version
Signed-off-by: Christian Tzolov <christian.tzolov@broadcom.com>
2025-04-01 19:40:19 +02:00
Daniel Garnier-Moiroux
cf5f38cf8f add oauth2 support mcp/weather/starter-webmvc-oauth2-server
Signed-off-by: Daniel Garnier-Moiroux <git@garnier.wf>
2025-04-01 16:35:25 +02:00
Christian Tzolov
9bfbcb4c90 print tools properties
Signed-off-by: Christian Tzolov <christian.tzolov@broadcom.com>
2025-03-27 01:32:16 +01:00
Christian Tzolov
77b973ff14 Add MCP sampling diagram
Signed-off-by: Christian Tzolov <christian.tzolov@broadcom.com>
2025-03-26 18:27:09 +01:00
Mark Pollack
b8fb18b5e7 update readme.md to list correct deps in brave, client-starter and sampling. 2025-03-25 15:20:09 -04:00
Mark Pollack
614c61316b web-search examples: Sync maven deps used with those listed in README.md 2025-03-25 15:11:34 -04:00
Christian Tzolov
41c921bc33 refactor: update MCP API usage to version 0.8.0
- Remove all book-library MCP examples (servlet, webflux, and webmvc implementations)
- Update weather example to use MCP version 0.8.0-SNAPSHOT
- Refactor transport handling to use transport providers instead of direct transport objects
- Update method calls from toSyncToolRegistration to toSyncToolSpecifications
- Add central-portal-snapshots repository to pom.xml for dependency resolution
- Align with the new MCP client class names

Add MCP Sampling capability with weather example

Adds MCP Sampling implementation that demonstrates how to delegate LLM requests to multiple providers.

- add a weather server that retrieves data and uses MCP Sampling to generate creative content
- add a client that routes requests to different LLM providers (OpenAI and Anthropic) based on model hints
- add README documentation explaining the MCP Sampling workflow and implementation details

The MCP Sampling capability enables applications to leverage multiple LLM providers within a single workflow,
allowing for creative content generation, model comparison, and specialized task delegation.

refactor: migrate to spring-ai-mcp-client-spring-boot-starter

- Replace spring-ai-mcp dependency with spring-ai-mcp-client-spring-boot-starter
- Update import statements from org.springframework.ai.mcp.* to io.modelcontextprotocol.client.*
- Replace McpFunctionCallback with SyncMcpToolCallbackProvider
- Update Spring AI version from 1.0.0-M5 to 1.0.0-SNAPSHOT in multiple projects
- Enable tool callback auto-configuration with spring.ai.mcp.client.toolcallback.enabled

refactor: update Spring AI artifact IDs to new naming convention

- Update all Spring AI dependencies to use the new naming convention:
spring-ai-*-spring-boot-starter → spring-ai-starter-*
spring-ai-openai-spring-boot-starter → spring-ai-starter-model-openai
spring-ai-mcp-client-spring-boot-starter → spring-ai-starter-mcp-client
- And similar patterns for other artifacts
- Enable debug mode in brave module's application.properties

Signed-off-by: Christian Tzolov <christian.tzolov@broadcom.com>
2025-03-25 15:05:27 -04:00
Christian Tzolov
1ca981eba5 refactor(mcp): migrate MCP demos to ToolCallbackProvider
- Replace List<ToolCallback> with ToolCallbackProvider for tool registration
- Use MethodToolCallbackProvider.builder() pattern across all modules

Signed-off-by: Christian Tzolov <christian.tzolov@broadcom.com>
2025-02-13 20:36:58 +01:00
Christian Tzolov
9da4fd9068 Add mcp weather webmvc starter example 2025-02-13 17:56:21 +01:00
Christian Tzolov
1f9488541f Minor MCP demo conf improvents
Signed-off-by: Christian Tzolov <christian.tzolov@broadcom.com>
2025-02-11 10:26:03 +01:00
Mark Pollack
4c00795154 Minor updates to client-starter/starter-default-client and starter-webflux-client 2025-02-11 00:01:51 -05:00
Mark Pollack
e3f0bd1f8b Minor updates to book-library/starter-webflux-server 2025-02-10 23:42:00 -05:00
Mark Pollack
20ac610186 Minor updates to book-library/manual-servlet-server 2025-02-10 23:35:33 -05:00
Mark Pollack
441e566813 Minor cleanup on web-search/brave-chatbot 2025-02-10 23:16:10 -05:00
Mark Pollack
be08c1be18 Minor cleanup on web-search/brave-starter 2025-02-10 23:09:53 -05:00
Mark Pollack
f91d8aa323 Update example in brave directory that creates a McpSyncClient as a @Bean
- Does not use the spring ai mcp starter
- Use latest deps
- Update readme
- Code cleanup
2025-02-10 22:52:12 -05:00
Christian Tzolov
fab7b1da33 docs: enhance MCP server documentation with client usage examples
- Add comprehensive Boot Starter client usage examples
- Improve documentation clarity and organization
- Update configuration examples for both STDIO and SSE transports
- Standardize formatting and fix typos

Signed-off-by: Christian Tzolov <christian.tzolov@broadcom.com>
2025-02-10 15:01:20 +01:00
Christian Tzolov
cf529d6940 move the brave client starters under the web-search folder
Signed-off-by: Christian Tzolov <christian.tzolov@broadcom.com>
2025-02-10 11:41:45 +01:00
Christian Tzolov
3ae5f5d45d minor fixes
Signed-off-by: Christian Tzolov <christian.tzolov@broadcom.com>
2025-02-10 11:05:17 +01:00
Christian Tzolov
8cc8e2e933 Improve weather starter docs
Signed-off-by: Christian Tzolov <christian.tzolov@broadcom.com>
2025-02-10 09:12:26 +01:00
Christian Tzolov
721c4d37d0 Add docs for the mcp/client-starter projects
Signed-off-by: Christian Tzolov <christian.tzolov@broadcom.com>
2025-02-10 08:42:52 +01:00
Christian Tzolov
a29ea2b743 Restructure
Signed-off-by: Christian Tzolov <christian.tzolov@broadcom.com>
2025-02-09 22:05:35 +01:00
Christian Tzolov
dac5e7bd6e Add MCP weather servers and Brave integration examples
Signed-off-by: Christian Tzolov <christian.tzolov@broadcom.com>
2025-02-05 17:39:31 -05:00
Christian Tzolov
69e6949251 Clean code 2025-01-31 11:24:15 +01:00
Christian Tzolov
0ddbb686ad Update the mcp demos to latest 0.6.0 version 2025-01-24 19:10:21 +01:00
Ilayaperumal Gopinathan
1433ff7382 Update README.md 2025-01-20 11:54:09 +00:00
Christian Tzolov
9766aa7e0f Improve the the MCP server demo code 2025-01-17 14:47:12 +01:00
Christian Tzolov
9a7fcd517f Update MCP version to 0.5.1 2025-01-14 15:17:16 +01:00
Christian Tzolov
2e5ce79818 Add file logging for the MCP demos 2025-01-14 12:41:11 +01:00
Christian Tzolov
aad2e4c45b Update MCP samples to 0.5.0 2025-01-13 12:24:12 +01:00
Christian Tzolov
ba07215c48 Add MCP Servlet SSE demo 2025-01-13 09:11:17 +01:00
Christian Tzolov
f753efc483 Add MCP WebFlux Client+Server example 2025-01-11 17:48:21 +01:00
Christian Tzolov
d5a016cbd2 Add MCP WebMvc Server + HttpClient sample 2025-01-11 17:31:35 +01:00
Christian Tzolov
144bc2836e Upgrade MCP demos to 0.4.1 2025-01-04 18:27:00 +01:00
Christian Tzolov
62e8bb064b Upgrade MCP demos to 0.4.0 2025-01-04 08:40:36 +01:00
Christian Tzolov
b52e96d7fb Upgrade MCP examples to 0.3.1 2024-12-30 13:34:24 +01:00
Christian Tzolov
e20bc4f3c9 Upgrade MCP examples to 0.3.1 2024-12-30 13:32:43 +01:00
Christian Tzolov
544394fd97 Update the MCP examples to MCP 0.3.0 milestone (#6) 2024-12-29 18:22:54 +01:00
Mark Pollack
4ddd9135f0 Update to 1.0 M5 release 2024-12-23 13:13:36 -05:00
Christian Tzolov
813c989d91 Update MCP examples to version 0.2.0 2024-12-21 18:35:27 +01:00
Christian Tzolov
e2ddc87f61 Simplify the MCP Brave code 2024-12-12 11:05:18 +01:00
Christian Tzolov
30b0a59b49 update mcp brave diagram 2024-12-12 09:28:21 +01:00
Christian Tzolov
6c301868e3 Add MCP Brave demo 2024-12-12 00:02:11 +01:00
Christian Tzolov
1ee0c9d00f add mcp filesystem demo 2024-12-11 12:14:12 +01:00