主页

MCP核心组件Resources、Prompts、Tools、Sampling、Roots、Transports介绍

MCP协议核心组件详解及交互关系 1. 核心组件定义与功能 1.1 Resources(资源) 定义:服务器提供的静态数据访问接口,支持类文件系统操作,通过URI标识资源路径(如file:///doc.txt或https://api.example.com/data) 功能: 支持只读操作(读取文件内容/查询数据库/获取API响应) 提供结构化元数据(MIME类型/描述) 示例:IDE通过MCP读取本地代码文件作为LLM调试上下文 控制权:用户完全控制资源的可见性与访问权限 1.2 Prompts(提示) 定义:预定义的指令模板,用于优化LLM的输入上下文结构和输出格式 功能: ...

阅读更多

MCP详解

MCP(Model Context Protocol,模型上下文协议)是由Anthropic公司于2024年11月推出的开放协议,旨在标准化大型语言模型(LLM)与外部数据源、工具及服务的交互方式,从而实现AI应用与外部资源的无缝集成。以下是其核心概念的详细介绍: 1. 定义与目标 MCP通过定义通用接口和通信协议,使LLM能够动态访问并整合外部数据(如数据库、API、文件系统)和工具(如开发工具、邮件服务),同时维护对话上下文。其目标是简化AI应用的开发流程,打破数据孤岛,扩展LLM的功能边界,类似“AI领域的USB-C接口”。 2. 核心组件 MCP基于客户端-服务器架构,包含以下核心组件: MCP主机(Host) :需要访问外部资源的AI应用程序(如Claude D...

阅读更多

使用MyBatis拦截器捕获和拼接完整SQL的实现过程

使用MyBatis拦截器捕获和拼接完整SQL的实现过程 最近要实现一个安全审计功能,需要记录用户操作系统过程中下载数据的所有行为,具体到实际执行的sql,核心需要获取到接口执行过程中所有的sql语句。 拦截器实现以及解释 import org.apache.ibatis.executor.statement.StatementHandler; import org.apache.ibatis.mapping.BoundSql; import org.apache.ibatis.mapping.ParameterMapping; import org.apache.ibatis.plugin.*; import org.apache.ibatis.session.ResultHan...

阅读更多

控制Swagger访问的动态过滤器实现

控制 Swagger 访问的动态过滤器实现 在现代 Web 应用开发中,为了安全性和便捷性,经常需要在不同的环境下动态控制 API 文档页面的访问。本文将解读一段 Java 代码,展示如何通过一个自定义的过滤器来控制 Swagger 文档的访问权限。 背景 Swagger 是一个流行的 API 文档生成工具,但在生产环境中,通常我们不希望所有用户都能访问这些文档。通过动态配置信息来控制 Swagger 页面的访问,可以帮助提升应用的安全性。 代码实现 以下代码片段展示了如何使用 Java 过滤器来实现这个功能: import javax.annotation.Resource; import javax.servlet.Filter; import javax.serv...

阅读更多

IDEA找不到符号

首选解决办法 直接 “mvn clean install -U” 一键解决 在IntelliJ IDEA中遇到“找不到符号”错误时,通常可通过以下步骤排查和解决: 检查依赖管理 Maven/Gradle项目:执行 mvn clean install 或 gradle build 确保依赖正确下载。 手动刷新依赖:IDEA右侧边栏点击Maven/Gradle图标,选择重新导入项目。 本地仓库清理:删除有问题的依赖目录(如 ~/.m2/repository/ 中的对应包),重新下载。 验证JDK配置 项目JDK:File > Project Structure > Project,确认使用的JDK版本与代码兼容。 模块JDK:在 Project St...

阅读更多

记一次arthas性能分析以及优化

问题反馈   接到实施同事反馈线上某医院的服务导出数据比较久,大数据导出导致服务暂时卡死,影响其他服务正常运行,需要帮忙排查解决,数据量在百万级别。 分析调试工具 IDEA(需要插件arthas idea) arthas Postman Windows PowerShell 分析过程 分析环境准备 idea启动服务并安装插件”arthas ide”,方便快捷使用arthas 命令 官网下载解压arthas,进入目录,右键”此处打开PowerShell”,执行如下启动命令 java -jar .\arthas-boot.jar 选择需要分析的服务序号,比如现在要分析的server服务序号是2 确定需要分析的方法,获...

阅读更多

deepseek搭配cherrystudio搭建本地知识库

老规矩,我们还是先来看看搭建完的知识库效果。 比如,我想让DeepSeek告诉我“吕毅是谁?”。 那么,吕毅到底是谁呢? 其实,我也不知道,他是我从网上下载的一篇网络小说里面的一个男性角色。 那么,为了让大家更加直观地好理解,我们来做个简单的对比。 首先,我们先去官网直接提问看看,这是官方给出的答案。 看来,官方也不知道吕毅是谁(废话)。 然后,在我们搭建完私有化知识库之后,再来提问试试。 OK,看到了吧,这就是知识库的意义所在。 那么……科普时间到了。 一、什么是知识库? 知识库(Knowledge Base)是一个存储和管理知识的系统,通常包含结构化和非结构化的信息,用于帮助用户或系统快速查找和获取相关知识。 你可以把它想象成一个“知识仓库”,里面存放着...

阅读更多

本地部署DeepSeek-R1模型

首先 我们需要了解一下,什么是 Ollama ? Ollama 简介 Ollama 是一个快速、轻量且易于使用的开源 AI 代理框架,由 Facebook 开发,可以用来托管和运行各种语言模型(LLM),可以实现在您的硬件设备快速部署各种本地大模型,并且提供了一个简单命令行界面,方便用户快速部署。 既然现在已经了解了 Ollama是干嘛的,那么接下来就是在你的操作系统中安装 Ollama了 安装Ollama Windows 访问 Ollama官网 下载Windows版本安装即可 Linux 操作系统 在你的终端中执行如下命令 1curl -fsSL https://ollama.com/install.sh | sh Docker安装 在 Linux操作系统中也...

阅读更多