mcpField
S
spring-ai-mcp-client

spring-ai-mcp-client

Local
github.com/ogulcanarbcAI & Agents44Updated 87w ago

About spring-ai-mcp-client

spring-ai-mcp-client is an MCP client application built on Spring AI. It connects to MCP-compatible servers to enable AI chat, aimed at Java developers, with support for Anthropic Claude and OpenAI models.

Key features

  1. 01Protocol version and capability negotiation
  2. 02Tool discovery and execution
  3. 03Resource access and prompt interactions
  4. 04Roots management and sampling support
  5. 05Anthropic and OpenAI model support

Use cases

  1. 01Connecting MCP servers to a Spring Boot application
  2. 02Calling MCP tools through a chat endpoint
  3. 03Building AI chat features on Claude or OpenAI

MCP support

The application acts as an MCP client, establishing and managing connections to MCP servers configured in mcp-servers.json and application.yml.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

No install method listed yet

We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.

Repository

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

spring-ai-mcp-client

The Model Context Protocol (MCP) client application utilizes Spring AI and Anthropic Claude models (Or OpenAI). It integrates with MCP protocol-supported servers to enable AI-powered chat interactions.

What is Spring MCP Client

The MCP Client is a key component in the Model Context Protocol (MCP) architecture, responsible for establishing and managing connections with MCP servers. It implements the client-side of the protocol, handling:

- Protocol version negotiation to ensure compatibility with servers
- Capability negotiation to determine available features
- Message transport and JSON-RPC communication
- Tool discovery and execution
- Resource access and management
- Prompt system interactions
- Optional features like roots management and sampling support
- Supports openai and anthropic models

Requirements

Java 17+
Maven or Gradle
Docker (Optional)
Anthropic API key Or OpenAI API key

Installation

1. Clone Repository
    git clone <repo-url>
    cd spring-ai-mcp-client
2. MCP Server Configuration

The MCP server information must be added to the mcp-servers.json file as follows.

{
    "mcpServers":{
        "any-mcp-server":{
          "command":"node",
          "args":[
            "any-mcp-server/build/index.js"
          ]
        }
    }
}
3. Spring Configuration

The application.yml file should be configured as follows:

spring:
  ai:
    mcp:
      client:
        enabled: true
        name: any-mcp-server # MCP server name
        version: 1.0.0
        type: SYNC
        request-timeout: 20s
        stdio:
          root-change-notification: true
          servers-configuration: classpath:mcp-servers.json # MCP server config such/same as claude desktop configs.
    anthropic:
      api-key: ${ANTHROPIC_API_KEY}
#   openai:
#     api-key:  ${OPENAI_API_KEY}  
server:
  port: 8081
4. Run Applicaton
mvn clean install
mvn spring-boot:run
Usage

Once the application is running, it can be accessed via the following endpoint:

You can start a chat with the following cURL command:

curl -X GET "http://localhost:8081/ai?message=Hello" -H "Accept: application/json"

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.