Trademark Dataset Statistics
trademark_statsRetrieve trademark dataset statistics including total trademarks, status breakdown, top international classes, last updated timestamp, and data source information.
Instructions
Get statistics about the trademark dataset: total trademarks, status breakdown, top international classes, last updated timestamp, and data source information. Free endpoint.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Implementation Reference
- src/tools/trademarks.ts:149-179 (registration)Registration of the 'trademark_stats' tool on the MCP server via server.registerTool()
server.registerTool( "trademark_stats", { title: "Trademark Dataset Statistics", description: "Get statistics about the trademark dataset: total trademarks, status breakdown, " + "top international classes, last updated timestamp, and data source information. Free endpoint.", inputSchema: {}, }, async () => { const res = await apiGet<TrademarkStatsResponse>("/api/v1/trademarks/stats"); if (!res.ok) { return { content: [ { type: "text" as const, text: `API error (${res.status}): ${JSON.stringify(res.data)}`, }, ], isError: true, }; } return { content: [ { type: "text" as const, text: JSON.stringify(res.data, null, 2) }, ], }; }, ); - src/tools/trademarks.ts:158-178 (handler)Handler function for trademark_stats — calls the /api/v1/trademarks/stats endpoint and returns the JSON response
async () => { const res = await apiGet<TrademarkStatsResponse>("/api/v1/trademarks/stats"); if (!res.ok) { return { content: [ { type: "text" as const, text: `API error (${res.status}): ${JSON.stringify(res.data)}`, }, ], isError: true, }; } return { content: [ { type: "text" as const, text: JSON.stringify(res.data, null, 2) }, ], }; }, - src/tools/trademarks.ts:21-26 (schema)TypeScript interface TrademarkStatsResponse defining the response shape (dataset, source, update_frequency, stats)
interface TrademarkStatsResponse { dataset: string; source: string; update_frequency: string; stats: Record<string, unknown>; } - src/index.ts:17-28 (registration)Import of registerTrademarkTools from trademarks.ts module
import { registerTrademarkTools } from "./tools/trademarks.js"; import { registerPatentTools } from "./tools/patents.js"; import { registerCompanyTools } from "./tools/company.js"; import { registerCryptoTools } from "./tools/crypto.js"; import { registerSanctionsTools } from "./tools/sanctions.js"; import { registerWhaleTools } from "./tools/whales.js"; import { registerLabelTools } from "./tools/labels.js"; import { registerHolderTools } from "./tools/holders.js"; import { registerDexTools } from "./tools/dex.js"; import { registerContractTools } from "./tools/contracts.js"; import { registerPmTools } from "./tools/pm.js"; import { registerPmArbTools } from "./tools/pm_arb.js"; - src/index.ts:44-44 (registration)Invocation of registerTrademarkTools to register all trademark tools including trademark_stats on the MCP server
registerTrademarkTools(server);