Token导航 LogoToken导航TokenDH.com
MCP client extension logo
AI代理stdio官方级别未说明来源级核验

MCP client extension

MCP Server

该扩展通过模型上下文协议(MCP)使文本生成webui模型能够使用外部工具。

工具数

1

提示词数

0

GitHub Stars

0

资源数

0
Python本地部署AI代理

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

brucepro

提供方

brucepro

最后核验

2026/5/17 20:20

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

pip install mcp

详细介绍

文本生成webui的MCP支持扩展

此扩展允许文本生成webui模型通过模型上下文协议(MCP)使用外部工具。

安装

  1. 安装MCP Python SDK:
pip install mcp
  1. 将此扩展复制到文本生成webui扩展目录:
cp -r mcp_support /path/to/text-generation-webui/extensions/
  1. 在中配置MCP服务器 servers.json
  1. 启动文本生成webui时启用扩展:
python server.py --extensions mcp_support

配置

编辑 extensions/mcp_support/servers.json 要配置MCP服务器,请执行以下操作:

{
  "servers": {
    "website-fetcher": {
      "command": "python",
      "args": ["extensions/mcp_support/example_server.py", "--transport", "stdio"],
      "env": {},
      "enabled": true
    }
  }
}

配置选项

  • command:要运行的可执行文件(例如,“python”、“node”、“uv”)
  • args:服务器的命令行参数
  • env:要传递给服务器的环境变量(可选)
  • enabled:是否在扩展加载时启动此服务器

测试示例服务器

该扩展包括一个获取网站的简单示例服务器。

  1. 在中启用它 servers.json:
{
  "servers": {
    "website-fetcher": {
      "command": "python",
      "args": ["extensions/mcp_support/example_server.py", "--transport", "stdio"],
      "env": {},
      "enabled": true
    }
  }
}
  1. 在启用扩展的情况下启动文本生成webui
  1. 检查日志以了解:
[MCP] Starting server 'website-fetcher'...
[MCP] Server 'website-fetcher' started successfully with 1 tools: fetch
  1. 使用具有工具调用功能的模型,并要求它获取网站:
Please fetch the content from https://example.com

创建自己的MCP服务器

要创建自己的MCP服务器,请使用示例服务器作为模板:

from typing import Any
import anyio
import mcp.types as types
from mcp.server.lowlevel import Server
from mcp.server.stdio import stdio_server

app = Server("my-server-name")

@app.call_tool()
async def my_tool(name: str, arguments: dict[str, Any]) -> list[types.ContentBlock]:
    if name == "my_tool_name":
        result = do_something(arguments)
        return [types.TextContent(type="text", text=result)]
    raise ValueError(f"Unknown tool: {name}")

@app.list_tools()
async def list_tools() -> list[types.Tool]:
    return [
        types.Tool(
            name="my_tool_name",
            description="Description of what the tool does",
            inputSchema={
                "type": "object",
                "required": ["param1"],
                "properties": {
                    "param1": {
                        "type": "string",
                        "description": "Parameter description",
                    }
                },
            },
        )
    ]

async def main():
    async with stdio_server() as streams:
        await app.run(streams[0], streams[1], app.create_initialization_options())

anyio.run(main)

建筑

┌─────────────────────────┐
│ text-generation-webui   │
│  + mcp_support extension│
└────────┬────────────────┘
         │ stdio
         │ (stdin/stdout)
┌────────▼────────────────┐
│   MCP Server Process    │
│  (Python/Node/etc)      │
│                         │
│  - list_tools()         │
│  - call_tool()          │
└─────────────────────────┘

调试

在扩展UI中启用调试日志记录或在代码中设置它:

params["debug_logging"] = True

调试日志将显示:

  • 服务器启动和连接状态
  • 工具发现和注册
  • 工具调用检测和执行
  • 原始MCP协议消息

故障排除

“未安装MCP包”

运行: pip install mcp

“启动服务器失败”

  • 检查服务器命令和参数是否正确
  • 验证服务器脚本是否存在以及是否可执行
  • 检查日志中的特定错误消息
  • 启用调试日志记录以获取更多详细信息

“找不到工具”

  • 验证服务器是否已成功启动
  • 检查工具是否已注册(在日志中查找“已注册工具”)
  • 确保服务器的 list_tools() 正在返回预期的工具

参考文献

许可证

MIT。

目录标签

目录标签

Python本地部署AI代理文本生成外部工具模型扩展MCP协议

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

工具数量(toolCount,工具数)

1

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP