Delete skills
Removes one of the caller org's authored skills.
DELETE /v1/tool/skills/{id}
| Address | https://api.hanzo.ai/v1/tool/skills/{id} |
| Method | DELETE |
| Operation | delete_tool_skills_by_id |
| Auth | Authorization: Bearer $HANZO_API_KEY |
Removes one of the caller org's authored skills. Scoped to the caller's org, so an id belonging to another tenant is never reached. Removing what is not there is not an error — the caller's intent is "gone", and it is. Like writing one it takes an admin of the org or a SuperAdmin, and is on the org's audit trail before it is made.
Request
1 field.
| Field | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | yes | ID is the skill to remove, from the path. |
Response
| Status | Body | Meaning |
|---|---|---|
200 | tool.skillDeleted | ok |
default | problem-details | refused |
200 body — 1 field.
| Field | In | Type | Always | Description |
|---|---|---|---|---|
deleted | body | string | — | Deleted is the skill id that is now gone. |
Failure carries the platform error shape — see Errors.
Examples
CLI
SDK
HTTP
MCP
hanzo tool skills rm <id>.ts
.py
.go
.rs
.java
import { Configuration, ToolApi } from 'hanzoai';
const api = new ToolApi(new Configuration({ accessToken: process.env.HANZO_API_KEY }));
const { data } = await api.deleteToolSkillsById({ id: 'id' });from hanzoai.cloud import ApiClient, Configuration
from hanzoai.cloud.api import ToolApi
client = ApiClient(Configuration(access_token=os.environ["HANZO_API_KEY"]))
result = ToolApi(client).delete_tool_skills_by_id(id='id')cfg := hanzoai.NewConfiguration()
cfg.AddDefaultHeader("Authorization", "Bearer "+os.Getenv("HANZO_API_KEY"))
client := hanzoai.NewAPIClient(cfg)
resp, _, err := client.ToolAPI.DeleteToolSkillsById(context.Background()).Execute()
if err != nil {
return err
}use hanzo_client::apis::{configuration::Configuration, tool_api};
let mut cfg = Configuration::new();
cfg.bearer_access_token = std::env::var("HANZO_API_KEY").ok();
let result = tool_api::delete_tool_skills_by_id(&cfg, Default::default()).await?;import ai.hanzo.cloud.ApiClient;
import ai.hanzo.cloud.api.ToolApi;
ApiClient client = new ApiClient();
client.setBearerToken(System.getenv("HANZO_API_KEY"));
var result = new ToolApi(client).deleteToolSkillsById();curl -X DELETE https://api.hanzo.ai/v1/tool/skills/<id> \
-H "Authorization: Bearer $HANZO_API_KEY"MCP reaches tool through the tool tool, which names its 17 operations with its own verbs — this one among them, under a name only MCP declares. describe explains any of them:
curl -X POST https://api.hanzo.ai/v1/mcp \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "describe",
"arguments": {
"op": "list_tools"
}
}
}'Was this page useful?