当前位置:首页>python>30分钟用Python写一个MCP Server,Agent工具接入效率提升5倍

30分钟用Python写一个MCP Server,Agent工具接入效率提升5倍

  • 2026-06-29 23:46:57
30分钟用Python写一个MCP Server,Agent工具接入效率提升5倍
上个月我给自己的 Agent 接了5个外部工具——GitHub、Notion、日历、邮件、还有一个内部的运维 API。
每个工具一套 REST API,一套鉴权方式,一套数据格式。有的要 OAuth,有的要 API Key,有的返回 JSON,有的返回 XML。我写了五套胶水代码,调了三天,终于跑通了。
然后第四天,Notion 改了个 API 版本,其中一套挂了。
我相信你一定懂这种感觉。
更让我纠结的是,Twitter 上 YC CEO Garry Tan 公开说了句"MCP sucks",Perplexity 的 CTO 也说"MCP 带来的复杂度远大于它解决的问题"。但另一边,Uber 每周跑着数万次 MCP Agent 调用,Microsoft 把 MCP 塞进了 Win11,阿里云腾讯云百度全都接了。
到底谁对?
我花了两周认真研究了一圈,今天用一篇文章帮你理清楚。
01
MCP 解决的核心问题:N×M 困境
先把本质讲明白。
假设市面上有 M 个 AI 应用(Claude、Cursor、你自己的 Agent……),N 个外部工具(GitHub、Slack、数据库、日历……)。没有统一协议之前,每个 AI 应用想接入每个工具,都得写一套定制连接器。总共需要 M × N 套。
10 个应用接 10 个工具,就是 100 套胶水代码。这在工程上是灾难。
MCP 做的事情,就是在中间加了一层标准协议。AI 应用只需要实现一次 MCP Client,工具那边只需要包装一次 MCP Server。M + N 套实现,搞定全部组合。
这跟 USB 的故事一模一样。USB 出现之前,打印机用并口、键盘用 PS/2、鼠标用串口、扫描仪用 SCSI,每个外设都有自己的接口。USB 统一之后?一个口搞定一切。
所以我更愿意这样理解 MCP:
MCP 不是替代 API,而是标准化了 AI 发现和使用 API 的方式。
你的工具还是你的工具,API 还是那些 API。MCP 只是规定了一种统一的方式,让 AI 能自动发现"有哪些工具可用"、"每个工具能干什么"、"怎么调用它"、"结果长什么样"。就像 USB 没有替代打印技术本身,只是统一了连接方式。
02
分钟搞懂 MCP 架构
MCP 的架构说白了就三个角色:
  • Host(宿主) ——就是你用的 AI 应用。Claude Desktop、Cursor、你自己写的 Agent,都是 Host。它是用户直接交互的那一层。
  • Client(客户端) ——由 Host 内部创建,负责管理跟各个 Server 的连接。一个 Host 可以同时连多个 Client,每个 Client 对接一个 Server。你可以理解为"连接管理器"。
  • Server(服务端) ——暴露具体能力的工具端。每个 Server 可以提供三类能力:
  • Tools(工具) :可执行的操作,比如"发送邮件""查询数据库"
  • Resources(资源) :只读数据,比如"当前用户信息""项目文件列表"
  • Prompts(提示模板) :预设的提示词模板,比如"代码审查模板"
通信方式目前有两种:
  • stdio ——本地子进程模式。Host 直接拉起一个 Server 进程,通过标准输入输出通信。适合桌面应用,延迟低,配置简单。Cursor、Claude Desktop 用的就是这种。
  • Streamable HTTP ——远端部署模式。2026年3月正式取代了之前的 SSE 方案。Server 部署在远端,通过 HTTP 通信,支持流式响应。兼容现有的负载均衡器、代理和 CDN,适合生产环境。
