waroom_get_service_labels
Retrieve a list of labels for a specific service, specifying page number and items per page for precise results.
Instructions
特定のサービスのラベル一覧を取得します。
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | 取得するページ番号(1以上の整数)。デフォルト: 1 | |
| per_page | No | 1ページあたりの取得数(1-100)。デフォルト: 50 | |
| service_name | Yes | サービス名 |
Implementation Reference
- src/tools/labels.ts:14-35 (handler)MCP tool handler that executes the logic for waroom_get_service_labels by calling WaroomClient.getServiceLabels with parameters and returning formatted JSON response or error message.async (params) => { try { const response = await waroomClient.getServiceLabels( params.service_name, params.page || 1, params.per_page || 50 ); return { content: [{ type: 'text', text: JSON.stringify(response, null, 2) }] }; } catch (error) { return { content: [{ type: 'text', text: `サービスラベル一覧の取得に失敗しました: ${error}` }] }; } }
- src/tools/labels.ts:9-13 (schema)Zod schema defining input parameters for the waroom_get_service_labels tool: service_name (required string), page and per_page (optional numbers).{ service_name: z.string().min(1).max(100).describe('サービス名'), page: z.number().int().min(1).optional().describe('取得するページ番号(1以上の整数)。デフォルト: 1'), per_page: z.number().int().min(1).max(100).optional().describe('1ページあたりの取得数(1-100)。デフォルト: 50'), },
- src/tools/labels.ts:7-36 (registration)Registration of the waroom_get_service_labels tool using server.tool(), including name, description, input schema, and handler function.'waroom_get_service_labels', '特定のサービスのラベル一覧を取得します。', { service_name: z.string().min(1).max(100).describe('サービス名'), page: z.number().int().min(1).optional().describe('取得するページ番号(1以上の整数)。デフォルト: 1'), per_page: z.number().int().min(1).max(100).optional().describe('1ページあたりの取得数(1-100)。デフォルト: 50'), }, async (params) => { try { const response = await waroomClient.getServiceLabels( params.service_name, params.page || 1, params.per_page || 50 ); return { content: [{ type: 'text', text: JSON.stringify(response, null, 2) }] }; } catch (error) { return { content: [{ type: 'text', text: `サービスラベル一覧の取得に失敗しました: ${error}` }] }; } } );
- src/WaroomClient.ts:161-170 (helper)Helper method in WaroomClient that makes the API call to retrieve service labels from Waroom API.async getServiceLabels(serviceName: string, page = 1, perPage = 50) { try { const response = await this.axiosInstance.get(`${this.baseUrl}/services/${serviceName}/labels`, { params: { page, per_page: perPage } }); return response.data; } catch (error) { throw new Error(`Failed to get service labels: ${error}`); } }