mcpField
J
Jotsu MCP

Jotsu MCP

本地服务
github.com/getjotsuAI 与智能体341 周前更新

关于 Jotsu MCP

Jotsu MCP 是用于构建和运行 MCP 工作流的 Python 库与命令行工具,可调用 MCP 工具、资源和提示词。它面向需要编排 MCP 服务的开发者,也可让尚不支持 MCP 的模型使用 MCP 能力。

主要功能

  1. 01构建基于 MCP 的工作流
  2. 02通过命令行运行工作流
  3. 03调用 MCP 服务的工具
  4. 04使用 MCP 资源和提示词

适用场景

  1. 01运行调用 MCP 工具的工作流
  2. 02在工作流节点间传递服务结果
  3. 03让不原生支持 MCP 的模型使用 MCP

MCP 相关

实现 MCP,并使工作流能够使用 MCP 服务提供的工具、资源和提示词。命令行工具可运行这些工作流。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

Jotsu MCP

用于实现 Model Context Protocol(MCP)以及创建使用 MCP 工具、资源和提示词的工作流的通用库。

快速入门

安装此软件包,包括 CLI。

pip install jotsu-mcp[cli]

创建一个空工作流。

jotsu-mcp workflow init

初始化命令会在当前目录中创建一个工作流文件 'workflow.json'。

运行它:

jotsu-mcp workflow run ./workflow.json

输出包含三条消息:工作流开始、单个节点的消息以及工作流结束。 最终结果显示在工作流结束节点的 result 字段中,在此示例中,该字段是一个空对象。

Hello MCP

工作流可以调用 MCP 服务中的工具。这样一来,即使模型尚不支持 MCP(实际上,除了 Claude 以外的任何模型),你也可以使用 MCP。

添加以下服务条目:

{
    "id": "hello",
    "name": "Hello World",
    "url": "https://hello.mcp.jotsu.com/mcp/"
}

注意:ID 只能包含小写字母、数字、:、_ 或 -。 注意:别忘了 URL 中的路径 /mcp/。

这是一个公开可用的 MCP 服务(无需身份验证),其中包含一些资源和一个工具。 (代码见此处)。

接下来,为服务工具添加一个节点。

[
    {"id":  "greet", "type":  "tool", "name": "greet", "server_id":  "hello"}
]

添加 'greet' 工具所需的一些初始数据:

{"name": "World"}

默认情况下,工作流从第一个节点开始,但你也可以显式设置开始节点:

"start_node_id": "greet"

最后,在末尾添加一个 'generic' 节点。 通用节点是应用专用的,也就是说,工作流只会通过生成数据来处理它们, 通常用于输出和/或调试。 类型可以是工作流中尚未使用的任何字符串。在此示例中,使用 'output'。

完整工作流
{
    "id": "quickstart",
    "name": "quickstart",
    "description": "Simple workflow to interact with the 'hello' MCP server",
    "nodes": [
        {"id":  "greet", "type":  "tool", "name": "greet", "server_id":  "hello", "edges":  ["output"]},
        {"id":  "output", "type":  "output", "name": "The result"}
    ],
    "servers": [
        {
            "id": "hello",
            "name": "Hello World",
            "url": "https://hello.mcp.jotsu.com/mcp/"
        }
    ],
    "data": {"name":  "World"},
    "metadata": null
}

再次运行此工作流会生成更多数据,具体来说,会出现一行类似这样的内容:

{
  "action": "default",
  "timestamp": 132462.392532502,
  "id": "01k3h80zcaz050eg7080r3fnv7",
  "run_id": "01k3h80t6psmg0s5swsg4yke95",
  "node": {
    "id": "output",
    "name": "The result",
    "type": "output"
  },
  "data": {
    "name": "World",
    "greet": "Hello, World!"
  }
}

此节点的数据会作为工作流的“结果”。 由于工作流可以有多个分支,因此只有一个“结果”, 实际上,根据工作流执行的操作,可能会出现多条这样的内容。

开发

uv venv
uv pip install '.[dev,cli,anthropic,openai,cloudflare,cryptography]'

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。