mcpField
M
MCP Server for Windsurf

MCP Server for Windsurf

本地服务
github.com/rohanbanda-TRT开发工具282 周前更新

关于 MCP Server for Windsurf

MCP Server for Windsurf 通过 FastAPI 服务为 Windsurf Agent IDE 添加自定义工具。它内置文件搜索、代码分析和 Web 请求,并提供 REST 与 WebSocket 接口。

主要功能

  1. 01FastAPI 后端
  2. 02实时双向 WebSocket 通信
  3. 03可扩展的自定义工具注册
  4. 04用于执行工具的 REST 接口
  5. 05文件搜索、代码分析和 Web 请求

适用场景

  1. 01按目录模式搜索文件
  2. 02分析代码语法、复杂度和依赖
  3. 03向外部 API 发送 HTTP 请求

MCP 相关

它作为 MCP 服务向 Windsurf 提供额外工具。Windsurf 通过 WebSocket 端点连接,工具也可通过 REST 端点执行。

配置

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

暂未收录安装方式

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

代码仓库

工具

还没有获取到工具列表

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

详细介绍

Windsurf 的 MCP 服务

为 Windsurf Agentic IDE 提供额外工具的 Master Control Program(MCP)服务。

概述

此 MCP 服务旨在通过提供 Windsurf 未内置的额外工具来扩展其功能。它使用 FastAPI 创建稳健的 API 服务,并支持通过 WebSocket 与 Windsurf 实时通信。

功能

  • FastAPI 后端:高性能、易用的框架
  • WebSocket 支持:实时双向通信
  • 可扩展的工具系统:轻松添加新工具以扩展 Windsurf
  • RESTful API:用于执行工具的 HTTP 端点
  • Windsurf 集成:与 Windsurf IDE 无缝集成

项目结构

MCP_servers/
├── main.py                 # Main FastAPI application
├── tools.py                # Custom tool implementations
├── windsurf_integration.py # Windsurf integration module
├── requirements.txt        # Project dependencies
└── README.md               # Documentation

内置工具

MCP 服务内置了多种工具:

  1. 文件搜索:通过模式匹配在目录中搜索文件
  2. 代码分析:分析代码文件的语法、复杂度和依赖项
  3. Web 请求:向外部 API 发送 HTTP 请求

安装

  1. 克隆仓库
  2. 创建虚拟环境:
    python -m venv venv
    source venv/bin/activate  # On Windows: venv\Scripts\activate
    
  3. 安装依赖项:
    pip install -r requirements.txt
    

使用方法

  1. 启动 MCP 服务:

    python main.py
    

    这将在 http://localhost:8089 上启动服务

  2. 配置 WebSocket 连接,将 Windsurf 连接到 MCP 服务:

    ws://localhost:8089/ws
    
  3. 访问 API 文档:http://localhost:8089/docs

添加自定义工具

向 MCP 服务添加新工具:

  1. 打开 tools.py
  2. 使用 @register_tool 装饰器注册工具:
@register_tool(
    name="my_custom_tool",
    description="Description of what the tool does",
    parameters={
        "param1": {"type": "string", "description": "Description of parameter 1"},
        "param2": {"type": "integer", "description": "Description of parameter 2"}
    }
)
async def my_custom_tool_handler(params: Dict[str, Any]) -> Any:
    # Tool implementation
    param1 = params.get("param1", "")
    param2 = params.get("param2", 0)
    
    # Do something with the parameters
    result = f"Processed {param1} with value {param2}"
    
    return {"output": result}

API 端点

  • GET /:服务信息
  • GET /tools:列出所有可用工具
  • POST /tools/{tool_name}:执行指定工具
  • WebSocket /ws:用于实时通信的 WebSocket 端点

许可证

MIT

评论

支持 Markdown

第一次接触 MCP?

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

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