---
title: '获取资源'
description: '查询和检索 MCP 服务器、用户和组信息'
---

## 获取服务器列表

### 端点

```http
GET /api/servers
```

### 查询参数

| 参数             | 类型    | 描述                            | 示例                         |
| ---------------- | ------- | ------------------------------- | ---------------------------- |
| `page`           | integer | 页码（从 1 开始）               | `?page=2`                    |
| `limit`          | integer | 每页记录数（默认 20，最大 100） | `?limit=50`                  |
| `sort`           | string  | 排序字段                        | `?sort=name`                 |
| `order`          | string  | 排序顺序（asc/desc）            | `?order=desc`                |
| `status`         | string  | 过滤服务器状态                  | `?status=running`            |
| `search`         | string  | 搜索服务器名称或描述            | `?search=python`             |
| `group`          | string  | 过滤所属组                      | `?group=dev-team`            |
| `tags`           | string  | 过滤标签（逗号分隔）            | `?tags=python,production`    |
| `enabled`        | boolean | 过滤启用状态                    | `?enabled=true`              |
| `created_after`  | string  | 创建时间起始                    | `?created_after=2024-01-01`  |
| `created_before` | string  | 创建时间结束                    | `?created_before=2024-01-31` |

### 响应

```json
{
  "success": true,
  "data": {
    "items": [
      {
        "id": "server-abc123",
        "name": "文件系统服务器",
        "status": "running",
        "command": "npx",
        "args": ["-y", "@modelcontextprotocol/server-filesystem", "/data"],
        "env": {
          "NODE_ENV": "production"
        },
        "cwd": "/app",
        "pid": 12345,
        "uptime": 3600000,
        "enabled": true,
        "description": "提供文件系统访问的 MCP 服务器",
        "tags": ["filesystem", "production"],
        "health": {
          "status": "healthy",
          "lastCheck": "2024-01-01T12:00:00Z",
          "responseTime": "45ms"
        },
        "resources": {
          "memory": {
            "used": "128MB",
            "limit": "512MB",
            "percentage": 25
          },
          "cpu": {
            "used": "15%",
            "limit": "50%"
          }
        },
        "stats": {
          "totalRequests": 1523,
          "errorCount": 2,
          "avgResponseTime": "234ms"
        },
        "lastRestart": "2024-01-01T08:00:00Z",
        "createdAt": "2024-01-01T00:00:00Z",
        "updatedAt": "2024-01-01T12:00:00Z"
      }
    ],
    "pagination": {
      "page": 1,
      "limit": 20,
      "total": 45,
      "pages": 3,
      "hasNext": true,
      "hasPrev": false
    },
    "filters": {
      "status": "running",
      "totalFiltered": 12
    }
  }
}
```

### 示例

```bash
# 获取运行中的服务器，按名称排序
curl -X GET "http://localhost:3000/api/servers?status=running&sort=name&order=asc" \
  -H "Authorization: Bearer $TOKEN"

# 搜索包含 "python" 的服务器
curl -X GET "http://localhost:3000/api/servers?search=python&limit=10" \
  -H "Authorization: Bearer $TOKEN"

# 获取开发团队的服务器
curl -X GET "http://localhost:3000/api/servers?group=dev-team" \
  -H "Authorization: Bearer $TOKEN"
```

## 获取服务器详情

### 端点

```http
GET /api/servers/{serverId}
```

### 路径参数

- `serverId` (string): 服务器唯一标识符

### 查询参数

| 参数            | 类型   | 描述                                            |
| --------------- | ------ | ----------------------------------------------- |
| `include`       | string | 包含额外信息（逗号分隔）：`logs,metrics,events` |
| `metrics_range` | string | 指标时间范围：`1h`, `24h`, `7d`                 |

### 响应

```json
{
  "success": true,
  "data": {
    "id": "server-abc123",
    "name": "文件系统服务器",
    "status": "running",
    "command": "npx",
    "args": ["-y", "@modelcontextprotocol/server-filesystem", "/data"],
    "env": {
      "NODE_ENV": "production",
      "DEBUG": "mcp:*"
    },
    "cwd": "/app",
    "pid": 12345,
    "uptime": 3600000,
    "enabled": true,
    "description": "提供文件系统访问的 MCP 服务器",
    "tags": ["filesystem", "production"],
    "healthCheck": {
      "enabled": true,
      "interval": 30000,
      "timeout": 5000,
      "retries": 3,
      "endpoint": "/health",
      "status": "healthy",
      "lastCheck": "2024-01-01T12:00:00Z",
      "responseTime": "45ms",
      "consecutiveFailures": 0
    },
    "resources": {
      "memory": {
        "used": "128MB",
        "limit": "512MB",
        "warning": "400MB",
        "percentage": 25
      },
      "cpu": {
        "used": "15%",
        "limit": "50%",
        "cores": 4
      },
      "network": {
        "bytesIn": "1.2GB",
        "bytesOut": "890MB"
      }
    },
    "stats": {
      "totalRequests": 1523,
      "successfulRequests": 1521,
      "errorCount": 2,
      "avgResponseTime": "234ms",
      "p95ResponseTime": "450ms",
      "requestsPerMinute": 25,
      "lastError": {
        "timestamp": "2024-01-01T11:30:00Z",
        "message": "Temporary connection timeout",
        "count": 1
      }
    },
    "capabilities": [
      {
        "type": "tool",
        "name": "read_file",
        "description": "读取文件内容",
        "schema": {
          "type": "object",
          "properties": {
            "path": { "type": "string" }
          }
        }
      },
      {
        "type": "tool",
        "name": "write_file",
        "description": "写入文件内容",
        "schema": {
          "type": "object",
          "properties": {
            "path": { "type": "string" },
            "content": { "type": "string" }
          }
        }
      }
    ],
    "groups": [
      {
        "id": "dev-team",
        "name": "开发团队",
        "permissions": ["read", "write", "execute"]
      }
    ],
    "events": [
      {
        "id": "event-123",
        "type": "started",
        "timestamp": "2024-01-01T08:00:00Z",
        "message": "服务器启动成功",
        "metadata": {
          "pid": 12345,
          "startupTime": "2.3s"
        }
      }
    ],
    "lastRestart": "2024-01-01T08:00:00Z",
    "createdAt": "2024-01-01T00:00:00Z",
    "updatedAt": "2024-01-01T12:00:00Z",
    "createdBy": "admin"
  }
}
```

### 示例

```bash
# 获取服务器基本信息
curl -X GET "http://localhost:3000/api/servers/server-abc123" \
  -H "Authorization: Bearer $TOKEN"

# 获取服务器详情包含日志和指标
curl -X GET "http://localhost:3000/api/servers/server-abc123?include=logs,metrics&metrics_range=24h" \
  -H "Authorization: Bearer $TOKEN"
```

## 获取服务器状态

### 端点

```http
GET /api/servers/{serverId}/status
```

### 响应

```json
{
  "success": true,
  "data": {
    "serverId": "server-abc123",
    "status": "running",
    "health": "healthy",
    "pid": 12345,
    "uptime": 3600000,
    "startedAt": "2024-01-01T08:00:00Z",
    "lastHealthCheck": "2024-01-01T12:00:00Z",
    "resources": {
      "memory": {
        "rss": 134217728,
        "heapTotal": 67108864,
        "heapUsed": 45088768,
        "external": 8388608
      },
      "cpu": {
        "user": 1000000,
        "system": 500000,
        "percentage": 15.5
      }
    },
    "connections": {
      "active": 5,
      "total": 127
    },
    "performance": {
      "requestsPerSecond": 12.5,
      "avgResponseTime": "234ms",
      "errorRate": "0.1%"
    }
  }
}
```

## 获取服务器日志

### 端点

```http
GET /api/servers/{serverId}/logs
```

### 查询参数

| 参数     | 类型    | 描述                                           |
| -------- | ------- | ---------------------------------------------- |
| `level`  | string  | 日志级别过滤：`error`, `warn`, `info`, `debug` |
| `limit`  | integer | 返回日志条数（默认 100，最大 1000）            |
| `since`  | string  | 开始时间（ISO 8601 格式）                      |
| `until`  | string  | 结束时间（ISO 8601 格式）                      |
| `follow` | boolean | 实时跟踪日志流                                 |
| `search` | string  | 搜索日志内容                                   |

### 响应

```json
{
  "success": true,
  "data": {
    "logs": [
      {
        "id": "log-123",
        "timestamp": "2024-01-01T12:00:00Z",
        "level": "info",
        "message": "处理请求: read_file",
        "source": "mcp-server",
        "metadata": {
          "requestId": "req-456",
          "userId": "user-789",
          "duration": "45ms"
        }
      },
      {
        "id": "log-124",
        "timestamp": "2024-01-01T12:00:05Z",
        "level": "error",
        "message": "文件不存在: /nonexistent/file.txt",
        "source": "filesystem",
        "metadata": {
          "requestId": "req-457",
          "path": "/nonexistent/file.txt",
          "error": "ENOENT"
        }
      }
    ],
    "pagination": {
      "limit": 100,
      "total": 1523,
      "hasMore": true,
      "nextCursor": "cursor-abc123"
    }
  }
}
```

### 实时日志流

```bash
# 实时跟踪日志
curl -X GET "http://localhost:3000/api/servers/server-abc123/logs?follow=true" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Accept: text/event-stream"
```

## 获取服务器指标

### 端点

```http
GET /api/servers/{serverId}/metrics
```

### 查询参数

| 参数          | 类型   | 描述                                        |
| ------------- | ------ | ------------------------------------------- |
| `timeRange`   | string | 时间范围：`1h`, `24h`, `7d`, `30d`          |
| `granularity` | string | 数据粒度：`1m`, `5m`, `1h`, `1d`            |
| `metrics`     | string | 指定指标（逗号分隔）：`cpu,memory,requests` |

