Langchain4j MCP Client logo

Langchain4j MCP Client

by thrkrdk

This repository provides a Langchain4j MCP (Model as a Conversation Platform) client for Spring Boot, designed to connect to an MCP server. It demonstrates how to connect to private LLMs and interact with the MCP server using SSE and STDIO.

View on GitHub

Last updated: N/A

What is Langchain4j MCP Client?

This is a Langchain4j client application that connects to a Model as a Conversation Platform (MCP) server. It allows you to interact with Large Language Models (LLMs) through the MCP server, leveraging tools and functionalities exposed by the server.

How to use Langchain4j MCP Client?

The repository contains different branches demonstrating various connection methods. The '03-use-mcp-server-stadio' branch is the final branch and contains the complete code. To use it, you'll need to configure the Ollama URL (potentially using Kaggle and Ngrok), run the demo image in Podman in STDIO mode, create a ChatLanguageModel for Ollama, create a Transport for MCP with STDIO, and create an MCP Client. The MCP server requires a ToolProvider to get tools from the server. Finally, create an aiservices instance with Bot type and call the assistant with a tool.

Key features of Langchain4j MCP Client

  • Connects to MCP server using SSE and STDIO

  • Integrates with Langchain4j

  • Supports private LLMs (e.g., Ollama)

  • Demonstrates tool usage through MCP

  • Provides a Spring Boot-based client application

Use cases of Langchain4j MCP Client

  • Building AI assistants using private LLMs

  • Integrating LLMs into Spring Boot applications

  • Leveraging tools and functionalities exposed by an MCP server

  • Creating conversational AI applications

  • Experimenting with different LLM connection methods (SSE, STDIO)

FAQ from Langchain4j MCP Client

What is Langchain4j?

Langchain4j is a Java library for building AI-powered applications.

What is MCP?

MCP stands for Model as a Conversation Platform, a server that manages and exposes LLMs and their functionalities.

How do I connect to a private LLM?

The repository demonstrates connecting to Ollama, a tool for running LLMs locally.

What is the difference between SSE and STDIO?

SSE (Server-Sent Events) and STDIO (Standard Input/Output) are different communication protocols used to connect to the MCP server.

Which branch should I use?

The '03-use-mcp-server-stadio' branch is the final branch and contains the complete code.