Content
This project is a Java implementation based on [KelvinQiu802/llm-mcp-rag](https://github.com/KelvinQiu802/llm-mcp-rag), used for learning and practicing LLM, MCP, and RAG technologies.
The author's demonstration video is located at [LLM+MCP+RAG实战-从0无框架实现极简Agent客户端 OpenAI/智能体/大模型/AI/DeepSeek](https://www.bilibili.com/video/BV1dcRqYuECf/)
## 1
The original project used JavaScript, which is dynamically typed. Converting data structures (such as converting MCP's Tool to OpenAI's Tool) was very concise, and tool call parameters could be passed around casually.
However, after switching to a strongly typed language like Java, everything needs to be explicitly defined with types, requiring a lot of mapping code and handling serialization. If the documentation is not clear, it can be particularly troublesome, and it's easy to pass parameters incorrectly, such as passing tool call content in a format that LLM doesn't recognize.
## 2
During testing of the MCP client server, it was found that the program did not exit normally when it ended. The reason was that MCP called a Node service when connecting, and after closing the MCP connection, the Node service did not stop, causing the program to not exit. The solution was to force exit the program (perhaps there is a more correct way?).
## 3
During final testing, it was discovered that embedding prompts always returned a 403 error, possibly due to API limitations, which prevent too many requests from being made in a short period. Removing two pieces of knowledge content and retesting resolved the issue.
**<div>Some content</div>**
No Chinese characters should appear in the output. All HTML tags are preserved.
Connection Info
You Might Also Like
n8n
n8n is a workflow automation platform for technical teams, combining code...
ollama
Get up and running with OpenAI gpt-oss, DeepSeek-R1, Gemma 3 and other models.
dify
Dify is a platform for AI workflows, enabling file uploads and self-hosting.
open-webui
Open WebUI is an extensible web interface for various applications.
NextChat
NextChat is a light and fast AI assistant supporting Claude, DeepSeek, GPT4...
zed
Zed is a high-performance multiplayer code editor from the creators of Atom.
Cline
Cline is a versatile tool available on VS Marketplace for enhancing...
anything-llm
AnythingLLM: An all-in-one AI app for chatting with documents and using AI agents.
cherry-studio
🍒 Cherry Studio is a desktop client that supports for multiple LLM providers.
goose
Goose is an open-source AI agent that automates engineering tasks autonomously.