method: search
#searchHybrid vector + full-text search across published skills. Returns ranked matches with score blending semantic similarity, FTS, trust tier, and freshness.
| field | type | note |
|---|---|---|
| query* | string | 1–500 chars. Use `*` for "any". |
| filters | object | Narrow results. |
| filters.trust_floor | "unverified" | "verified" | "official" | Minimum tier. |
| filters.mode | "artifact" | "hybrid" | "endpoint" | Skill mode. |
| filters.domains | string[] | Match any of these domains. |
| filters.capabilities | string[] | Match any of these capabilities. |
| filters.max_age_days | number | Only skills published within N days. |
| filters.publisher | string | Restrict to one publisher handle. |
| limit | number | Default 10, max 50. |
| offset | number | Default 0. |
{ items: SearchResultItem[]; total: number; took_ms: number }
curl -X POST https://registry.amitte.com/rpc \
-H 'content-type: application/json' \
-d '{
"jsonrpc": "2.0",
"id": 1,
"method": "search",
"params": {
"query": "publish iOS app to TestFlight",
"filters": { "trust_floor": "verified", "mode": "artifact" },
"limit": 5
}
}'{
"jsonrpc": "2.0",
"id": 1,
"result": {
"items": [
{
"id": "mobile/ios-publishing",
"version": "0.1.0",
"description": "...",
"trust_tier": "verified",
"score": 0.832,
"manifest": { /* full manifest */ }
}
],
"total": 1,
"took_ms": 47
}
}