从MCP实践到开发简单的MCP服务

【MCP】魔搭社区MCP服务(高德地图、everything文件搜索) 魔搭社区MCP服务搭建及高德地图、everything文件检索功能示例 阅读详情

一 前言

上次玩MCP已经过了一段时间了,尝试的都比较简单的MCP,这次想找几个实用的MCP服务器实战下,看看效果。

二 实用的高德地图MCP

高德地图的MCP是基于SSE的,是一种基于HTTP的技术,客户端和服务器端建立持久连接,服务器端可以实时单向向客户端推送消息,无需客户端反复请求,有点类似websocket;

高德地图 MCP Server 是基于 SSE(Server-Sent Events)技术的地理服务接口集合,
允许开发者通过 MCP 协议调用地图服务,如路径规划、天气查询、地点搜索等。
它支持与如 Cursor、Claude 等大模型工具无缝集成。

2.1 配置

我本次采用的工具是Cherry studio,使用起来比Cline更简单些;配置比较简单:

  1. 到https://mcpmarket.cn/server/67ff4974764487b6b9e11c21 获取SSEURL;

  2. 在Cherry Studio做如下配置,配置后开启;MCP服务器配置

2.2 使用

在聊天对话框内选择高德地图这个MCP服务器,然后进行聊天即可:聊天1这个MCP服务器还支持天气查询功能,不过刚才的规划中并没有考虑到天气,再问下:聊天2

三 飞书的MCP

很多公司使用飞书作为办公的IM,飞书已经开发了个MCP服务器,利用此MCP可以创建群聊,发送消息,获取消息列表等,如下。飞书MCP默认支持功能

3.1 创建飞书APP

  1. 访问飞书开发平台,并登录:https://open.feishu.cn/

  2. 点击“开始使用”并创建一个新应用,应用名随便写;

  3. 开通相关权限,如果不开通执行会报错,再按照报错提示开通权限也行,如下图;

  4. 如果您需要以用户身份调用 API,请设置 OAuth 2.0 重定向 URL 并获取用户访问令牌;

  5. 在凭证和基础管理的地方,获取App ID和App Secret。

添加权限image.png

获取App ID和App Secret获取App ID和App Secret

3.2 全局安装lark-mcp工具和配置

全局安装lark-mcp工具

npm install -g @larksuiteoapi/lark-mcp

配置:

{
  "mcpServers": {
    "lark-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@larksuiteoapi/lark-mcp",
        "mcp",
        "-a",
        "<your_app_id>",
        "-s",
        "<your_app_secret>"
      ]
    }
  }
}

如果需要用户身份访问API,配置如下:

{
  "mcpServers": {
    "lark-mcp": {
     "command": "npx",
      "args": [
        "-y",
        "@larksuiteoapi/lark-mcp",
        "mcp",
        "-a",
        "<your_app_id>",
        "-s",
        "<your_app_secret>",
        "-u",
        "<your_user_token>"
      ]
    }
  }
}

启动image.png其他启动参数可以参考:

https://mcpmarket.cn/server/68009589a5deaa7aaa917d69

说明下,为什么其他MCP服务器基本上配置就好了,这边要启动那,其他的MCP Server是在远程启动好的服务,而Lark-MCP的服务器需要本地启动,然后Lark-MCP只是将MCP的交互协议转成了飞书的各种API调用,飞书没有在平台启动MCP ,所以不行。而上面高德地图的MCP是MCP Server在远程启动好了的。

lark-mcp mcp -a cli_a8b8736ab9389013  -s App secret   -m sse --host 0.0.0.0 -p 3000

在Cherry studio 上配置就比较简单了:feishu 在Cherry studio 上配置

3.3 实测

做个简单的测试,通过这个MCP创建一个名字叫MCP测试的群聊,然后将我飞书账号添加进去,并发送给消息标识成功;

第一次尝试失败,仍然缺失部分权限,如图:mcp测试失败

在更正的过程中发现几个比较大的问题:

  1. 需要把应用先发布才行,随便指定个版本即可;

  2. 为了避免多次折腾,可以先在页面上调试好;API调试

最终测试成功image.png

在飞书里面的信息:飞书里面成功信息

总结使用DeepSeek+Lark-Mcp 虽然最终实现了自己要求的功能,但是感觉总体使用起来还是磕磕绊绊的,主要有两个原因:

  1. 是飞书里面的权限控制挺细的,很多时候是缺少权限;

  2. DeepSeek-R1模型有时候也会产生调用误用API列表造成各种失败,有时候会显得过于啰嗦。

