MCP接入方式介绍

上一篇文章,我们介绍了MCP是什么以及MCP的使用。
MCP是什么,MCP的使用

接下来,我们来详细介绍一下MCP的接入

先看官网的架构图
image-20250420213558221

上图的MCP 服务 A、MCP 服务 B、MCP 服务 C是可以运行在你的本地计算机(本地服务器方式),也可以运行在远程服务器上( 远程服务器方式)。


两种方式对比

本地服务器方式(stdio)远程服务器方式(sse)
运行方式本地运行服务器进程直接使用服务提供方已部署好的服务
技术复杂度较高(需维护本地环境,安装相关命令和依赖包)较低(仅需配置URL和参数)
性能考虑本地服务器可能有更低的延迟远程服务器可能有更好的稳定性
资源消耗本地服务器需要使用本地计算资源远程服务器不占用本地计算资源
维护方式本地服务器需要自行维护、更新远程服务器由服务提供方维护和更新

下面我们以高德地图的MCP服务为例,来介绍一下这两种方式的接入。

1. 远程服务器方式(sse)

远程服务器方式(sse)

  • 直接指定一个远程URL地址,参数通过URL传递
  • 使用SSE (Server-Sent Events) 与远程服务器通信
  • MCP客户端调用远程服务器提供的MCP服务

配置示例:只需一个url即可

{"mcpServers": {"amap-amap-sse": {"url": "https://mcp.amap.com/sse?key=您在高德官网上申请的key"}}
}

远程服务器方式(sse)连不上时,先确保第三方的sse服务有正常提供,再检查服务地址、参数密钥这些是否正确。


2. 本地服务器方式(stdio)

本地服务器方式(stdio)

  • 通过commandargs运行一个本地进程。args指定运行所需要的参数
  • env中配置运行时的环境变量
  • MCP客户端调用本地运行的MCP服务

注意:所执行的命令需要在你的系统已经安装,否则会运行失败
比如
npx命令则需要先安装Node.js
uvx命令则需要先安装uv包管理器
java命令则需要先安装JDK
docker命令则需要安装Docker容器
等等

Unix/Linux配置示例:

{"mcpServers": {"amap-maps": {"command": "npx","args": ["-y","@amap/amap-maps-mcp-server"],"env": {"AMAP_MAPS_API_KEY": "您在高德官网上申请的key"}}}
}

Windows配置示例:
Windows需要额外加上cmd /c。因为Windows和Unix/Linux系统执行命令的方式不同,加 cmd /c 确保命令能够被正确解释和执行。

{"mcpServers": {"amap-maps": {"command": "cmd","args": ["/c","npx","-y","@amap/amap-maps-mcp-server"],"env": {"AMAP_MAPS_API_KEY": "您在高德官网上申请的key"}}}
}

你可以在命令行窗口先执行下命令检查是否正常

set AMAP_MAPS_API_KEY=您在高德官网上申请的key && npx -y @amap/amap-maps-mcp-server

image-20250423170313251

本地MCP服务连不上时,可以先检查通过上面的方式服务是否能够正常启动。

检查所需要的依赖和要运行的命令是否已经安装,以及版本是否符合。
image-20250423200937484


用 Cherry Studio 来测试两种方式的接入

Cherry Studio 的安装请参考:Cherry Studio下载和安装教程

左下角配置 -> MCP 服务器 -> 添加服务器 -> 填写远程服务器sse地址 -> 保存
image-20250423201829980

输入"请规划一个杭州一日游",并且选择配置好的MCP服务。可以看到调用了工具
image-20250423202355178

删除配置,再试另一种方式
image-20250423203137650

左下角配置 -> MCP 服务器 -> 编辑 MCP 配置
image-20250423201114502

根据配置示例填写配置
image-20250423203312228

输入"广州一日游规划",并且选择配置好的MCP服务。可以看到调用了工具
image-20250423173251334

👉 关注公众号"北灵聊AI",一个专注于技术的博主

✅ 已更新:AI实践虚拟化平台安装
✅ 已更新:Docker Desktop 安装
✅ 已更新:Ollama安装教程
✅ 已更新:DeepSeek私有化部署
✅ 已更新:Dify私有化部署
✅ 已更新:Dify接入大模型
✅ 已更新:Dify + DeepSeek搭建本地私有化知识库
✅ 已更新:Dify应用类型的选择
✅ 已更新:Dify升级指南
✅ 已更新:Dify节点的详细介绍(上)
✅ 已更新:Dify节点的详细介绍(中)
✅ 已更新:Dify节点的详细介绍(下)
✅ 已更新:RagFlow本地部署和使用
✅ 已更新:基于大模型的智能问数NL2SQL
✅ 已更新:用通俗易懂的话告诉你MCP是什么,MCP的使用
✅ 已更新:MCP接入方式介绍
✅ 已更新:3分钟教你开发一个自己的MCP服务

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/902571.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

关于Agent的简单构建和分享

前言:Agent 具备自主性、环境感知能力和决策执行能力,能够根据环境的变化自动调整行为,以实现特定的目标。 一、Agent 的原理 Agent(智能体)被提出时,具有四大能力 感知、分析、决策和执行。是一种能够在特定环境中自主行动、感…

Gitlab runner 安装和注册

Gitlab Runner GitLab Runner是一个用于运行GitLab CI/CD流水线作业的软件包,由GitLab官方开发,完全开源。你可以在很多主流的系统环境或平台上安装它,如Linux、macOS、Windows和Kubernetes。如果你熟悉Jenkins 的话,你可以把它…

精益数据分析(18/126):权衡数据运用,精准把握创业方向

精益数据分析(18/126):权衡数据运用,精准把握创业方向 大家好!一直以来,我都希望能和大家在创业与数据分析的领域共同探索、共同进步。今天,我们继续深入研读《精益数据分析》,探讨…

Git技术详解:从核心原理到实际应用

Git技术详解:从核心原理到实际应用 一、Git的本质与核心价值 Git是由Linux之父Linus Torvalds在2005年开发的分布式版本控制系统,其核心功能是通过记录文件变更历史,帮助开发者实现以下目标: 版本回溯:随时恢复到项…

Java从入门到“放弃”(精通)之旅——String类⑩

Java从入门到“放弃”(精通)之旅🚀——String类⑩ 前言 在Java编程中,String类是最常用也是最重要的类之一。无论是日常开发还是面试,对String类的深入理解都是必不可少的。 1. String类的重要性 在C语言中&#xf…

抓取淘宝数据RPA--影刀

最近用了一下RPA软件,挑了影刀,发现很无脑也很简单,其语法大概是JAVA和PYTHON的混合体,如果懂爬虫的话,学这个软件就快的很,看了一下官方的教程,对于有基础的人来说很有点枯燥,但又不…

docker部署seafile修改默认端口并安装配置onlyoffice实现在线编辑

背景 有很多场景会用到类似seafile功能的需求,比如: 在内网中传输和共享文件个人部署私人网盘文档协同在线编辑写笔记… 这些功能seafile均有实现,并且社区版提供的功能基本可以满足个人或者小型团队的日常需求 问题 由于主机的80和443端…

计算机视觉cv2入门之视频处理

在我们进行计算机视觉任务时,经常会对视频中的图像进行操作,这里我来给大家分享一下,cv2对视频文件的操作方法。这里我们主要介绍cv2.VideoCapture函数的基本使用方法。 cv2.VideoCapture函数 当我们在使用cv2.VideoCapture函数时&#xff…

Linux之彻底掌握防火墙-----安全管理详解

—— 小 峰 编 程 目录: 一、防火墙作用 二、防火墙分类 1、逻辑上划分:大体分为 主机防火墙 和 网络防火墙 2、物理上划分: 硬件防火墙 和 软件防火墙 三、硬件防火墙 四、软件防火墙 五、iptables 1、iptables的介绍 2、netfilter/…

python项目实战-后端个人博客系统

