Token导航 LogoToken导航TokenDH.com
Shepherd MCP logo
运维云端stdio官方级别未说明来源级核验

Shepherd MCP

MCP Server

Shepherd MCP是一个用于调试AI代理的服务器,支持从多个可观察性提供商查询和分析AI代理会话。

工具数

0

提示词数

0

GitHub Stars

0

资源数

0
PythonClaude云端部署ClaudeCursor

安装说明

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

作者 / 组织

neuralis-in

提供方

neuralis-in

最后核验

2026/5/17 20:21

快速接入

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

命令预览

pip install shepherd-mcp

详细介绍

🐑 牧羊人MCP

Shepherd的MCP(模型上下文协议)服务器-像调试代码一样调试AI代理。

此MCP服务器允许AI助手(Claude、Cursor等)查询和分析来自多个可观察性提供者的AI代理会话。

支持的提供商

  • AIOBS (Shepherd后端)-本地Shepherd可观察性
  • 廊坊 -开源LLM可观测性平台

安装

pip install shepherd-mcp

或者直接用uvx运行:

uvx shepherd-mcp

配置

环境变量

AIOBS(牧羊人)

  • AIOBS_API_KEY (必需)-您的Shepherd API密钥
  • AIOBS_ENDPOINT (可选)-自定义API端点URL

廊坊

  • LANGFUSE_PUBLIC_KEY (必需)-您的Langfuse公共API密钥
  • LANGFUSE_SECRET_KEY (必需)-您的Langfuse机密API密钥
  • LANGFUSE_HOST (可选)-自定义Langfuse主机URL(默认为cloud.Langfuse.com)

.env文件支持

牧羊人mcp自动加载 .env 当前目录或任何父目录中的文件。这意味着如果你有 .env 项目根目录中的文件:

# .env
# AIOBS
AIOBS_API_KEY=aiobs_sk_xxxx

# Langfuse
LANGFUSE_PUBLIC_KEY=pk-lf-xxxx
LANGFUSE_SECRET_KEY=sk-lf-xxxx
LANGFUSE_HOST=https://cloud.langfuse.com

MCP服务器启动时,它将自动加载。

克劳德桌面

添加到您的 claude_desktop_config.json:

{
  "mcpServers": {
    "shepherd": {
      "command": "uvx",
      "args": ["shepherd-mcp"],
      "env": {
        "AIOBS_API_KEY": "aiobs_sk_xxxx",
        "LANGFUSE_PUBLIC_KEY": "pk-lf-xxxx",
        "LANGFUSE_SECRET_KEY": "sk-lf-xxxx",
        "LANGFUSE_HOST": "https://cloud.langfuse.com"
      }
    }
  }
}

光标

添加到您的 .cursor/mcp.json:

{
  "mcpServers": {
    "shepherd": {
      "command": "uvx",
      "args": ["shepherd-mcp"],
      "env": {
        "AIOBS_API_KEY": "aiobs_sk_xxxx",
        "LANGFUSE_PUBLIC_KEY": "pk-lf-xxxx",
        "LANGFUSE_SECRET_KEY": "sk-lf-xxxx",
        "LANGFUSE_HOST": "https://cloud.langfuse.com"
      }
    }
  }
}

或者,如果通过pip安装:

{
  "mcpServers": {
    "shepherd": {
      "command": "shepherd-mcp",
      "env": {
        "AIOBS_API_KEY": "aiobs_sk_xxxx",
        "LANGFUSE_PUBLIC_KEY": "pk-lf-xxxx",
        "LANGFUSE_SECRET_KEY": "sk-lf-xxxx",
        "LANGFUSE_HOST": "https://cloud.langfuse.com"
      }
    }
  }
}

可用工具

AIOBS(牧羊犬)工具

aiobs_list_sessions

列出Shepherd的所有AI代理会话。

参数:

  • limit (可选):要返回的最大会话数

示例提示:

