tdx-asset-search
Search TDX assets using text queries and filters for status, department, location, model, or manufacturer to find specific IT resources.
Instructions
Search TDX assets with filters
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| appId | No | TDX app ID (defaults to env TDX_APP_ID) | |
| searchText | No | Full-text search query | |
| statusIds | No | Filter by status IDs | |
| owningDepartmentIds | No | Filter by owning department IDs | |
| owningCustomerIds | No | Filter by owning customer UIDs | |
| locationIds | No | Filter by location IDs | |
| modelIds | No | Filter by model IDs | |
| manufacturerIds | No | Filter by manufacturer IDs | |
| maxResults | No | Max results to return (default 25) |
Implementation Reference
- src/tools/assets.ts:156-173 (handler)The handler function for the tdx-asset-search tool, which constructs the search request body and calls the TDX assets search endpoint.
async (params) => { const app = params.appId ?? defaultAppId; const body: Record<string, unknown> = {}; if (params.searchText !== undefined) body.SearchText = params.searchText; if (params.statusIds !== undefined) body.StatusIDs = params.statusIds; if (params.owningDepartmentIds !== undefined) body.OwningDepartmentIDs = params.owningDepartmentIds; if (params.owningCustomerIds !== undefined) body.OwningCustomerIDs = params.owningCustomerIds; if (params.locationIds !== undefined) body.LocationIDs = params.locationIds; if (params.modelIds !== undefined) body.ModelIDs = params.modelIds; if (params.manufacturerIds !== undefined) body.ManufacturerIDs = params.manufacturerIds; if (params.maxResults !== undefined) body.MaxResults = params.maxResults; try { const result = await client.post(`/${app}/assets/search`, body); return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] }; } catch (e: unknown) { return { content: [{ type: "text", text: String(e) }], isError: true }; } } - src/tools/assets.ts:145-155 (schema)Input schema definition for the tdx-asset-search tool.
{ appId: z.number().optional().describe("TDX app ID (defaults to env TDX_APP_ID)"), searchText: z.string().optional().describe("Full-text search query"), statusIds: z.array(z.number()).optional().describe("Filter by status IDs"), owningDepartmentIds: z.array(z.number()).optional().describe("Filter by owning department IDs"), owningCustomerIds: z.array(z.string()).optional().describe("Filter by owning customer UIDs"), locationIds: z.array(z.number()).optional().describe("Filter by location IDs"), modelIds: z.array(z.number()).optional().describe("Filter by model IDs"), manufacturerIds: z.array(z.number()).optional().describe("Filter by manufacturer IDs"), maxResults: z.number().optional().describe("Max results to return (default 25)"), }, - src/tools/assets.ts:142-143 (registration)Tool registration for tdx-asset-search using server.tool.
server.tool( "tdx-asset-search",