意外发现Cherry Stdio竟然可以直接显示DeepSeek-R1的给出的调用流程图了:DeepSeek-R1绘制调用lark-mcp流程图

四 创建自己的MCP服务器

MCP协议准许我们以安全、标准化的方式向LLM公开数据和功能,可以简单看成一套标准接口,这个接口专门用于对接LLM的。目前主要用python或TypeScript,也有用java开发的比较少。本次我准备用python借助FastMCP库开发个简单的例子。

为什么需要FastMCP,理由如下:

  1. MCP 协议功能强大,但实现它需要大量的样板代码——服务器设置、协议处理程序、内容类型、错误管理。FastMCP 处理所有复杂的协议细节和服务器管理,因此您可以专注于构建优秀的工具。

  2. 它设计为高级且 Python 风格的;在大多数情况下,您只需装饰一个函数即可。

  3. 虽然 FastMCP 1.0 的核心服务器概念奠定了基础并贡献给了官方 MCP SDK,但FastMCP 2.0(本项目)是积极开发的后继者,增加了重大增强和全新功能,如强大的客户端库、服务器代理、组合模式、OpenAPI/FastAPI 集成等等。

FastMCP 的目标是: 🚀快速:高级接口意味着更少的代码和更快的开发速度 🍀简单:使用最少的样板构建 MCP 服务器 🐍 Pythonic:对 Python 开发人员来说感觉很自然 🔍完整: FastMCP 旨在为服务器和客户端提供核心 MCP 规范的完整实现

4.1 构建测试环境

mac@MacdeMBP code % python3 -m venv mcpenv
mac@MacdeMBP code % ls
mcpenv
mac@MacdeMBP code % source mcpenv/bin/activate
(mcpenv) mac@MacdeMBP code % pip install fastmcp

写个非常简单的mcp服务器:

#!/bin/python
from fastmcp import FastMCP
from fastmcp.exceptions import ToolError

mcp = FastMCP("Demo 🚀")

@mcp.tool()
def divide(a: float, b: float) -> float:
    """Divide a by b."""
    if b == 0:
        # Error messages from ToolError are always sent to clients,
        # regardless of mask_error_details setting
        raise ToolError("Division by zero is not allowed.")

    # If mask_error_details=True, this message would be masked
    if not isinstance(a, (int, float)) or not isinstance(b, (int, float)):
        raise TypeError("Both arguments must be numbers.")

    return a / b


@mcp.tool()
def hello(name: str) -> str:
    return f"Hello, {name}!"

if __name__ == "__main__":
    mcp.run()

然后简单运行下,看是否正常执行:

(mcpenv) mac@MacdeMBP mcpenv % python src/add-mcp.py
[05/25/25 18:43:57] INFO     Starting MCP server 'Demo 🚀' with transport 'stdio'

正常运行,采用的是stdio方式连接的。

4.2 配置和运行

配置cherry stdio 将我们写的mcp server配置上去,如下图:自定义mcp server配置

简单的测试下运行结果,除以写成了处于,AI仍然能够得到正确的结果:image.png

对于stdio方式不是太方便,还有两种接口模式: 可流式传输的 HTTP:推荐用于 Web 部署:

mcp.run(transport="streamable-http", host="127.0.0.1", port=8000, path="/mcp")

SSE:为了与现有的 SSE 客户端兼容。

mcp.run(transport="sse", host="127.0.0.1", port=8000)

我们将接口改成SSE测试下,重新配置cherry stdio:cherry stdio配置

重新测试:测试结果

五 总结

从高德地图到飞书,成熟的MCP服务正在重塑我们的开发方式。它们让应用开发变得前所未有的简单——无需从零搭建服务器架构,利用现成的MCP服务就能快速打造产品原型,用最低成本验证市场价值。

但真正的技术自由来自于自主可控。借助Python和TypeScript强大的MCP开发框架,开发者可以轻松构建专属MCP服务。这些框架封装了复杂的底层交互,让我们能够专注于核心业务逻辑的实现。

当企业级MCP服务遇见大语言模型,一场智能化变革正在上演:

  • 为企业知识库注入智能活力,有效减少模型幻觉

  • 打通各业务系统壁垒,构建真正的智能工作流

  • 推动业务流程自动化迈向新高度