“列出我最近从AIOBS获得的AI代理会话”

aiobs_get_session

获取特定会话的详细信息,包括完整的跟踪树、LLM调用、函数事件和评估。

参数:

  • session_id (必填):要检索的会话的UUID

示例提示:

“获取abc123-def456的AIOBS会话详细信息”

aiobs_search_sessions

使用多个条件搜索和筛选会话。

参数:

  • query (可选):文本搜索(匹配名称、ID、标签、元数据)
  • labels (可选):按标签作为键值对进行筛选
  • provider (可选):按LLM提供者筛选(例如,“openai”、“anthropic”)
  • model (可选):按型号名称过滤(例如,“gpt-4o-mini”、“claude-3”)
  • function (可选):按函数名称筛选
  • after (可选):会话在日期(YYYY-MM-DD)之后开始
  • before (可选):会话在日期(YYYY-MM-DD)之前开始
  • has_errors (可选):仅返回有错误的会话
  • evals_failed (可选):仅返回评估失败的会话
  • limit (可选):要返回的最大会话数

示例提示:

“查找所有使用OpenAI但有错误的AIOBS会话” “搜索昨天未通过评估的会话”

aiobs_diff_sessions

比较两个会话并显示它们的差异,包括:

  • 元数据:持续时间、标签、时间戳
  • LLM电话:计数、令牌(输入/输出/总计)、平均延迟、错误
  • 供应商/型号分布:使用了哪些提供商和模型
  • 功能事件:总调用数、唯一函数数、特定函数计数
  • 跟踪结构:跟踪深度,根节点
  • 评估:通过/失败计数和比率
  • 系统提示:比较会话之间的系统提示
  • 请求参数:温度、max_tokens、使用的工具
  • 响应内容:内容长度、工具调用、停止原因

参数:

  • session_id_1 (必需):要比较的第一个会话UUID
  • session_id_2 (必需):要比较的第二个会话UUID

示例提示:

“比较AIOBS会话abc123和def456”

______________________________________________________________________

Langfuse工具

langfuse_list_traces

使用分页和过滤器列出跟踪。痕迹代表完整的工作流程或对话。

参数:

  • limit (可选):每页最大结果数(默认值:50)
  • page (可选):页码(1-索引)
  • user_id (可选):按用户ID筛选
  • name (可选):按跟踪名称筛选
  • session_id (可选):按会话ID筛选
  • tags (可选):按标签筛选
  • from_timestamp (可选):时间戳后过滤
  • to_timestamp (可选):在时间戳之前过滤

示例提示:

“列出最后20条廊坊痕迹”

langfuse_get_trace

通过其观察结果(世代、跨度、事件)获取特定的跟踪。

参数:

  • trace_id (必填):要获取的跟踪ID

示例提示:

“获取trace-id-123的Langfuse跟踪详细信息”

langfuse_list_sessions

列出带分页的会话。会话将相关痕迹分组在一起。

参数:

  • limit (可选):每页最大结果数
  • page (可选):页码
  • from_timestamp (可选):时间戳后过滤
  • to_timestamp (可选):在时间戳之前过滤

示例提示:

“向我展示上周的Langfuse会话”

langfuse_get_session

获取具有指标和跟踪的特定会话。

参数:

  • session_id (必填):要获取的会话ID

示例提示:

“获取会话-123的Langfuse会话详细信息”

langfuse_list_observations

使用过滤器列出观察结果(世代、跨度、事件)。

参数:

  • limit (可选):每页最大结果数
  • page (可选):页码
  • name (可选):按观测名称筛选
  • user_id (可选):按用户ID筛选
  • trace_id (可选):按跟踪ID筛选
  • type (可选):按类型筛选(生成、跨度、事件)
  • from_timestamp (可选):时间戳后过滤
  • to_timestamp (可选):在时间戳之前过滤

示例提示:

“列出Langfuse的所有GENERATION类型观测值”

langfuse_get_observation

获得一个具体的观察结果,包括输入、输出、使用和成本等全部细节。

参数:

  • observation_id (必填):要获取的观察ID

示例提示:

“获取Langfuse obs-123观测的详细信息”

langfuse_list_scores

使用过滤器列出分数/评估。

参数:

  • limit (可选):每页最大结果数
  • page (可选):页码
  • name (可选):按分数名称筛选
  • user_id (可选):按用户ID筛选
  • trace_id (可选):按跟踪ID筛选
  • from_timestamp (可选):时间戳后过滤
  • to_timestamp (可选):在时间戳之前过滤

示例提示:

“显示Langfuse的痕迹-123分数”

langfuse_get_score

获得详细的具体分数/评估。

参数:

  • score_id (必填):要获取的分数ID

示例提示:

“获取分数123的Langfuse分数详细信息”

______________________________________________________________________

旧版工具(已弃用)

为了向后兼容,以下工具仍然可用,但将在未来的版本中删除:

  • list_sessions → Use aiobs_list_sessions
  • get_session → Use aiobs_get_session
  • search_sessions → Use aiobs_search_sessions
  • diff_sessions → Use aiobs_diff_sessions

用例

1.调试失败的运行

“显示过去24小时内出现错误的所有AIOBS会话”

2.性能分析

“将AIOBS会话abc123与会话def456进行比较,并告诉我哪一个更有效”

3.快速回归检测

“查找评估失败的Langfuse痕迹”

4.成本跟踪

“列出Langfuse的观察结果并总结总成本”

5.会议检查

“获取最近Langfuse跟踪的完整跟踪树,并解释发生了什么”

6.跨提供商分析

“向我展示AIOBS会议和Langfuse今天的记录”

发展

设置

git clone https://github.com/neuralis/shepherd-mcp
cd shepherd-mcp
python -m venv venv
source venv/bin/activate
pip install -e ".[dev]"

运行测试

pytest

本地运行

export AIOBS_API_KEY=aiobs_sk_xxxx
export LANGFUSE_PUBLIC_KEY=pk-lf-xxxx
export LANGFUSE_SECRET_KEY=sk-lf-xxxx
python -m shepherd_mcp

发布到PyPI

创建发布时,发布会通过GitHub Actions自动发布到PyPI。

要手动发布,请执行以下操作:

# Build the package
pip install build twine
python -m build

# Upload to PyPI
twine upload dist/*

建筑

src/shepherd_mcp/
├── __init__.py          # Package exports
├── __main__.py          # Entry point
├── server.py            # MCP server with tool handlers
├── models/              # Data models
│   ├── __init__.py
│   ├── aiobs.py         # AIOBS-specific models
│   └── langfuse.py      # Langfuse-specific models
└── providers/           # Provider clients
    ├── __init__.py
    ├── base.py          # Base provider interface
    ├── aiobs.py         # AIOBS client implementation
    └── langfuse.py      # Langfuse client implementation
┌─────────────────┐     stdio      ┌─────────────────┐
│  Cursor/Claude  │ ◄────────────► │  shepherd-mcp   │
│    (Client)     │   stdin/stdout │   (subprocess)  │
└─────────────────┘                └────────┬────────┘
                                            │ HTTPS
                                  ┌─────────┴─────────┐
                                  │                   │
                                  ▼                   ▼
                         ┌─────────────┐     ┌─────────────┐
                         │ Shepherd API│     │ Langfuse API│
                         │   (AIOBS)   │     │   (Cloud)   │
                         └─────────────┘     └─────────────┘

许可证

麻省理工学院

目录标签

目录标签

PythonClaude云端部署AI调试本地部署可观察性会话分析性能监控错误追踪

支持客户端

ClaudeCursor

接入字段

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

stdio

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

none

部署方式(deploymentType,部署类型)

remote-capable

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

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

0

权限和风险

stdiononeremote-capable

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

安装前确认

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

来源信息

继续浏览同类 MCP