<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Mcp on OHTLY Blog</title>
    <link>https://blog.ohtly.com/tags/mcp/</link>
    <description>Recent content in Mcp on OHTLY Blog</description>
    <generator>Hugo</generator>
    <language>zh-cn</language>
    <lastBuildDate>Tue, 26 May 2026 20:00:00 +0800</lastBuildDate>
    <atom:link href="https://blog.ohtly.com/tags/mcp/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>OpenClaw Tools：异步调用 Windmill Script</title>
      <link>https://blog.ohtly.com/posts/2026-05-26-openclaw-tools-windmill-async/</link>
      <pubDate>Tue, 26 May 2026 20:00:00 +0800</pubDate>
      <guid>https://blog.ohtly.com/posts/2026-05-26-openclaw-tools-windmill-async/</guid>
      <description>&lt;p&gt;Windmill 提供 MCP Server，可以将脚本/流程暴露给 AI Agent。但 MCP 的脚本调用能力无法同时满足「传参」和「异步执行」两个需求。本文将介绍如何通过编写 OpenClaw Tools Plugin 来绕过这些限制，实现灵活的异步调用。&lt;/p&gt;</description>
    </item>
    <item>
      <title>OpenCode Plugin 实现异步执行 Windmill Script</title>
      <link>https://blog.ohtly.com/posts/2026-05-26-opencode-windmill-async-plugin/</link>
      <pubDate>Tue, 26 May 2026 18:00:00 +0800</pubDate>
      <guid>https://blog.ohtly.com/posts/2026-05-26-opencode-windmill-async-plugin/</guid>
      <description>&lt;h2 id=&#34;1-背景为什么不用-windmill-mcp&#34;&gt;&#xA;  1. 背景：为什么不用 Windmill MCP&#xA;  &lt;a class=&#34;heading-link&#34; href=&#34;#1-%e8%83%8c%e6%99%af%e4%b8%ba%e4%bb%80%e4%b9%88%e4%b8%8d%e7%94%a8-windmill-mcp&#34;&gt;&#xA;    &lt;i class=&#34;fa-solid fa-link&#34; aria-hidden=&#34;true&#34; title=&#34;链接到标题&#34;&gt;&lt;/i&gt;&#xA;    &lt;span class=&#34;sr-only&#34;&gt;链接到标题&lt;/span&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;Windmill 提供 MCP Server，可以将脚本/流程暴露给 AI Agent。但实际使用中发现一个根本性问题：&lt;strong&gt;MCP 的脚本调用能力无法同时满足「传参」和「异步执行」两个需求&lt;/strong&gt;。&lt;/p&gt;&#xA;&lt;table&gt;&#xA;  &lt;thead&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;th&gt;MCP 工具&lt;/th&gt;&#xA;          &lt;th&gt;传参&lt;/th&gt;&#xA;          &lt;th&gt;异步&lt;/th&gt;&#xA;          &lt;th&gt;说明&lt;/th&gt;&#xA;      &lt;/tr&gt;&#xA;  &lt;/thead&gt;&#xA;  &lt;tbody&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;&lt;code&gt;runScriptByPath&lt;/code&gt;&lt;/td&gt;&#xA;          &lt;td&gt;❌&lt;/td&gt;&#xA;          &lt;td&gt;✅&lt;/td&gt;&#xA;          &lt;td&gt;只能传脚本路径，无法动态传入自定义参数&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;&lt;code&gt;runScriptPreviewAndWaitResult&lt;/code&gt;&lt;/td&gt;&#xA;          &lt;td&gt;✅&lt;/td&gt;&#xA;          &lt;td&gt;❌&lt;/td&gt;&#xA;          &lt;td&gt;支持传参，但会同步阻塞等待结果&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;&lt;code&gt;s-f_demo_greeting&lt;/code&gt; (MCP 自动生成)&lt;/td&gt;&#xA;          &lt;td&gt;✅&lt;/td&gt;&#xA;          &lt;td&gt;❌&lt;/td&gt;&#xA;          &lt;td&gt;同步等待，且 OpenCode 未暴露该工具&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;  &lt;/tbody&gt;&#xA;&lt;/table&gt;&#xA;&lt;p&gt;简单说：&lt;strong&gt;异步执行时不能传参，能传参的执行方式是同步等待&lt;/strong&gt;。&lt;/p&gt;&#xA;&lt;p&gt;这个限制来自 Windmill MCP 的实现：对于 &lt;code&gt;runScriptByPath&lt;/code&gt;，底层虽然支持异步模式，但 MCP 工具定义中&lt;strong&gt;没有暴露 &lt;code&gt;args&lt;/code&gt; 参数&lt;/strong&gt;，导致调用时被忽略。&lt;/p&gt;&#xA;&lt;p&gt;而 Windmill 原生 REST API 完全支持异步传参调用，因此考虑通过 &lt;strong&gt;OpenCode Plugin&lt;/strong&gt; 直接封装 REST API 调用，绕过 MCP 的限制。&lt;/p&gt;</description>
    </item>
    <item>
      <title>OpenCode 同步调用 Windmill 脚本：GitOps 工作流实践</title>
      <link>https://blog.ohtly.com/posts/2026-05-26-opencode-windmill-gitops/</link>
      <pubDate>Tue, 26 May 2026 11:38:22 +0800</pubDate>
      <guid>https://blog.ohtly.com/posts/2026-05-26-opencode-windmill-gitops/</guid>
      <description>&lt;blockquote&gt;&#xA;&lt;p&gt;Windmill 支持 GitOps 流程——所有脚本和工作流都可以通过 Git 进行版本管理。本文介绍一种简化的个人/小团队工作流：本地开发，通过 &lt;code&gt;wmill&lt;/code&gt; CLI 同步到 Windmill，手动管理 Git 仓库。&lt;/p&gt;&lt;/blockquote&gt;</description>
    </item>
    <item>
      <title>Windmill &#43; MCP：构建可编排的 AI Agent 工作流</title>
      <link>https://blog.ohtly.com/posts/2026-05-25-windmill-mcp-ai-agent-workflow/</link>
      <pubDate>Mon, 25 May 2026 19:35:00 +0800</pubDate>
      <guid>https://blog.ohtly.com/posts/2026-05-25-windmill-mcp-ai-agent-workflow/</guid>
      <description>&lt;blockquote&gt;&#xA;&lt;p&gt;AI Agent 开发中，长时间运行的任务是常见痛点。同步等待导致超时、资源占用影响响应速度。如果采用传统异步方案（如消息队列），需要处理队列配置、序列化、消费者逻辑、死信管理等，繁琐且维护成本高。本文介绍如何使用 Windmill 实现异步任务——只需写一个脚本函数，通过 Webhook 或 API 即可触发，并可通过其内置的 MCP Server 让 AI Agent 直接编排，大幅降低开发复杂度。&lt;/p&gt;&lt;/blockquote&gt;</description>
    </item>
  </channel>
</rss>