本文分享一个基于 Flask 框架开发的个人博客系统后端项目,涵盖用户注册登录、文章发布、分类管理、评论功能等核心模块。适合初学者学习和中小型博客系统开发。 一、项目结构 blog │ app.py │ forms.py │ models.py │ ├───instance │ blog.d…

Unity 接入阿里的全模态大模型Qwen2.5-Omni

1 参考 根据B站up主阴沉的怪咖 开源的项目的基础上修改接入 AI二次元老婆开源项目地址(unity-AI-Chat-Toolkit): Github地址:https://github.com/zhangliwei7758/unity-AI-Chat-Toolkit Gitee地址:https://gitee.com/DammonSpace/unity-ai-chat-too…

第十五届蓝桥杯 2024 C/C++组 合法密码

目录 题目: 题目描述: 题目链接: 思路: substr函数: 思路详解: 代码: 代码详解; 题目: 题目描述: 题目链接: P10906 [蓝桥杯 2024 国 B] 合法密码 -…

NoSQL 简单讲解

目录 1. NoSQL 的背景与意义 1.1 数据库的演变 1.2 NoSQL 的兴起 2. NoSQL 数据库的分类 2.1 键值存储(Key-Value Stores) 2.2 文档数据库(Document Stores) 2.3 列族存储(Column-Family Stores) 2.…

122.在 Vue3 中使用 OpenLayers 实现图层层级控制(zIndex)显示与设置详解

📅 作者:彭麒 📫 邮箱:1062470959@qq.com 📌 声明:本文源码归吉檀迦俐所有,欢迎学习借鉴,如用于商业项目请注明出处 🙌 🔧 技术栈:Vue 3 + Composition API + OpenLayers 6+ + Element Plus + Tailwind CSS 🧠 一、什么是 zIndex(图层层级)? 在地图开发中…

车载测试用例开发-如何平衡用例覆盖度和测试效率的方法论

1 摘要 在进行车载测试用例编写时,会遇到多个条件导致用例排列组合爆炸的情况,但是为了产品测试质量,我们又不得不保证用例设计的需求覆盖度,这样又会使得测试周期非常长。我们如何平衡效率和测试质量?本文进行了一些…

AI——神经网络以及TensorFlow使用

文章目录 一、TensorFlow安装二、张量、变量及其操作1、张量Tensor2、变量 三、tf.keras介绍1、使用tf.keras构建我们的模型2、激活函数1、sigmoid/logistics函数2、tanh函数3、RELU函数4、LeakReLu5、SoftMax6、如何选择激活函数 3、参数初始化1、bias偏置初始化2、weight权重…

Kubernetes (k8s) 日常运维命令总结

一、资源查看 查看所有命名空间的 Pod kubectl get pod --all-namespaces查看指定命名空间的 Pod kubectl get pod --namespace <命名空间>查看所有部署&#xff08;Deployments&#xff09; kubectl get deployments.apps --all-namespaces查看所有守护进程集&#xff0…

【PostgreSQL教程】PostgreSQL 特别篇之 语言接口连接Perl

博主介绍:✌全网粉丝22W+,CSDN博客专家、Java领域优质创作者,掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域✌ 技术范围:SpringBoot、SpringCloud、Vue、SSM、HTML、Nodejs、Python、MySQL、PostgreSQL、大数据、物联网、机器学习等设计与开发。 感兴趣的可…

07-IDEA企业开发工具-开发入门程序

1. IDEA创建Java项目的代码结构 项目结构: IDEA中的Java项目包含四种主要结构&#xff1a;工程(Project)、模块(Module)、包(Package)、类(Class)。 工程(Project): 代表整个项目&#xff0c;通常是一个磁盘目录或文件夹。模块(Module): 工程下的子单元&#xff0c;用于划分项…

深度解析云计算:概念、优势与分类全览

以下是对云计算概念、优点和分类更详细的介绍&#xff1a; 一、云计算的概念 云计算是一种通过互联网提供计算服务的模式&#xff0c;它基于虚拟化、分布式计算、网络存储等一系列先进技术&#xff0c;将计算资源进行整合和管理&#xff0c;形成一个庞大的资源池。这些资源包…