### 响应

```json
{
  "success": true,
  "data": {
    "timeRange": "1h",
    "granularity": "5m",
    "metrics": {
      "cpu": {
        "data": [
          { "timestamp": "2024-01-01T11:00:00Z", "value": 12.5 },
          { "timestamp": "2024-01-01T11:05:00Z", "value": 15.2 }
        ],
        "summary": {
          "avg": 13.8,
          "min": 8.1,
          "max": 18.5,
          "current": 15.2
        }
      },
      "memory": {
        "data": [
          { "timestamp": "2024-01-01T11:00:00Z", "value": 125 },
          { "timestamp": "2024-01-01T11:05:00Z", "value": 128 }
        ],
        "summary": {
          "avg": 126.5,
          "min": 120,
          "max": 135,
          "current": 128
        }
      },
      "requests": {
        "data": [
          { "timestamp": "2024-01-01T11:00:00Z", "value": 45 },
          { "timestamp": "2024-01-01T11:05:00Z", "value": 52 }
        ],
        "summary": {
          "total": 2847,
          "avg": 48.5,
          "peak": 67
        }
      },
      "responseTime": {
        "data": [
          { "timestamp": "2024-01-01T11:00:00Z", "avg": 230, "p95": 450 },
          { "timestamp": "2024-01-01T11:05:00Z", "avg": 245, "p95": 480 }
        ],
        "summary": {
          "avgResponseTime": "237ms",
          "p95ResponseTime": "465ms"
        }
      }
    }
  }
}
```

## 获取用户列表

### 端点

```http
GET /api/users
```

### 查询参数

| 参数               | 类型    | 描述             |
| ------------------ | ------- | ---------------- |
| `role`             | string  | 过滤用户角色     |
| `group`            | string  | 过滤所属组       |
| `enabled`          | boolean | 过滤启用状态     |
| `search`           | string  | 搜索用户名或邮箱 |
| `last_login_after` | string  | 最后登录时间起始 |

### 响应

```json
{
  "success": true,
  "data": {
    "items": [
      {
        "id": "user-abc123",
        "username": "zhangsan",
        "email": "zhangsan@example.com",
        "role": "user",
        "enabled": true,
        "profile": {
          "firstName": "张",
          "lastName": "三",
          "fullName": "张三",
          "department": "开发部",
          "title": "软件工程师"
        },
        "groups": [
          {
            "id": "dev-team",
            "name": "开发团队",
            "role": "member"
          }
        ],
        "stats": {
          "totalSessions": 45,
          "totalRequests": 1234,
          "lastRequestAt": "2024-01-01T11:30:00Z"
        },
        "lastLoginAt": "2024-01-01T08:00:00Z",
        "createdAt": "2023-12-01T00:00:00Z"
      }
    ],
    "pagination": {
      "page": 1,
      "limit": 20,
      "total": 89,
      "pages": 5
    }
  }
}
```

## 获取组列表

### 端点

```http
GET /api/groups
```

### 响应

```json
{
  "success": true,
  "data": {
    "items": [
      {
        "id": "group-abc123",
        "name": "dev-team",
        "displayName": "开发团队",
        "description": "前端和后端开发人员",
        "memberCount": 12,
        "serverCount": 8,
        "parentGroup": null,
        "children": [],
        "permissions": {
          "servers": ["read", "write", "execute"],
          "tools": ["read", "execute"]
        },
        "quotas": {
          "requests": {
            "used": 750,
            "limit": 1000
          }
        },
        "createdAt": "2023-12-01T00:00:00Z"
      }
    ]
  }
}
```

## 搜索

### 全局搜索

```http
GET /api/search
```

### 查询参数

| 参数    | 类型    | 描述                                           |
| ------- | ------- | ---------------------------------------------- |
| `q`     | string  | 搜索关键词                                     |
| `type`  | string  | 资源类型：`servers`, `users`, `groups`, `logs` |
| `limit` | integer | 每种类型的最大结果数                           |

### 响应

```json
{
  "success": true,
  "data": {
    "query": "python",
    "results": {
      "servers": [
        {
          "id": "server-1",
          "name": "Python MCP Server",
          "type": "server",
          "relevance": 0.95
        }
      ],
      "users": [],
      "groups": [
        {
          "id": "python-devs",
          "name": "Python 开发者",
          "type": "group",
          "relevance": 0.8
        }
      ],
      "logs": [
        {
          "id": "log-123",
          "message": "Starting Python server...",
          "type": "log",
          "relevance": 0.7
        }
      ]
    },
    "total": 3
  }
}
```

有关更多信息，请参阅 [创建资源](/zh/api-reference/endpoint/create)、[删除资源](/zh/api-reference/endpoint/delete) 和 [WebHooks](/zh/api-reference/endpoint/webhook) 文档。