当然,这个新兴技术组合还存在优化空间:token消耗、响应速度、问题解决效率等方面仍有提升余地。但正如所有颠覆性技术一样,MCP+LLM的潜力远大于当前的局限。它正在以惊人的速度进化,而今天的选择,将决定明天的高度。

高德地图MCP Server介绍以及使用 高德地图 MCP Server 现已覆盖12大核心服务接口,提供全场景覆盖的地图服务,包括地理编码、逆地理编码、IP 定位、天气查询、骑行路径规划、步行路径规划、驾车路径规划、公交路径规划、距离测量、关键词搜索、周边搜索、详情搜索等。 阅读详情

相关推荐

旅行计划不再焦虑!Cherry Studio + 高德地图MCP,让每一步都精准且治愈

今日实践分享:使用Cherry Studio + 高德地图MCP做个旅行计划。

哈怂的博客 3275

手把手MCP基础学习和实践

而MCP服务端、服务器、远程服务都是可以自行编写构建的,就像我们平时写应用程序客户端一样,而这里我主要学习的也就是如何自行编写MCP客户端、MCP服务器、如何购机按本地数据源,和构建和连接远程服务,最终构建我们自己的基于LLM和MCP的智能体。服务端开发主要面向想要开发自己MCP插件的开发人员,我们要构建的是现阶段基础LLM无法实现的能力,例如使用地图软件查询路线,天气软件查询天气、评分软件查询评价等等,现在就让我们来尝试使用MCP解决这些问题,然后实践这些服务。

m0_67276169的博客 1654

基于 MCP 的 AI Agent 应用开发实践

最近大家都在聊 MCP,发现有个最重要的点被忽略了 『通过标准化协议,将工具提供方与应用研发者解耦』 ,这一点带来的将是 AI Agent 应用研发范式的转移(类似 Web 应用研发的前后端分离)。 本文以开发 Agent TARS 应用为例,尽可能详细地介绍 MCP 在『开发范式』、『工具生态扩展』上起到的作用。

bytedanceospo的博客 1342

高德地图MCP:AI与地理服务的完美融合

高德地图MCP(Model Context Protocol)是基于开放标准构建的地图服务能力平台,通过标准化接口实现AI智能体与地理服务的深度融合。以下内容展示了MCP客户端的基础使用方法,您可以发挥创意将其集成到您的AI应用中,释放地图数据的无限价值。通过高德地图MCP,您可以轻松将地理信息服务能力注入到您的AI应用中,创造更加智能、便捷的用户体验!:一键获取POI的全面详细信息,包括名称、分类、评分、营业时间、联系方式等。:为小客车、轿车用户提供高效通勤方案,完美支持跨城市的长途驾驶场景。

学点程序 4317

MCP开发实战快速开始

本文介绍了如何快速开始MCP开发,包括搭建开发环境、创建MCP服务器以及构建AI原生应用。首先,通过安装Python和MCP SDK,配置开发环境,并验证其正确性。接着,详细讲解了如何创建一个简单的文件服务器,使用MCP CLI快速生成服务器项目,并通过测试客户端验证服务器功能。最后,展示了如何利用MCP服务器和大语言模型构建一个能够访问和分析文件的智能助手。通过本文的实战示例,读者可以快速上手MCP开发,并应用于AI原生应用的构建。

AI天才研究院 818

企业微信——智能表格学习

企业微信报表

qq_15138049的博客 1万+

Lark MCP - 飞书全场景 Function Call AI 助手 来了[特殊字符]

Lark MCP - 飞书全场景 Function Call AI 助手 来啦🚀

qq_52572722的博客 1281

国产NAS哪家强?极空间&绿联&威联通&群晖对比

随着个人数据量暴增,传统网盘空间不足和下载速度慢问题愈发凸显。新势力NAS,作为数据管理领域的璀璨新星,正以其独特的互联网设计理念,引领家庭及小型办公用户向数据存储的新纪元。它不仅仅是一款产品,更是为初学者用户量身定制的贴心伙伴。其系统界面之简洁、操作流程之直观,让人一目了然,真正实现了“即插即用”的极致便捷。同时,新势力NAS在保持专业水准的同时,更提供了多样化的扩展性配置,轻松应对各种数据存储与管理需求,让家庭及小型办公场景下的数据管理变得前所未有的简单与高效。

专注大数据、云计算、人工智能、机器人领域技术传播 3647

