Content
# LLM + MCP + RAG
## 目标
- **Augmented LLM** (Chat + MCP + RAG)
- 不依赖框架
- LangChain, LlamaIndex, CrewAI, AutoGen
- **MCP**
- 支持配置多个MCP Serves
- **RAG** 极度简化板
- 从知识中检索出有关信息,注入到上下文
- **任务**
- 阅读网页 → 整理一份总结 → 保存到文件
- 本地文档 → 查询相关资料 → 注入上下文
## **The augmented LLM**
- [Building Effective Agents](https://www.anthropic.com/engineering/building-effective-agents)

```mermaid
classDiagram
class Agent {
+init()
+close()
+invoke(prompt: string)
-mcpClients: MCPClient[]
-llm: ChatOpenAI
-model: string
-systemPrompt: string
-context: string
}
class ChatOpenAI {
+chat(prompt?: string)
+appendToolResult(toolCallId: string, toolOutput: string)
-llm: OpenAI
-model: string
-messages: OpenAI.Chat.ChatCompletionMessageParam[]
-tools: Tool[]
}
class EmbeddingRetriever {
+embedDocument(document: string)
+embedQuery(query: string)
+retrieve(query: string, topK: number)
-embeddingModel: string
-vectorStore: VectorStore
}
class MCPClient {
+init()
+close()
+getTools()
+callTool(name: string, params: Record<string, any>)
-mcp: Client
-command: string
-args: string[]
-transport: StdioClientTransport
-tools: Tool[]
}
class VectorStore {
+addEmbedding(embedding: number[], document: string)
+search(queryEmbedding: number[], topK: number)
-vectorStore: VectorStoreItem[]
}
class VectorStoreItem {
-embedding: number[]
-document: string
}
Agent --> MCPClient : uses
Agent --> ChatOpenAI : interacts with
ChatOpenAI --> ToolCall : manages
EmbeddingRetriever --> VectorStore : uses
VectorStore --> VectorStoreItem : contains
```
## **依赖**
```bash
git clone git@github.com:KelvinQiu802/ts-node-esm-template.git
pnpm install
pnpm add dotenv openai @modelcontextprotocol/sdk chalk**
```
## LLM
- [OpenAI API](https://platform.openai.com/docs/api-reference/chat)
## MCP
- [MCP 架构](https://modelcontextprotocol.io/docs/concepts/architecture)
- [MCP Client](https://modelcontextprotocol.io/quickstart/client)
- [Fetch MCP](https://github.com/modelcontextprotocol/servers/tree/main/src/fetch)
- [Filesystem MCP](https://github.com/modelcontextprotocol/servers/tree/main/src/filesystem)
## RAG
- [Retrieval Augmented Generation](https://scriv.ai/guides/retrieval-augmented-generation-overview/)
- 译文: https://www.yuque.com/serviceup/misc/cn-retrieval-augmented-generation-overview
- 各种Loaders: https://python.langchain.com/docs/integrations/document_loaders/
- [硅基流动](https://cloud.siliconflow.cn/models)
- 邀请码: **x771DtAF**
- [json数据](https://jsonplaceholder.typicode.com/)
## 向量
- 维度
- 模长
- 点乘 Dot Product
- 对应位置元素的积,求和
- 余弦相似度 cos
- 1 → 方向完全一致
- 0 → 垂直
- -1 → 完全想法




Connection Info
You Might Also Like
markitdown
Python tool for converting files and office documents to Markdown.
Fetch
Retrieve and process content from web pages by converting HTML into markdown format.
chatbox
User-friendly Desktop Client App for AI Models/LLMs (GPT, Claude, Gemini, Ollama...)
oh-my-opencode
Background agents · Curated agents like oracle, librarians, frontend...
continue
Continue is an open-source project for seamless server management.
semantic-kernel
Build and deploy intelligent AI agents with Semantic Kernel's orchestration...