MCP是什么?

两片非常好的文章,值得学习
MCP 是什么,现状和未来 | OneV's Den

一文搞懂 MCP Servers - 虫师 - 博客园

补充

从0手撕代码搭建MCP Client与Server!详解DeepSeek、ollama、vLLM接入MCP实战!_java_赋范大模型技术社区-DeepSeek技术社区

https://github.com/liaokongVFX/MCP-Chinese-Getting-Started-Guide

 

stdio模式

from typing import List
import os
from mcp.server.fastmcp import FastMCP

# 初始化 FastMCP server,命名为 "dir-tree"
mcp = FastMCP("dir-tree")

def list_folders_recursively(path: str) -> List[str]:
    """递归遍历目录,仅返回所有文件夹路径"""
    folders = []
    for root, dirs, _ in os.walk(path):
        for d in dirs:
            folders.append(os.path.join(root, d))
    return folders

@mcp.tool()
async def get_folders(path: str) -> str:
    """递归遍历指定目录下所有文件夹

    Args:
        path: 需遍历的根目录(绝对路径或相对路径)
    Returns:
        文件夹路径列表,每行一个
    """
    if not os.path.isdir(path):
        return f"指定路径不存在或不是文件夹: {path}"
    folders = list_folders_recursively(path)
    if not folders:
        return "该目录下没有子文件夹。"
    return "\n".join(folders)

if __name__ == "__main__":
    # 启动 MCP server(stdio 模式)
    mcp.run(transport='stdio')

 配置

{
  "mcpServers": {
    "python-dir-tree-server": {
      "command": "/usr/local/bin/python3.11",
      "args": [
        "/path/test_mcp.py"
      ],
      "autoApprove": [
        "get_folders"
      ],
      "disabled": false
    }
  }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值