从MCP实践到开发简单的MCP服务:用FastMCP与TaoToken打通stdio/SSE链路

用FastMCP写一个最小MCP服务,分别以stdio和SSE两种传输接入客户端,再用TaoToken统一Key与API地址补齐模型调用,跑通客户端到MCP服务再到模型的完整链路。文中给出可复制配置、分层验证步骤与401、local proxy failed、reading choices等常见报错排查方法。官网:https://taotoken.net/?utm_source=taotoken_aicg_blog_end

weixin_35755188的博客 4

Windows 10/11一键搞定HDF5文件查看:HDFView 3.4.1免配置安装指南(附中文路径避坑技巧)

本文详细介绍了HDFView 3.4.1在Windows 10/11上的免配置安装方法及中文路径优化技巧。作为HDF5文件查看的专业工具,HDFView 3.4.1简化了安装流程,提升了科研数据处理效率,特别适合遥感、气象等领域的研究人员使用。

qsc9012345的博客 1146

NCBI|叶绿体基因组数据上传

叶绿体基因组NCBI上传 小编最近在NCBI上传了好几次数据…想着可以把具体的上传步骤写下来,供大家参考。以下是叶绿体基因组的上传示例,大家可以瞅瞅 图片 准备工作 1.登录NCBI官网:https://www.ncbi.nlm.nih.gov/, 依次点击“sign in to NCBI”——“See more 3rd party sign in options”——搜索“Microsoft live.com”。 ”sign in to NCBI“ ”See more 3rd party sign i

weifanbio的博客 3901

从MCP实践到开发简单的MCP服务:用TaoToken统一Key打通FastMCP的stdio与SSE

用 Python + FastMCP 从零写一个 MCP 服务,先跑通 stdio 本地调用,再切 SSE 远程模式,并用 TaoToken 统一 Key 接上模型调用链路。文中给出可复制的服务端与客户端配置片段,实测 divide、hello 两个工具,并排查 401、local proxy failed 等常见报错。官网:https://taotoken.net/?utm_source=taotoken_aicg_blog_end

weixin_29041443的博客 11

Python:爬取数据出现response.status_code为403解决方法

目录前言1. 原理2. 代码 前言 出现403的返回结果 主要是有些服务器为了防止访问量过大,承受服务器的压力,或者是拒绝你的访问。服务器接收到这个信息,理应返回了这个403的信息 在前一块的代码中解决了 Python:爬取数据出现response.status_code为418解决方法 如果还出现了403的访问错误 可以通过如下解决 1. 原理 服务器拒绝访问,可以通过给服务器登录,获取当前的cookie来得到网址的信任。得以爬取该网址的信息 在head头中加入cookie的信息 具体怎么查找该cooki

码农研究僧的博客 1万+

开发一个最简单的 MCP 指南

开发一个最基础的MCP

liuyongshun2的博客 1245

通信算法之249: DJI波形物理层

D-J-I的Lightbridge波形、Ocusync1波形、Ocusync2波形、Ocusync3波形,

leegang12的专栏 1440

Windows 下 Hermes Agent(爱马仕)安装全记录:从零到一的保姆级图文教程

本文主要介绍了Windows 下 Hermes Agent(爱马仕) 安装全记录:从零到一的保姆级图文教程,希望能对学习使用 Hermes Agent 的同学们有所帮助。 文章目录 1. 背景 2. 实战教程 2.1 步骤一 安装WSL环境 2.2 步骤二 安装Python环境 2.3 步骤三 安装Hermes Agent 2.4 步骤四 修正 API Key 错误 2.5 步骤五 配置多个模型 2.6 步骤六 启动Hermes Agent 3. 常见问题及解决方案 4. 总结

weixin_43178406的博客 14万+

MCP Python SDK教程:使用FastMCP快速构建服务器

MCP Python SDK教程:使用FastMCP快速构建服务器 【免费下载链接】Tutorial-Codebase-Knowledge Turns Codebase into Easy Tutorial with AI 项目地...

gitblog_00649的博客 528

基于RK3568的YOLOv11模型端侧推理优化与部署实战指南

在AI边缘计算领域,瑞芯微RK3568芯片凭借其强大的NPU算力和丰富的接口资源,成为了众多开发者的首选平台。然而,瑞芯微官方文档虽然提供了YOLO11预训练模型的部署方案,但对于需要自定义数据集训练的开发者来说,从模型训练到板端部署的完整流程却缺乏详细指导。本文将带你走完从环境搭建、数据准备、模型训练到最终板端部署的完整技术路线,并分享实际开发中遇到的各种坑点和解决方案。让我们一起探索如何在RK3568平台上实现30FPS稳定推理的YOLO11目标检测应用!

