naftiko: 1.0.0-alpha2 info: label: frp Server Admin API — Clients description: 'frp Server Admin API — Clients. 2 operations. Lead operation: List clients. Self-contained Naftiko capability covering one Frp business surface.' tags: - Frp - Clients created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: FRP_API_KEY: FRP_API_KEY capability: consumes: - type: http namespace: server-admin-clients baseUri: http://{host}:{port} description: frp Server Admin API — Clients business capability. Self-contained, no shared references. resources: - name: api-clients path: /api/clients operations: - name: listclients method: GET description: List clients outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: user in: query type: string description: Filter by client user name - name: clientId in: query type: string description: Filter by client identifier - name: runId in: query type: string description: Filter by frpc run identifier - name: status in: query type: string description: Filter by online status - name: api-clients-key path: /api/clients/{key} operations: - name: getclient method: GET description: Get client detail outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: key in: path type: string description: Registry key for the client required: true authentication: type: basic username: '{{env.FRP_USER}}' password: '{{env.FRP_PASS}}' exposes: - type: rest namespace: server-admin-clients-rest port: 8080 description: REST adapter for frp Server Admin API — Clients. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/api/clients name: api-clients description: REST surface for api-clients. operations: - method: GET name: listclients description: List clients call: server-admin-clients.listclients with: user: rest.user clientId: rest.clientId runId: rest.runId status: rest.status outputParameters: - type: object mapping: $. - path: /v1/api/clients/{key} name: api-clients-key description: REST surface for api-clients-key. operations: - method: GET name: getclient description: Get client detail call: server-admin-clients.getclient with: key: rest.key outputParameters: - type: object mapping: $. - type: mcp namespace: server-admin-clients-mcp port: 9090 transport: http description: MCP adapter for frp Server Admin API — Clients. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: list-clients description: List clients hints: readOnly: true destructive: false idempotent: true call: server-admin-clients.listclients with: user: tools.user clientId: tools.clientId runId: tools.runId status: tools.status outputParameters: - type: object mapping: $. - name: get-client-detail description: Get client detail hints: readOnly: true destructive: false idempotent: true call: server-admin-clients.getclient with: key: tools.key outputParameters: - type: object mapping: $.