MCP ExplorerExplorer

Spring Ai Mcp Client

@ogulcanarbcon 9 months ago
42 MIT
FreeCommunity
AI Systems
#anthropic-claude#mcp#mcp-client#spring-ai#ai
mcp client application that utilizes spring ai and anthropic claude models. it integrates with mcp protocol-supported servers to enable ai-powered chat interactions.

Overview

What is Spring Ai Mcp Client

spring-ai-mcp-client is an MCP client application that leverages Spring AI and Anthropic Claude models to facilitate AI-powered chat interactions with MCP protocol-supported servers.

Use cases

Use cases for spring-ai-mcp-client include developing AI chatbots, integrating AI capabilities into applications, and enhancing user interactions through AI-driven conversations.

How to use

To use spring-ai-mcp-client, clone the repository, configure the MCP server in the mcp-servers.json file, set up the application.yml for Spring configuration, and run the application using Maven commands. Access the chat interface via the provided endpoint.

Key features

Key features include protocol version negotiation, capability negotiation, message transport via JSON-RPC, tool discovery, resource management, prompt system interactions, and support for both OpenAI and Anthropic models.

Where to use

undefined

Content

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"

Tools

No tools

Comments

Recommend MCP Servers

View All MCP Servers