MCP Server 的架构与工作原理
MCP Server 采用客户端-服务器(Client-Server)架构,其中客户端(MCP Client)负责与服务器建立连接,发起请求,而服务器端则处理请求并返回响应。这种架构确保了数据交互的高效性与安全性。例如,客户端可以向服务器发送请求,如“查询数据库中的某个记录”或“调用某个API”,而服务器则根据请求类型,调用相应的资源或工具,完成任务并返回结果。

MCP Server 支持动态发现和实时更新机制。例如,当新的资源或工具被添加到服务器时,客户端可以自动感知并使用这些新功能,从而提高系统的灵活性和扩展性

MCP Server 的主要功能
资源暴露与工具提供:
MCP Server 可以将本地文件、数据库、API等资源作为数据实体暴露给AI模型,同时提供工具功能,帮助AI完成复杂任务,如数据检索、内容生成、实时更新等。例如,它支持对MySQL、PostgreSQL等数据库的查询和操作,也支持对本地文件系统的读写和目录管理。
会话管理与动态通知:
MCP Server 能够管理客户端与服务器的连接,确保会话的时效性和稳定性,同时通过实时推送机制,将最新的资源信息及时传递给AI模型,以保证数据的准确性和实时性。
安全性与隐私保护:
MCP Server 采用加密认证和访问控制机制,确保数据传输的安全性,避免敏感信息泄露。例如,它支持本地运行,避免将敏感数据上传至第三方平台,从而保护用户隐私。
标准化与模块化:
MCP Server 提供了标准化的通信协议,支持两种传输协议(STDIO和SSE),并允许开发者通过插件扩展功能,使其具备灵活性和扩展性。例如,它支持通过HTTP标准POST请求与客户端进行交互,同时支持WebSocket实现实时数据推送。
多场景应用:
MCP Server 可以应用于多种场景,包括但不限于:
本地资源集成:如文件操作、数据库管理、API调用等。
云服务交互:如与GitHub、Slack、Google Drive等云服务的集成。
AI助手扩展:如为ChatGPT等AI助手提供上下文支持和工具调用能力
目前mcp-server发展速度非常快。截止2025年4月26日目前mcp-server在mcp.so市场上已经发展超过10000多个mcp-server

目前各大互联网厂商也陆续实现的MCP-Servers广场了。前端时间给大家介绍过关于《dify案例分享-魔搭+Dify王炸组合!10分钟搭建你的专属 生活小助理》 和dify案例分享-私有化 MCP 广场搭建与网页小游戏智能体工作流实战

今天带大家一起使用cherry-studio和trae实现excel表格一键生成可视化图表html报告的MCP案例,下面先给大家看一下效果

测试的excel表格数据

cherry-studio


F:\tmp\mcpfiles 有我们的分享报告,我们看一下

看起来生成的html报告还不错,通过简单的excel表格通过几个MCP 实现了一个分析报告。

trae


同样它在我电脑的F:\tmp\mcpfiles目录下生成一个zz_report.html 报告

​ 我们通过2个mcp-client实现了excel表格一键生成可视化图表html报告。那么这个mcp-server用到了哪些工具,如何实现的呢?话不多说下面带大家一起来实现。

2 mcp-server配置
上面的mcp-server其实用到了4个mcp-server.分别是

sequential-thinking

server-filesystem

excel-mcp-server

quickchart-server

trae配置mcp-server
他们的配置在trae非常简单,下面是他们的配置文件

quickchart-server
{
  "mcpServers": {
    "quickchart-server": {
      "command": "npx",
      "args": [
        "-y",
        "@gongrzhe/quickchart-mcp-server"
      ]
    }
  }
}
运行本项目
json


excel-mcp-server
{
  "mcpServers": {
    "excel-mcp-server": {
      "command": "npx",
      "args": [
        "--yes",
        "@zhiweixu/excel-mcp-server"
      ],
      "env": {
        "LOG_PATH": "F:\\tmp\\mcpfiles",
        "CACHE_MAX_AGE": "1",
        "CACHE_CLEANUP_INTERVAL": "4",
        "LOG_RETENTION_DAYS": "7",
        "LOG_CLEANUP_INTERVAL": "24"
      }
    }
  }
}
运行本项目
json


server-filesystem
{
  "mcpServers": {
    "server-filesystem": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-filesystem",
        "F:\\tmp\\mcpfiles"
      ]
    }
  }
}
运行本项目
json


sequential-thinking
{
  "mcpServers": {
    "sequential-thinking": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-sequential-thinking"
      ]
    }
  }
}
运行本项目
json


首选我们需要确保电脑上安装了Node.js、uvx 等工具,详细安装可以参考trae帮助文档

https://docs.trae.ai/ide/model-context-protocol?_lang=zh

安装好后,我们在trae配置添加,下面以一个mcp-server介绍一下配置

打开trae,选择mcp (trae建议升级到最新版本)

​ 点击手工配置

在弹出mcp-server配置对话框里面,把我上面的4个mcp-server添加配置

点击确定按钮完成添加配置,稍等片刻,后我们看到变成可用状态,说明trae已经完成了mcp-server安装。

分别将上面4个mcp-server 添加完成即可。
 

Logo

更多推荐