消息格式统一用 JSON-RPC 2.0 。如果你之前用过 Language Server Protocol(LSP,VS Code 的语言服务协议),会发现 MCP 的设计思路跟它非常像——都是用标准化的 JSON 消息在"能力提供方"和"能力消费方"之间搭桥。
03
分钟动手:用 Python 写你的第一个 MCP Server
光看架构图没感觉,动手写一个就全懂了。
我们来做个最实用的例子:给 Agent 接一个"查询天气"的工具。用 Python,10 分钟搞定核心代码。
先装 SDK:
pip install mcp
然后写 Server:
frommcp.server.fastmcpimportFastMCPimporthttpx# 创建 MCP Server 实例mcp = FastMCP("weather-server")@mcp.tool()asyncdefget_weather(citystr->str:"""查询指定城市的当前天气信息"""asyncwithhttpx.AsyncClient() asclient:# 这里用免费的 wttr.in APIresp = awaitclient.get(f"https://wttr.in/{city}?format=j1"        )data = resp.json()current = data["current_condition"][0]return (f"{city} 当前天气:{current['weatherDesc'][0]['value']},"f"温度 {current['temp_C']}°C,"f"体感 {current['FeelsLikeC']}°C,"f"湿度 {current['humidity']}%"        )if__name__ == "__main__":mcp.run(transport="stdio")
就这么多。一个 @mcp.tool()
@mcp.tool()
装饰器,一个带类型注解和 docstring 的函数,MCP SDK 自动帮你处理协议层的所有事情——工具注册、参数校验、结果序列化。
然后在 Claude Desktop 的配置文件里加上:
{"mcpServers": {"weather": {"command""python","args": ["/path/to/weather_server.py"]    }  }}
重启 Claude Desktop,跟它说"北京今天天气怎么样",它会自动发现这个工具、调用、返回结果。全程你不需要写任何提示词告诉它"你有一个天气工具"——MCP 协议会自动处理工具发现。
三个必踩的坑提前告诉你:
  1. 工具描述决定调用质量 。那个 docstring 不是写给人看的,是写给 AI 看的。描述越清晰,AI 越知道什么时候该调用这个工具。写"查询天气"比写"获取数据"好十倍。
  2. 错误处理必须显式返回 。工具执行失败时,别让异常直接抛出。用 try-catch 包住,返回一条清晰的错误信息。AI 需要理解"失败了"和"为什么失败"才能做出正确的下一步决策。
    @mcp.tool()asyncdefget_weather(citystr->str:"""查询指定城市的当前天气信息"""try:# ... 正常逻辑excepthttpx.HTTPErrorase:returnf"查询失败:无法连接天气服务({e})"exceptKeyError:returnf"查询失败:未找到城市 {city} 的天气数据"
  3. Server 不要贪多 。一个 Server 挂 3-5 个工具就够了。工具太多会导致上下文膨胀——Claude Code 团队实测发现,工具描述超过上下文窗口的 10% 时,AI 的调用准确率明显下降。他们的解法是渐进式工具发现,token 用量直降 85%。
掌握这个模式之后,你可以快速包装任何 API。一个掘金上的实测数据:工具集成时间从传统方式的 2-3 天/个,降到了 MCP 方式的 2-3 小时/个, 效率提升 5-7 倍 。
04
年 MCP 生态全景
MCP 从 2024 年底 Anthropic 发布至今,经历了三个阶段:
  1. 2024年末-2025年初:诞生期。 Anthropic 主导,Claude 率先支持,开发者社区开始尝鲜。
  2. 2025年3月-年底:爆发期。 OpenAI 3月跟进、Google 4月跟进、Microsoft 将 MCP 集成进 Win11。国内阿里云百炼、腾讯云、百度、高德全面接入。GitHub 上 MCP Server 一个月新增三千个。中文互联网的热度到了"顶流"级别。
  3. 2026年至今:成熟期。 表面上热度降了,但大厂在安静地做实事。几个标志性事件:
Linux Foundation 接管了 MCP 规范的治理,成立了 Agentic AI Foundation(AAIF),100+ 成员单位。这意味着 MCP 不再是 Anthropic 的"私有协议",而是真正的行业标准。
2026年3月协议大更新: Auth 认证正式版 落地,企业级权限控制终于有标准可循; Streamable HTTP 正式取代 SSE,MCP 可以在浏览器环境原生运行。
生产级实践也在加速。 Uber 搭建了 MCP Gateway + Registry 控制平面,自动暴露数千个内部 Thrift/Protobuf/HTTP 端点,GenAI Gateway 执行 PII 脱敏,每周数万次 Agent 执行全走 MCP。 Amazon 内部建了 MCP 发现基础设施,开源了 agent-sop 项目。 Docker 发布了 MCP Toolkit。 Meta 在 Connect 大会官宣支持。
2026年4月的 MCP 开发者峰会上,一个核心共识浮出水面: 规模化部署 MCP,必须要有集中式网关。 包括 AWS、Uber、Docker、Kong 在内的多家企业不约而同走向了同一个架构模式——这通常是一个协议走向成熟的标志。
05
冷静看待:MCP 的争议和边界
吹完生态,必须正视争议。MCP 远不是银弹,目前的问题很真实。
  • 性能还不够稳。 ScaleKit 在2026年2月的基准测试显示,MCP 方式的任务完成率是 72%,而直接用 CLI 是 100%。平均耗时是 CLI 的 1.3 倍。28% 的任务因超时和连接不稳定而失败。在对可靠性要求极高的场景里,这个数字不够看。
  • 上下文膨胀是真实痛点。 Simon Willison 发现,某主流 AI IDE 的 MCP Server 捆绑了 43 个工具,光工具定义就往上下文里塞了 55000 个 token。这不是 MCP 协议本身的问题,而是使用方式的问题——但它确实是实践中最常遇到的坑。
  • 顶级技术人的质疑不能忽视。 YC CEO 说"MCP sucks",Perplexity CTO 说"复杂度远大于它解决的问题,转回 API 和 CLI"。甚至 Anthropic 自家的 Claude Code,核心架构也是 CLI 而非 MCP——CLAUDE.md 自定义指令系统占了大量篇幅,MCP 只是"可选扩展"。
所以我的判断是什么?
MCP 的方向是对的,但当前阶段不适合所有人、所有场景。具体建议:
  • 企业多数据源集成 → 先观望,等 Auth 认证和网关模式更成熟。目前认证机制各家实现不一,安全审计难以标准化。
  • 个人 AI 助手 / 编程工具 → 可以尝鲜,但 MCP Server 别超过5个。保持工具集精简,避免上下文膨胀。
  • 已有成熟 CLI 方案的场景 → 别为了追新而换。CLI 能跑得好好的,没必要套一层 MCP 增加复杂度。"真正在用 AI 编程的人,最后都选了最简单的路径。"
  • 想做 MCP 生态的开发者 → 现在入场正是好时机。协议规范稳定了,大厂基础设施在完善,缺的是高质量的垂直领域 Server。做一个好用的 MCP Server,比做第 101 个 Agent 框架有价值得多。
06
写在最后
回到开头的故事。我那5套胶水代码,后来怎么样了?
我花了一个下午,把其中3个工具改造成了 MCP Server。代码量从五个文件几百行,缩减到三个文件加起来不到 100 行。更重要的是,当我把这3个 Server 接到 Claude Desktop 之后,我再也不用写任何"你有以下工具可用"的提示词了——MCP 协议自动处理了工具发现和参数传递。
剩下2个工具我没改。一个是内部运维 API,调用频率低但可靠性要求极高,CLI 脚本跑得稳稳的,没必要折腾。另一个是 Notion,官方已经有现成的 MCP Server,直接装上就行。
这大概就是 MCP 在 2026 年的正确打开方式: 能标准化的标准化,该简单的保持简单,不为追新而追新。
2025年的爆发有泡沫,2026年的平静有误解。泡沫散去之后留下的,是一个正在被大厂安静验证的行业标准。就像 USB 刚出来那几年也被吐槽"速度不够快""兼容性有问题",但最终它统一了整个外设生态。
MCP 会不会成为 AI 工具生态的 USB?还不能下定论。但如果你是一个认真做 Agent 的开发者,它至少值得你花一个下午去了解和试用。
2025年的爆发有泡沫,2026年的平静有误解。真正在用 Agent 的人,正在安静地把 MCP 跑起来。
你的 Agent 接了哪些工具?用的 MCP 还是自己写的连接器?踩过什么坑?评论区聊聊,我每条都看。
全文约 3500 字。如果觉得有收获,点个「在看」转发给你身边正在折腾 Agent 工具链的朋友,可能帮他们省下不少弯路。

最新文章

随机文章

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-07-04 09:38:06 HTTP/2.0 GET : https://f.mffb.com.cn/a/487823.html
  2. 运行时间 : 0.103262s [ 吞吐率:9.68req/s ] 内存消耗:4,834.80kb 文件加载:140
  3. 缓存信息 : 0 reads,0 writes
  4. 会话信息 : SESSION_ID=1aaa517d33ad4573973e79c80ec67347
  1. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/public/index.php ( 0.79 KB )
  2. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/autoload.php ( 0.17 KB )
  3. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/autoload_real.php ( 2.49 KB )
  4. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/platform_check.php ( 0.90 KB )
  5. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/ClassLoader.php ( 14.03 KB )
  6. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/autoload_static.php ( 4.90 KB )
  7. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper.php ( 8.34 KB )
  8. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-validate/src/helper.php ( 2.19 KB )
  9. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/helper.php ( 1.47 KB )
  10. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/stubs/load_stubs.php ( 0.16 KB )
  11. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Exception.php ( 1.69 KB )
  12. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-container/src/Facade.php ( 2.71 KB )
  13. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/deprecation-contracts/function.php ( 0.99 KB )
  14. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/polyfill-mbstring/bootstrap.php ( 8.26 KB )
  15. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/polyfill-mbstring/bootstrap80.php ( 9.78 KB )
  16. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/var-dumper/Resources/functions/dump.php ( 1.49 KB )
  17. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-dumper/src/helper.php ( 0.18 KB )
  18. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/var-dumper/VarDumper.php ( 4.30 KB )
  19. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/App.php ( 15.30 KB )
  20. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-container/src/Container.php ( 15.76 KB )
  21. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/container/src/ContainerInterface.php ( 1.02 KB )
  22. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/provider.php ( 0.19 KB )
  23. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Http.php ( 6.04 KB )
  24. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper/Str.php ( 7.29 KB )
  25. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Env.php ( 4.68 KB )
  26. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/common.php ( 0.03 KB )
  27. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/helper.php ( 18.78 KB )
  28. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Config.php ( 5.54 KB )
  29. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/app.php ( 0.95 KB )
  30. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/cache.php ( 0.78 KB )
  31. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/console.php ( 0.23 KB )
  32. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/cookie.php ( 0.56 KB )
  33. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/database.php ( 2.48 KB )
  34. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/Env.php ( 1.67 KB )
  35. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/filesystem.php ( 0.61 KB )
  36. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/lang.php ( 0.91 KB )
  37. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/log.php ( 1.35 KB )
  38. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/middleware.php ( 0.19 KB )
  39. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/route.php ( 1.89 KB )
  40. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/session.php ( 0.57 KB )
  41. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/trace.php ( 0.34 KB )
  42. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/view.php ( 0.82 KB )
  43. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/event.php ( 0.25 KB )
  44. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Event.php ( 7.67 KB )
  45. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/service.php ( 0.13 KB )
  46. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/AppService.php ( 0.26 KB )
  47. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Service.php ( 1.64 KB )
  48. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Lang.php ( 7.35 KB )
  49. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/lang/zh-cn.php ( 13.70 KB )
  50. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/Error.php ( 3.31 KB )
  51. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/RegisterService.php ( 1.33 KB )
  52. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/services.php ( 0.14 KB )
  53. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/PaginatorService.php ( 1.52 KB )
  54. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/ValidateService.php ( 0.99 KB )
  55. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/ModelService.php ( 2.04 KB )
  56. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/Service.php ( 0.77 KB )
  57. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Middleware.php ( 6.72 KB )
  58. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/BootService.php ( 0.77 KB )
  59. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/Paginator.php ( 11.86 KB )
  60. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-validate/src/Validate.php ( 63.20 KB )
  61. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/Model.php ( 23.55 KB )
  62. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/Attribute.php ( 21.05 KB )
  63. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/AutoWriteData.php ( 4.21 KB )
  64. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/Conversion.php ( 6.44 KB )
  65. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/DbConnect.php ( 5.16 KB )
  66. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/ModelEvent.php ( 2.33 KB )
  67. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/RelationShip.php ( 28.29 KB )
  68. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/contract/Arrayable.php ( 0.09 KB )
  69. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/contract/Jsonable.php ( 0.13 KB )
  70. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/contract/Modelable.php ( 0.09 KB )
  71. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Db.php ( 2.88 KB )
  72. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/DbManager.php ( 8.52 KB )
  73. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Log.php ( 6.28 KB )
  74. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Manager.php ( 3.92 KB )
  75. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/log/src/LoggerTrait.php ( 2.69 KB )
  76. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/log/src/LoggerInterface.php ( 2.71 KB )
  77. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Cache.php ( 4.92 KB )
  78. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/simple-cache/src/CacheInterface.php ( 4.71 KB )
  79. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper/Arr.php ( 16.63 KB )
  80. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/cache/driver/File.php ( 7.84 KB )
  81. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/cache/Driver.php ( 9.03 KB )
  82. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/CacheHandlerInterface.php ( 1.99 KB )
  83. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/Request.php ( 0.09 KB )
  84. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Request.php ( 55.78 KB )
  85. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/middleware.php ( 0.25 KB )
  86. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Pipeline.php ( 2.61 KB )
  87. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/TraceDebug.php ( 3.40 KB )
  88. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/middleware/SessionInit.php ( 1.94 KB )
  89. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Session.php ( 1.80 KB )
  90. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/session/driver/File.php ( 6.27 KB )
  91. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/SessionHandlerInterface.php ( 0.87 KB )
  92. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/session/Store.php ( 7.12 KB )
  93. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Route.php ( 23.73 KB )
  94. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleName.php ( 5.75 KB )
  95. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Domain.php ( 2.53 KB )
  96. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleGroup.php ( 22.43 KB )
  97. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Rule.php ( 26.95 KB )
  98. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleItem.php ( 9.78 KB )
  99. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/route/app.php ( 1.72 KB )
  100. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/Route.php ( 4.70 KB )
  101. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/dispatch/Controller.php ( 4.74 KB )
  102. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Dispatch.php ( 10.44 KB )
  103. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/controller/Index.php ( 4.81 KB )
  104. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/BaseController.php ( 2.05 KB )
  105. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/facade/Db.php ( 0.93 KB )
  106. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/connector/Mysql.php ( 5.44 KB )
  107. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/PDOConnection.php ( 52.47 KB )
  108. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Connection.php ( 8.39 KB )
  109. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/ConnectionInterface.php ( 4.57 KB )
  110. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/builder/Mysql.php ( 16.58 KB )
  111. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Builder.php ( 24.06 KB )
  112. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/BaseBuilder.php ( 27.50 KB )
  113. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Query.php ( 15.71 KB )
  114. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/BaseQuery.php ( 45.13 KB )
  115. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/TimeFieldQuery.php ( 7.43 KB )
  116. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/AggregateQuery.php ( 3.26 KB )
  117. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ModelRelationQuery.php ( 20.07 KB )
  118. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ParamsBind.php ( 3.66 KB )
  119. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ResultOperation.php ( 7.01 KB )
  120. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/WhereQuery.php ( 19.37 KB )
  121. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/JoinAndViewQuery.php ( 7.11 KB )
  122. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/TableFieldInfo.php ( 2.63 KB )
  123. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/Transaction.php ( 2.77 KB )
  124. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/log/driver/File.php ( 5.96 KB )
  125. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/LogHandlerInterface.php ( 0.86 KB )
  126. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/log/Channel.php ( 3.89 KB )
  127. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/event/LogRecord.php ( 1.02 KB )
  128. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/Collection.php ( 16.47 KB )
  129. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/View.php ( 1.70 KB )
  130. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/View.php ( 4.39 KB )
  131. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Response.php ( 8.81 KB )
  132. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/response/View.php ( 3.29 KB )
  133. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Cookie.php ( 6.06 KB )
  134. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-view/src/Think.php ( 8.38 KB )
  135. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/TemplateHandlerInterface.php ( 1.60 KB )
  136. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/Template.php ( 46.61 KB )
  137. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/template/driver/File.php ( 2.41 KB )
  138. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/template/contract/DriverInterface.php ( 0.86 KB )
  139. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/runtime/temp/067d451b9a0c665040f3f1bdd3293d68.php ( 11.98 KB )
  140. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/Html.php ( 4.42 KB )
  1. CONNECT:[ UseTime:0.000550s ] mysql:host=127.0.0.1;port=3306;dbname=f_mffb;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.000755s ]
  3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.000330s ]
  4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000258s ]
  5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.000594s ]
  6. SELECT * FROM `set` [ RunTime:0.000237s ]
  7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.000570s ]
  8. SELECT * FROM `article` WHERE `id` = 487823 LIMIT 1 [ RunTime:0.001109s ]
  9. UPDATE `article` SET `lasttime` = 1783129086 WHERE `id` = 487823 [ RunTime:0.012997s ]
  10. SELECT * FROM `fenlei` WHERE `id` = 66 LIMIT 1 [ RunTime:0.000355s ]
  11. SELECT * FROM `article` WHERE `id` < 487823 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.000508s ]
  12. SELECT * FROM `article` WHERE `id` > 487823 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.000367s ]
  13. SELECT * FROM `article` WHERE `id` < 487823 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.000668s ]
  14. SELECT * FROM `article` WHERE `id` < 487823 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.001178s ]
  15. SELECT * FROM `article` WHERE `id` < 487823 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.004900s ]
0.104798s