Skip to content

Commit 9430b6e

Browse files
committed
feat(pod): 添加上传文件到Pod的工具和处理程序
在`reg.go`中注册了`UploadPodFileTool`和`UploadPodFileHandler`,以便支持上传文件到Pod的功能。同时更新了README.md中的工具列表,添加了相应的描述。
1 parent d18e310 commit 9430b6e

File tree

2 files changed

+55
-52
lines changed

2 files changed

+55
-52
lines changed

README.md

+51-51
Original file line numberDiff line numberDiff line change
@@ -71,57 +71,57 @@ http://IP:9096/sse
7171
```
7272
#### MCP工具列表(49种)
7373
74-
| 类别 | 方法 | 描述 |
75-
|------------------|--------------------------------|-----------------------------------------|
76-
| **集群管理** | `list_clusters` | 列出所有已注册的Kubernetes集群 |
77-
| **部署管理** | `scale_deployment` | 扩缩容Deployment |
78-
| | `restart_deployment` | 重启Deployment |
79-
| | `stop_deployment` | 停止Deployment |
80-
| | `restore_deployment` | 恢复Deployment |
81-
| | `update_tag_deployment` | 更新Deployment镜像标签 |
82-
| | `rollout_history_deployment` | 查询Deployment升级历史 |
83-
| | `rollout_undo_deployment` | 回滚Deployment |
84-
| | `rollout_pause_deployment` | 暂停Deployment升级 |
85-
| | `rollout_resume_deployment` | 恢复Deployment升级 |
86-
| | `rollout_status_deployment` | 查询Deployment升级状态 |
87-
| | `hpa_list_deployment` | 查询Deployment的HPA列表 |
88-
| | `list_deployment_pods` | 获取Deployment管理的Pod列表 |
89-
| **动态资源管理(含CRD)** | `get_k8s_resource` | 获取k8s资源 |
90-
| | `describe_k8s_resource` | 描述k8s资源 |
91-
| | `delete_k8s_resource` | 删除k8s资源 |
92-
| | `list_k8s_resource` | 列表形式获取k8s资源 |
93-
| | `list_k8s_event` | 列表形式获取k8s事件 |
94-
| | `patch_k8s_resource` | 更新k8s资源,以JSON Patch方式更新 | |
95-
| | `label_k8s_resource` | 为k8s资源添加或删除标签 |
96-
| | `annotate_k8s_resource` | 为k8s资源添加或删除注解 |
97-
| **节点管理** | `taint_node` | 为节点添加污点 |
98-
| | `untaint_node` | 为节点移除污点 |
99-
| | `cordon_node` | 为节点设置Cordon |
100-
| | `uncordon_node` | 为节点取消Cordon |
101-
| | `drain_node` | 为节点执行Drain |
102-
| | `get_node_resource_usage` | 查询节点的资源使用情况 |
103-
| | `get_node_ip_usage` | 查询节点上Pod IP资源使用情况 |
104-
| | `get_node_pod_count` | 查询节点上的Pod数量 |
105-
| **Pod 管理** | `list_pod_files` | 列出Pod文件 |
106-
| | `list_all_pod_files` | 列出Pod所有文件 |
107-
| | `delete_pod_file` | 删除Pod文件 |
108-
| | `upload_file_to_pod` | 上传文件到Pod内,支持传递文本内容,存储为Pod内文件 |
109-
| | `get_pod_logs` | 获取Pod日志 |
110-
| | `run_command_in_pod` | 在Pod中执行命令 |
111-
| | `get_pod_linked_service` | 获取Pod关联的Service |
112-
| | `get_pod_linked_ingress` | 获取Pod关联的Ingress |
113-
| | `get_pod_linked_endpoints` | 获取Pod关联的Endpoints |
114-
| | `get_pod_linked_pvc` | 获取Pod关联的PVC |
115-
| | `get_pod_linked_pv` | 获取Pod关联的PV |
116-
| | `get_pod_linked_env` | 通过在pod内运行env命令获取Pod运行时环境变量 |
117-
| | `get_pod_linked_env_from_yaml` | 通过Pod yaml定义获取Pod运行时环境变量 |
118-
| | `get_pod_resource_usage` | 获取Pod的资源使用情况,包括CPU和内存的请求值、限制值、可分配值和使用比例 |
119-
| **YAML管理** | `apply_yaml` | 应用YAML资源 |
120-
| | `delete_yaml` | 删除YAML资源 |
121-
| **存储管理** | `set_default_storageclass` | 设置默认StorageClass |
122-
| | `get_storageclass_pvc_count` | 获取StorageClass下的PVC数量 |
123-
| | `get_storageclass_pv_count` | 获取StorageClass下的PV数量 |
124-
| **Ingress管理** | `set_default_ingressclass` | 设置默认IngressClass |
74+
| 类别 | 方法 | 描述 |
75+
|--------------------|--------------------------------|-----------------------------------------|
76+
| **集群管理(1)** | `list_clusters` | 列出所有已注册的Kubernetes集群 |
77+
| **部署管理(12)** | `scale_deployment` | 扩缩容Deployment |
78+
| | `restart_deployment` | 重启Deployment |
79+
| | `stop_deployment` | 停止Deployment |
80+
| | `restore_deployment` | 恢复Deployment |
81+
| | `update_tag_deployment` | 更新Deployment镜像标签 |
82+
| | `rollout_history_deployment` | 查询Deployment升级历史 |
83+
| | `rollout_undo_deployment` | 回滚Deployment |
84+
| | `rollout_pause_deployment` | 暂停Deployment升级 |
85+
| | `rollout_resume_deployment` | 恢复Deployment升级 |
86+
| | `rollout_status_deployment` | 查询Deployment升级状态 |
87+
| | `hpa_list_deployment` | 查询Deployment的HPA列表 |
88+
| | `list_deployment_pods` | 获取Deployment管理的Pod列表 |
89+
| **动态资源管理(含CRD,8)** | `get_k8s_resource` | 获取k8s资源 |
90+
| | `describe_k8s_resource` | 描述k8s资源 |
91+
| | `delete_k8s_resource` | 删除k8s资源 |
92+
| | `list_k8s_resource` | 列表形式获取k8s资源 |
93+
| | `list_k8s_event` | 列表形式获取k8s事件 |
94+
| | `patch_k8s_resource` | 更新k8s资源,以JSON Patch方式更新 | |
95+
| | `label_k8s_resource` | 为k8s资源添加或删除标签 |
96+
| | `annotate_k8s_resource` | 为k8s资源添加或删除注解 |
97+
| **节点管理(8)** | `taint_node` | 为节点添加污点 |
98+
| | `untaint_node` | 为节点移除污点 |
99+
| | `cordon_node` | 为节点设置Cordon |
100+
| | `uncordon_node` | 为节点取消Cordon |
101+
| | `drain_node` | 为节点执行Drain |
102+
| | `get_node_resource_usage` | 查询节点的资源使用情况 |
103+
| | `get_node_ip_usage` | 查询节点上Pod IP资源使用情况 |
104+
| | `get_node_pod_count` | 查询节点上的Pod数量 |
105+
| **Pod 管理(14)** | `list_pod_files` | 列出Pod文件 |
106+
| | `list_all_pod_files` | 列出Pod所有文件 |
107+
| | `delete_pod_file` | 删除Pod文件 |
108+
| | `upload_file_to_pod` | 上传文件到Pod内,支持传递文本内容,存储为Pod内文件 |
109+
| | `get_pod_logs` | 获取Pod日志 |
110+
| | `run_command_in_pod` | 在Pod中执行命令 |
111+
| | `get_pod_linked_service` | 获取Pod关联的Service |
112+
| | `get_pod_linked_ingress` | 获取Pod关联的Ingress |
113+
| | `get_pod_linked_endpoints` | 获取Pod关联的Endpoints |
114+
| | `get_pod_linked_pvc` | 获取Pod关联的PVC |
115+
| | `get_pod_linked_pv` | 获取Pod关联的PV |
116+
| | `get_pod_linked_env` | 通过在pod内运行env命令获取Pod运行时环境变量 |
117+
| | `get_pod_linked_env_from_yaml` | 通过Pod yaml定义获取Pod运行时环境变量 |
118+
| | `get_pod_resource_usage` | 获取Pod的资源使用情况,包括CPU和内存的请求值、限制值、可分配值和使用比例 |
119+
| **YAML管理(2)** | `apply_yaml` | 应用YAML资源 |
120+
| | `delete_yaml` | 删除YAML资源 |
121+
| **存储管理(3)** | `set_default_storageclass` | 设置默认StorageClass |
122+
| | `get_storageclass_pvc_count` | 获取StorageClass下的PVC数量 |
123+
| | `get_storageclass_pv_count` | 获取StorageClass下的PV数量 |
124+
| **Ingress管理(1)** | `set_default_ingressclass` | 设置默认IngressClass |
125125
126126
127127
#### 启动命令

mcp/tools/pod/reg.go

+4-1
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,10 @@ func RegisterTools(s *server.MCPServer) {
1818
DeletePodFileTool(),
1919
DeletePodFileHandler,
2020
)
21-
21+
s.AddTool(
22+
UploadPodFileTool(),
23+
UploadPodFileHandler,
24+
)
2225
s.AddTool(
2326
GetPodLogsTool(),
2427
GetPodLogsHandler,

0 commit comments

Comments
 (0)