返回市场
快速数据-MCP

快速数据-MCP

作者:disler137 星标更新:2025-06-02

项目介绍

MCP从零开始:快速数据

目的:学习通过将工具扩展为可重复使用的代理工作流(ADWs即带有工具的提示)来构建强大的模型上下文协议(MCP)服务器。

快速数据

快速数据是一个MCP服务器,它能够对.json和.csv文件进行任意的数据分析。

我们使用快速数据作为一个具体的用例,实验MCP服务器的具体元素:提示 > 工具 > 资源。

详情请参阅快速数据MCP

<img src="./images/mcp-server-prompts.png" alt="MCP服务器提示" style="max-width: 800px;">

引导问题

我们实验了三个引导问题:

  1. 如何通过使用工具、资源和提示一起最大化自建MCP服务器的价值?
  2. 构建MCP服务器的最佳代码库架构是什么?
  3. 我们能否构建一个代理工作流(带有工具的提示),用于快速构建MCP服务器?

理解MCP组件

MCP服务器有三个主要构建模块,它们扩展了AI模型的功能:

工具

是什么:AI模型可以调用来执行操作的函数。

何时使用:当你希望AI基于特定领域使用案例在低到中等原子级别上执行某些操作时。

示例

@mcp.tool()
async def create_task(title: str, description: str) -> dict:
    """创建一个新的任务。"""
    # AI可以调用此函数实际创建任务
    return {"id": "123", "title": title, "status": "created"}

资源

是什么:AI模型可以读取和访问的数据。

何时使用:当你希望AI读取信息——用户资料、配置、状态或任何数据源时。

示例

@mcp.resource("users://{user_id}/profile")
async def get_user_profile(user_id: str) -> dict:
    """根据ID获取用户资料。"""
    # AI可以读取这些数据以了解用户
    return {"id": user_id, "name": "John", "role": "developer"}

提示

是什么:预构建的对话模板,用于启动特定类型的讨论。

何时使用:当你希望给AI提供结构化的起点,用于特定领域使用案例中的常见、可重复的工作流程时。

示例

@mcp.prompt()
async def code_review(code: str) -> str:
    """启动代码审查对话。"""
    # AI获得结构化的代码审查模板
    return f"审查这段代码的安全性和性能:\n{code}"

快速决策指南

  • 需要AI采取行动? → 使用工具
  • 需要AI读取数据? → 使用资源
  • 需要可重复的代理工作流(ADWs)? → 使用提示

快速设置

要使用快速数据MCP服务器:

  1. 导航到MCP服务器目录

    cd quick-data-mcp/
    
  2. 为你的MCP客户端配置

    # 复制样本配置
    cp .mcp.json.sample .mcp.json
    
    # 编辑.mcp.json并更新--directory路径到绝对路径
    # 示例:"/Users/yourusername/path/to/quick-data-mcp"
    
  3. 测试服务器

    uv run python main.py
    

详情请参阅quick-data-mcp/README.md

资源

掌握AI编码

学习使用AI编码的基础知识,请参考AI编码原则

关注IndyDevDan YouTube频道,获取更多AI编码技巧。

使用最佳的代理编码工具:Claude Code