m0_64661770的博客 115

【自用】MCP学习笔记

复制图中的部分,修改"EVERYTHING_SDK_PATH"为自己安装的地址,其中windows要用两个发斜杠\\。了agent开发过程中大模型调用外部工具(比如查今天的天气)的技术实现流程,从而大幅提高开发效率。同实践1,将他复制到cherry studio的编辑MCP配置中,注意加逗号。在MCP诞生之前,不同外部工具都各有不同的调用方法,很麻烦。MCP的诞生就是统一了这些外部工具的调用,加大了开发效率。把修改好的配置复制进去,注意逗号,点击确定就创建好了。启用MCP后测试一下。启用配置后,去试一下。

weixin_65466248的博客 1041

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

如何使用Golang开发MCP服务器?MCP-K8S实践

使用Golang和mcp-go SDK开发MCP服务器是一个相对简单的过程。mcp-k8s项目展示了如何构建一个功能完整的MCP服务器,让LLM能够查询、创建、更新和删除Kubernetes资源,为集群管理提供了新的交互方式。mcp-go支持多种传输方式,最常用的是stdio(标准输入/输出)和SSE(Server-Sent Events)。是一个使用mcp-go开发的、用于与Kubernetes集群交互的MCP服务器。使用mcp-go,我们可以快速构建自己的MCP服务器,而无需关心底层协议细节。

学点程序 1911

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

MCP极简入门:超快速上手运行简单的MCP服务和MCP客户端

MCP(Model Context Protocol,模型上下文协议)是一个开放协议,旨在标准化应用程序如何向大型语言模型(LLM)提供上下文。首先我们快速过一下MCP的基本概念,接着我们会通过一个简单的天气服务的教程,来上手学会使用MCP服务和在主机运行服务。作为客户端,自己编写python文件作为服务端,在 Claude Desktop 里调用server.py。前期的步骤与上文介绍的一致,先决条件和uv的安装看。至此,我们的第一个MCP服务端和客户端编写完成。

Cherish 2万+

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

【SpringAI】第六弹:深入解析 MCP 上下文协议、开发和部署 MCP 服务、MCP 安全问题与最佳实践

深入解析 MCP 上下文协议、开发和部署 MCP 服务、MCP 安全问题与最佳实践

OuO-1 的博客 2624

在Cline上调用MCP服务之MCP实践篇

我们以Visual Studio Code上的Cline插件调用MCP为例来直观感受下MCP的调用流程实践,以此来加深对MCP概念的理解。

小马过河R的博客 4413

使用FastMCP开发MCP服务简单尝试

FastMCP 的完整文档: https://gofastmcp.com/FactMCP安装指南:https://gofastmcp.com/getting-started/installation从官方 MCP SDK 的 FastMCP 1.0 升级到 FastMCP 2.0 通常很简单。核心服务器 API 高度兼容,在许多情况下,将您的 import 语句从更改为就足够了。

一位在路上的工程师的博客 3635

学习心得体会:基于MCP服务的AI工具开发实践

​入门层:复现官方示例(如打招呼服务),理解基础流程。 ​进阶层:开发实用工具(如SQL查询、文件处理),结合企业微信/钉钉API实现通知功能。 ​专家层:研究MCP协议源码(GitHub开源),自定义协议扩展(如支持gRPC通信)。

2302_77819605的博客 1151

MCP从入门到精通(三)MCP Server 开发实践

MCP (Model Context Protocol) 代表了 AI 与外部工具和数据交互的标准建立。MCP 的本质:它是一个统一的协议标准,使 AI 模型能够以一致的方式连接各种数据源和工具,类似于 AI 世界的"USB-C"接口。MCP 的价值:它解决了传统 function call 的平台依赖问题,提供了更统一、开放、安全、灵活的工具调用机制,让用户和开发者都能从中受益。使用与开发:对于普通用户,MCP 提供了丰富的现成工具,用户可以在不了解任何技术细节的情况下使用;

Androiddddd的博客 1612
上一篇: 国内生图工具也这么猛了嘛!
下一篇: Trae Pro 版是否值得购买
微信号尧字节请关注谢谢
博客等级 码龄22年 640粉丝 359原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值