brand.dev-mcp 0.1.0-alpha.9 → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (122) hide show
  1. package/README.md +1 -2
  2. package/filtering.d.mts +2 -0
  3. package/filtering.d.mts.map +1 -0
  4. package/filtering.d.ts +2 -0
  5. package/filtering.d.ts.map +1 -0
  6. package/filtering.js +21 -0
  7. package/filtering.js.map +1 -0
  8. package/filtering.mjs +14 -0
  9. package/filtering.mjs.map +1 -0
  10. package/package.json +13 -2
  11. package/server.d.mts.map +1 -1
  12. package/server.d.ts.map +1 -1
  13. package/server.js +2 -6
  14. package/server.js.map +1 -1
  15. package/server.mjs +2 -6
  16. package/server.mjs.map +1 -1
  17. package/src/filtering.ts +15 -0
  18. package/src/server.ts +2 -6
  19. package/src/tools/brand/ai-query-brand.ts +12 -5
  20. package/src/tools/brand/identify-from-transaction-brand.ts +14 -4
  21. package/src/tools/brand/prefetch-brand.ts +12 -4
  22. package/src/tools/brand/retrieve-brand.ts +15 -4
  23. package/src/tools/brand/retrieve-by-ticker-brand.ts +15 -4
  24. package/src/tools/brand/retrieve-naics-brand.ts +15 -4
  25. package/src/tools/brand/retrieve-simplified-brand.ts +14 -4
  26. package/src/tools/brand/screenshot-brand.ts +14 -4
  27. package/src/tools/brand/styleguide-brand.ts +6 -3
  28. package/src/tools/index.ts +0 -2
  29. package/src/tools/types.ts +1 -1
  30. package/tools/brand/ai-query-brand.d.mts +1 -1
  31. package/tools/brand/ai-query-brand.d.mts.map +1 -1
  32. package/tools/brand/ai-query-brand.d.ts +1 -1
  33. package/tools/brand/ai-query-brand.d.ts.map +1 -1
  34. package/tools/brand/ai-query-brand.js +10 -3
  35. package/tools/brand/ai-query-brand.js.map +1 -1
  36. package/tools/brand/ai-query-brand.mjs +10 -3
  37. package/tools/brand/ai-query-brand.mjs.map +1 -1
  38. package/tools/brand/identify-from-transaction-brand.d.mts +1 -1
  39. package/tools/brand/identify-from-transaction-brand.d.mts.map +1 -1
  40. package/tools/brand/identify-from-transaction-brand.d.ts +1 -1
  41. package/tools/brand/identify-from-transaction-brand.d.ts.map +1 -1
  42. package/tools/brand/identify-from-transaction-brand.js +12 -2
  43. package/tools/brand/identify-from-transaction-brand.js.map +1 -1
  44. package/tools/brand/identify-from-transaction-brand.mjs +12 -2
  45. package/tools/brand/identify-from-transaction-brand.mjs.map +1 -1
  46. package/tools/brand/prefetch-brand.d.mts +1 -1
  47. package/tools/brand/prefetch-brand.d.mts.map +1 -1
  48. package/tools/brand/prefetch-brand.d.ts +1 -1
  49. package/tools/brand/prefetch-brand.d.ts.map +1 -1
  50. package/tools/brand/prefetch-brand.js +10 -2
  51. package/tools/brand/prefetch-brand.js.map +1 -1
  52. package/tools/brand/prefetch-brand.mjs +10 -2
  53. package/tools/brand/prefetch-brand.mjs.map +1 -1
  54. package/tools/brand/retrieve-brand.d.mts +1 -1
  55. package/tools/brand/retrieve-brand.d.mts.map +1 -1
  56. package/tools/brand/retrieve-brand.d.ts +1 -1
  57. package/tools/brand/retrieve-brand.d.ts.map +1 -1
  58. package/tools/brand/retrieve-brand.js +12 -2
  59. package/tools/brand/retrieve-brand.js.map +1 -1
  60. package/tools/brand/retrieve-brand.mjs +12 -2
  61. package/tools/brand/retrieve-brand.mjs.map +1 -1
  62. package/tools/brand/retrieve-by-ticker-brand.d.mts +1 -1
  63. package/tools/brand/retrieve-by-ticker-brand.d.mts.map +1 -1
  64. package/tools/brand/retrieve-by-ticker-brand.d.ts +1 -1
  65. package/tools/brand/retrieve-by-ticker-brand.d.ts.map +1 -1
  66. package/tools/brand/retrieve-by-ticker-brand.js +12 -2
  67. package/tools/brand/retrieve-by-ticker-brand.js.map +1 -1
  68. package/tools/brand/retrieve-by-ticker-brand.mjs +12 -2
  69. package/tools/brand/retrieve-by-ticker-brand.mjs.map +1 -1
  70. package/tools/brand/retrieve-naics-brand.d.mts +1 -1
  71. package/tools/brand/retrieve-naics-brand.d.mts.map +1 -1
  72. package/tools/brand/retrieve-naics-brand.d.ts +1 -1
  73. package/tools/brand/retrieve-naics-brand.d.ts.map +1 -1
  74. package/tools/brand/retrieve-naics-brand.js +12 -2
  75. package/tools/brand/retrieve-naics-brand.js.map +1 -1
  76. package/tools/brand/retrieve-naics-brand.mjs +12 -2
  77. package/tools/brand/retrieve-naics-brand.mjs.map +1 -1
  78. package/tools/brand/retrieve-simplified-brand.d.mts +1 -1
  79. package/tools/brand/retrieve-simplified-brand.d.mts.map +1 -1
  80. package/tools/brand/retrieve-simplified-brand.d.ts +1 -1
  81. package/tools/brand/retrieve-simplified-brand.d.ts.map +1 -1
  82. package/tools/brand/retrieve-simplified-brand.js +12 -2
  83. package/tools/brand/retrieve-simplified-brand.js.map +1 -1
  84. package/tools/brand/retrieve-simplified-brand.mjs +12 -2
  85. package/tools/brand/retrieve-simplified-brand.mjs.map +1 -1
  86. package/tools/brand/screenshot-brand.d.mts +1 -1
  87. package/tools/brand/screenshot-brand.d.mts.map +1 -1
  88. package/tools/brand/screenshot-brand.d.ts +1 -1
  89. package/tools/brand/screenshot-brand.d.ts.map +1 -1
  90. package/tools/brand/screenshot-brand.js +12 -2
  91. package/tools/brand/screenshot-brand.js.map +1 -1
  92. package/tools/brand/screenshot-brand.mjs +12 -2
  93. package/tools/brand/screenshot-brand.mjs.map +1 -1
  94. package/tools/brand/styleguide-brand.d.mts +1 -1
  95. package/tools/brand/styleguide-brand.d.mts.map +1 -1
  96. package/tools/brand/styleguide-brand.d.ts +1 -1
  97. package/tools/brand/styleguide-brand.d.ts.map +1 -1
  98. package/tools/brand/styleguide-brand.js +5 -1
  99. package/tools/brand/styleguide-brand.js.map +1 -1
  100. package/tools/brand/styleguide-brand.mjs +5 -1
  101. package/tools/brand/styleguide-brand.mjs.map +1 -1
  102. package/tools/index.d.mts.map +1 -1
  103. package/tools/index.d.ts.map +1 -1
  104. package/tools/index.js +0 -2
  105. package/tools/index.js.map +1 -1
  106. package/tools/index.mjs +0 -2
  107. package/tools/index.mjs.map +1 -1
  108. package/tools/types.d.mts +1 -1
  109. package/tools/types.d.mts.map +1 -1
  110. package/tools/types.d.ts +1 -1
  111. package/tools/types.d.ts.map +1 -1
  112. package/tools/types.js.map +1 -1
  113. package/tools/types.mjs.map +1 -1
  114. package/src/tools/brand/search-brand.ts +0 -41
  115. package/tools/brand/search-brand.d.mts +0 -45
  116. package/tools/brand/search-brand.d.mts.map +0 -1
  117. package/tools/brand/search-brand.d.ts +0 -45
  118. package/tools/brand/search-brand.d.ts.map +0 -1
  119. package/tools/brand/search-brand.js +0 -36
  120. package/tools/brand/search-brand.js.map +0 -1
  121. package/tools/brand/search-brand.mjs +0 -32
  122. package/tools/brand/search-brand.mjs.map +0 -1
@@ -1,5 +1,5 @@
1
+ import { Metadata } from 'brand.dev-mcp/tools/types';
1
2
  import { Tool } from '@modelcontextprotocol/sdk/types.js';
2
- import type { Metadata } from "..//index.mjs";
3
3
  import BrandDev from 'brand.dev';
4
4
  export declare const metadata: Metadata;
5
5
  export declare const tool: Tool;
@@ -1 +1 @@
1
- {"version":3,"file":"retrieve-brand.d.mts","sourceRoot":"","sources":["../../src/tools/brand/retrieve-brand.ts"],"names":[],"mappings":"OAIO,EAAE,IAAI,EAAE,MAAM,oCAAoC;OAClD,KAAK,EAAE,QAAQ,EAAE;OACjB,QAAQ,MAAM,WAAW;AAEhC,eAAO,MAAM,QAAQ,EAAE,QAMtB,CAAC;AAEF,eAAO,MAAM,IAAI,EAAE,IAgFlB,CAAC;AAEF,eAAO,MAAM,OAAO,GAAU,QAAQ,QAAQ,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,gEAGxF,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBAHoC,QAAQ,QAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS;;AAKzF,wBAA2C"}
1
+ {"version":3,"file":"retrieve-brand.d.mts","sourceRoot":"","sources":["../../src/tools/brand/retrieve-brand.ts"],"names":[],"mappings":"OAGO,EAAE,QAAQ,EAAuB,MAAM,2BAA2B;OAElE,EAAE,IAAI,EAAE,MAAM,oCAAoC;OAClD,QAAQ,MAAM,WAAW;AAEhC,eAAO,MAAM,QAAQ,EAAE,QAMtB,CAAC;AAEF,eAAO,MAAM,IAAI,EAAE,IA2FlB,CAAC;AAEF,eAAO,MAAM,OAAO,GAAU,QAAQ,QAAQ,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,gEAGxF,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBAHoC,QAAQ,QAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS;;AAKzF,wBAA2C"}
@@ -1,5 +1,5 @@
1
+ import { Metadata } from 'brand.dev-mcp/tools/types';
1
2
  import { Tool } from '@modelcontextprotocol/sdk/types.js';
2
- import type { Metadata } from "..//index.js";
3
3
  import BrandDev from 'brand.dev';
4
4
  export declare const metadata: Metadata;
5
5
  export declare const tool: Tool;
@@ -1 +1 @@
1
- {"version":3,"file":"retrieve-brand.d.ts","sourceRoot":"","sources":["../../src/tools/brand/retrieve-brand.ts"],"names":[],"mappings":"OAIO,EAAE,IAAI,EAAE,MAAM,oCAAoC;OAClD,KAAK,EAAE,QAAQ,EAAE;OACjB,QAAQ,MAAM,WAAW;AAEhC,eAAO,MAAM,QAAQ,EAAE,QAMtB,CAAC;AAEF,eAAO,MAAM,IAAI,EAAE,IAgFlB,CAAC;AAEF,eAAO,MAAM,OAAO,GAAU,QAAQ,QAAQ,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,gEAGxF,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBAHoC,QAAQ,QAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS;;AAKzF,wBAA2C"}
1
+ {"version":3,"file":"retrieve-brand.d.ts","sourceRoot":"","sources":["../../src/tools/brand/retrieve-brand.ts"],"names":[],"mappings":"OAGO,EAAE,QAAQ,EAAuB,MAAM,2BAA2B;OAElE,EAAE,IAAI,EAAE,MAAM,oCAAoC;OAClD,QAAQ,MAAM,WAAW;AAEhC,eAAO,MAAM,QAAQ,EAAE,QAMtB,CAAC;AAEF,eAAO,MAAM,IAAI,EAAE,IA2FlB,CAAC;AAEF,eAAO,MAAM,OAAO,GAAU,QAAQ,QAAQ,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,gEAGxF,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBAHoC,QAAQ,QAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS;;AAKzF,wBAA2C"}
@@ -2,6 +2,7 @@
2
2
  // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.handler = exports.tool = exports.metadata = void 0;
5
+ const filtering_1 = require("brand.dev-mcp/filtering");
5
6
  const types_1 = require("brand.dev-mcp/tools/types");
6
7
  exports.metadata = {
7
8
  resource: 'brand',
@@ -12,7 +13,7 @@ exports.metadata = {
12
13
  };
13
14
  exports.tool = {
14
15
  name: 'retrieve_brand',
15
- description: 'Retrieve brand data by domain',
16
+ description: "When using this tool, always use the `jq_filter` parameter to reduce the response size and improve performance.\n\nOnly omit if you're sure you don't need the data.\n\nRetrieve brand data by domain\n\n# Response Schema\n```json\n{\n type: 'object',\n properties: {\n brand: {\n type: 'object',\n description: 'Detailed brand information',\n properties: {\n address: {\n type: 'object',\n description: 'Physical address of the brand',\n properties: {\n city: {\n type: 'string',\n description: 'City name'\n },\n country: {\n type: 'string',\n description: 'Country name'\n },\n country_code: {\n type: 'string',\n description: 'Country code'\n },\n postal_code: {\n type: 'string',\n description: 'Postal or ZIP code'\n },\n state_code: {\n type: 'string',\n description: 'State or province code'\n },\n state_province: {\n type: 'string',\n description: 'State or province name'\n },\n street: {\n type: 'string',\n description: 'Street address'\n }\n }\n },\n backdrops: {\n type: 'array',\n description: 'An array of backdrop images for the brand',\n items: {\n type: 'object',\n properties: {\n colors: {\n type: 'array',\n description: 'Array of colors in the backdrop image',\n items: {\n type: 'object',\n properties: {\n hex: {\n type: 'string',\n description: 'Color in hexadecimal format'\n },\n name: {\n type: 'string',\n description: 'Name of the color'\n }\n }\n }\n },\n resolution: {\n type: 'object',\n description: 'Resolution of the backdrop image',\n properties: {\n aspect_ratio: {\n type: 'number',\n description: 'Aspect ratio of the image (width/height)'\n },\n height: {\n type: 'integer',\n description: 'Height of the image in pixels'\n },\n width: {\n type: 'integer',\n description: 'Width of the image in pixels'\n }\n }\n },\n url: {\n type: 'string',\n description: 'URL of the backdrop image'\n }\n }\n }\n },\n colors: {\n type: 'array',\n description: 'An array of brand colors',\n items: {\n type: 'object',\n properties: {\n hex: {\n type: 'string',\n description: 'Color in hexadecimal format'\n },\n name: {\n type: 'string',\n description: 'Name of the color'\n }\n }\n }\n },\n description: {\n type: 'string',\n description: 'A brief description of the brand'\n },\n domain: {\n type: 'string',\n description: 'The domain name of the brand'\n },\n email: {\n type: 'string',\n description: 'Company email address'\n },\n is_nsfw: {\n type: 'boolean',\n description: 'Indicates whether the brand content is not safe for work (NSFW)'\n },\n logos: {\n type: 'array',\n description: 'An array of logos associated with the brand',\n items: {\n type: 'object',\n properties: {\n colors: {\n type: 'array',\n description: 'Array of colors in the logo',\n items: {\n type: 'object',\n properties: {\n hex: {\n type: 'string',\n description: 'Color in hexadecimal format'\n },\n name: {\n type: 'string',\n description: 'Name of the color'\n }\n }\n }\n },\n mode: {\n type: 'string',\n description: 'Indicates when this logo is best used: \\'light\\' = best for light mode, \\'dark\\' = best for dark mode, \\'has_opaque_background\\' = can be used for either as image has its own background',\n enum: [ 'light',\n 'dark',\n 'has_opaque_background'\n ]\n },\n resolution: {\n type: 'object',\n description: 'Resolution of the logo image',\n properties: {\n aspect_ratio: {\n type: 'number',\n description: 'Aspect ratio of the image (width/height)'\n },\n height: {\n type: 'integer',\n description: 'Height of the image in pixels'\n },\n width: {\n type: 'integer',\n description: 'Width of the image in pixels'\n }\n }\n },\n type: {\n type: 'string',\n description: 'Type of the logo based on resolution (e.g., \\'icon\\', \\'logo\\')',\n enum: [ 'icon',\n 'logo'\n ]\n },\n url: {\n type: 'string',\n description: 'CDN hosted url of the logo (ready for display)'\n }\n }\n }\n },\n phone: {\n type: 'string',\n description: 'Company phone number'\n },\n slogan: {\n type: 'string',\n description: 'The brand\\'s slogan'\n },\n socials: {\n type: 'array',\n description: 'An array of social media links for the brand',\n items: {\n type: 'object',\n properties: {\n type: {\n type: 'string',\n description: 'Type of social media, e.g., \\'facebook\\', \\'twitter\\''\n },\n url: {\n type: 'string',\n description: 'URL of the social media page'\n }\n }\n }\n },\n stock: {\n type: 'object',\n description: 'Stock market information for this brand (will be null if not a publicly traded company)',\n properties: {\n exchange: {\n type: 'string',\n description: 'Stock exchange name'\n },\n ticker: {\n type: 'string',\n description: 'Stock ticker symbol'\n }\n }\n },\n title: {\n type: 'string',\n description: 'The title or name of the brand'\n }\n }\n },\n code: {\n type: 'integer',\n description: 'HTTP status code'\n },\n status: {\n type: 'string',\n description: 'Status of the response, e.g., \\'ok\\''\n }\n }\n}\n```",
16
17
  inputSchema: {
17
18
  type: 'object',
18
19
  properties: {
@@ -86,12 +87,21 @@ exports.tool = {
86
87
  type: 'integer',
87
88
  description: 'Optional timeout in milliseconds for the request. If the request takes longer than this value, it will be aborted with a 408 status code. Maximum allowed value is 300000ms (5 minutes).',
88
89
  },
90
+ jq_filter: {
91
+ type: 'string',
92
+ title: 'jq Filter',
93
+ description: 'A jq filter to apply to the response to include certain fields. Consult the output schema in the tool description to see the fields that are available.\n\nFor example: to include only the `name` field in every object of a results array, you can provide ".results[].name".\n\nFor more information, see the [jq documentation](https://jqlang.org/manual/).',
94
+ },
89
95
  },
96
+ required: ['domain'],
97
+ },
98
+ annotations: {
99
+ readOnlyHint: true,
90
100
  },
91
101
  };
92
102
  const handler = async (client, args) => {
93
103
  const body = args;
94
- return (0, types_1.asTextContentResult)(await client.brand.retrieve(body));
104
+ return (0, types_1.asTextContentResult)(await (0, filtering_1.maybeFilter)(args, await client.brand.retrieve(body)));
95
105
  };
96
106
  exports.handler = handler;
97
107
  exports.default = { metadata: exports.metadata, tool: exports.tool, handler: exports.handler };
@@ -1 +1 @@
1
- {"version":3,"file":"retrieve-brand.js","sourceRoot":"","sources":["../../src/tools/brand/retrieve-brand.ts"],"names":[],"mappings":";AAAA,sFAAsF;;;AAEtF,qDAAgE;AAMnD,QAAA,QAAQ,GAAa;IAChC,QAAQ,EAAE,OAAO;IACjB,SAAS,EAAE,MAAM;IACjB,IAAI,EAAE,EAAE;IACR,UAAU,EAAE,KAAK;IACjB,QAAQ,EAAE,iBAAiB;CAC5B,CAAC;AAEW,QAAA,IAAI,GAAS;IACxB,IAAI,EAAE,gBAAgB;IACtB,WAAW,EAAE,+BAA+B;IAC5C,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,wCAAwC;aACtD;YACD,cAAc,EAAE;gBACd,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,sEAAsE;gBACnF,IAAI,EAAE;oBACJ,UAAU;oBACV,QAAQ;oBACR,OAAO;oBACP,SAAS;oBACT,WAAW;oBACX,SAAS;oBACT,UAAU;oBACV,OAAO;oBACP,QAAQ;oBACR,OAAO;oBACP,SAAS;oBACT,UAAU;oBACV,OAAO;oBACP,SAAS;oBACT,QAAQ;oBACR,QAAQ;oBACR,OAAO;oBACP,UAAU;oBACV,OAAO;oBACP,WAAW;oBACX,WAAW;oBACX,YAAY;oBACZ,SAAS;oBACT,QAAQ;oBACR,QAAQ;oBACR,OAAO;oBACP,SAAS;oBACT,YAAY;oBACZ,YAAY;oBACZ,WAAW;oBACX,QAAQ;oBACR,WAAW;oBACX,QAAQ;oBACR,QAAQ;oBACR,QAAQ;oBACR,YAAY;oBACZ,UAAU;oBACV,SAAS;oBACT,SAAS;oBACT,QAAQ;oBACR,SAAS;oBACT,QAAQ;oBACR,SAAS;oBACT,SAAS;oBACT,SAAS;oBACT,SAAS;oBACT,SAAS;oBACT,WAAW;oBACX,MAAM;oBACN,OAAO;oBACP,YAAY;oBACZ,OAAO;iBACR;aACF;YACD,QAAQ,EAAE;gBACR,IAAI,EAAE,SAAS;gBACf,WAAW,EACT,0LAA0L;aAC7L;YACD,SAAS,EAAE;gBACT,IAAI,EAAE,SAAS;gBACf,WAAW,EACT,0LAA0L;aAC7L;SACF;KACF;CACF,CAAC;AAEK,MAAM,OAAO,GAAG,KAAK,EAAE,MAAgB,EAAE,IAAyC,EAAE,EAAE;IAC3F,MAAM,IAAI,GAAG,IAAW,CAAC;IACzB,OAAO,IAAA,2BAAmB,EAAC,MAAM,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;AAChE,CAAC,CAAC;AAHW,QAAA,OAAO,WAGlB;AAEF,kBAAe,EAAE,QAAQ,EAAR,gBAAQ,EAAE,IAAI,EAAJ,YAAI,EAAE,OAAO,EAAP,eAAO,EAAE,CAAC"}
1
+ {"version":3,"file":"retrieve-brand.js","sourceRoot":"","sources":["../../src/tools/brand/retrieve-brand.ts"],"names":[],"mappings":";AAAA,sFAAsF;;;AAEtF,uDAAsD;AACtD,qDAA0E;AAK7D,QAAA,QAAQ,GAAa;IAChC,QAAQ,EAAE,OAAO;IACjB,SAAS,EAAE,MAAM;IACjB,IAAI,EAAE,EAAE;IACR,UAAU,EAAE,KAAK;IACjB,QAAQ,EAAE,iBAAiB;CAC5B,CAAC;AAEW,QAAA,IAAI,GAAS;IACxB,IAAI,EAAE,gBAAgB;IACtB,WAAW,EACT,8nPAA8nP;IAChoP,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,wCAAwC;aACtD;YACD,cAAc,EAAE;gBACd,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,sEAAsE;gBACnF,IAAI,EAAE;oBACJ,UAAU;oBACV,QAAQ;oBACR,OAAO;oBACP,SAAS;oBACT,WAAW;oBACX,SAAS;oBACT,UAAU;oBACV,OAAO;oBACP,QAAQ;oBACR,OAAO;oBACP,SAAS;oBACT,UAAU;oBACV,OAAO;oBACP,SAAS;oBACT,QAAQ;oBACR,QAAQ;oBACR,OAAO;oBACP,UAAU;oBACV,OAAO;oBACP,WAAW;oBACX,WAAW;oBACX,YAAY;oBACZ,SAAS;oBACT,QAAQ;oBACR,QAAQ;oBACR,OAAO;oBACP,SAAS;oBACT,YAAY;oBACZ,YAAY;oBACZ,WAAW;oBACX,QAAQ;oBACR,WAAW;oBACX,QAAQ;oBACR,QAAQ;oBACR,QAAQ;oBACR,YAAY;oBACZ,UAAU;oBACV,SAAS;oBACT,SAAS;oBACT,QAAQ;oBACR,SAAS;oBACT,QAAQ;oBACR,SAAS;oBACT,SAAS;oBACT,SAAS;oBACT,SAAS;oBACT,SAAS;oBACT,WAAW;oBACX,MAAM;oBACN,OAAO;oBACP,YAAY;oBACZ,OAAO;iBACR;aACF;YACD,QAAQ,EAAE;gBACR,IAAI,EAAE,SAAS;gBACf,WAAW,EACT,0LAA0L;aAC7L;YACD,SAAS,EAAE;gBACT,IAAI,EAAE,SAAS;gBACf,WAAW,EACT,0LAA0L;aAC7L;YACD,SAAS,EAAE;gBACT,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,WAAW;gBAClB,WAAW,EACT,kWAAkW;aACrW;SACF;QACD,QAAQ,EAAE,CAAC,QAAQ,CAAC;KACrB;IACD,WAAW,EAAE;QACX,YAAY,EAAE,IAAI;KACnB;CACF,CAAC;AAEK,MAAM,OAAO,GAAG,KAAK,EAAE,MAAgB,EAAE,IAAyC,EAAE,EAAE;IAC3F,MAAM,IAAI,GAAG,IAAW,CAAC;IACzB,OAAO,IAAA,2BAAmB,EAAC,MAAM,IAAA,uBAAW,EAAC,IAAI,EAAE,MAAM,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACzF,CAAC,CAAC;AAHW,QAAA,OAAO,WAGlB;AAEF,kBAAe,EAAE,QAAQ,EAAR,gBAAQ,EAAE,IAAI,EAAJ,YAAI,EAAE,OAAO,EAAP,eAAO,EAAE,CAAC"}
@@ -1,4 +1,5 @@
1
1
  // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+ import { maybeFilter } from 'brand.dev-mcp/filtering';
2
3
  import { asTextContentResult } from 'brand.dev-mcp/tools/types';
3
4
  export const metadata = {
4
5
  resource: 'brand',
@@ -9,7 +10,7 @@ export const metadata = {
9
10
  };
10
11
  export const tool = {
11
12
  name: 'retrieve_brand',
12
- description: 'Retrieve brand data by domain',
13
+ description: "When using this tool, always use the `jq_filter` parameter to reduce the response size and improve performance.\n\nOnly omit if you're sure you don't need the data.\n\nRetrieve brand data by domain\n\n# Response Schema\n```json\n{\n type: 'object',\n properties: {\n brand: {\n type: 'object',\n description: 'Detailed brand information',\n properties: {\n address: {\n type: 'object',\n description: 'Physical address of the brand',\n properties: {\n city: {\n type: 'string',\n description: 'City name'\n },\n country: {\n type: 'string',\n description: 'Country name'\n },\n country_code: {\n type: 'string',\n description: 'Country code'\n },\n postal_code: {\n type: 'string',\n description: 'Postal or ZIP code'\n },\n state_code: {\n type: 'string',\n description: 'State or province code'\n },\n state_province: {\n type: 'string',\n description: 'State or province name'\n },\n street: {\n type: 'string',\n description: 'Street address'\n }\n }\n },\n backdrops: {\n type: 'array',\n description: 'An array of backdrop images for the brand',\n items: {\n type: 'object',\n properties: {\n colors: {\n type: 'array',\n description: 'Array of colors in the backdrop image',\n items: {\n type: 'object',\n properties: {\n hex: {\n type: 'string',\n description: 'Color in hexadecimal format'\n },\n name: {\n type: 'string',\n description: 'Name of the color'\n }\n }\n }\n },\n resolution: {\n type: 'object',\n description: 'Resolution of the backdrop image',\n properties: {\n aspect_ratio: {\n type: 'number',\n description: 'Aspect ratio of the image (width/height)'\n },\n height: {\n type: 'integer',\n description: 'Height of the image in pixels'\n },\n width: {\n type: 'integer',\n description: 'Width of the image in pixels'\n }\n }\n },\n url: {\n type: 'string',\n description: 'URL of the backdrop image'\n }\n }\n }\n },\n colors: {\n type: 'array',\n description: 'An array of brand colors',\n items: {\n type: 'object',\n properties: {\n hex: {\n type: 'string',\n description: 'Color in hexadecimal format'\n },\n name: {\n type: 'string',\n description: 'Name of the color'\n }\n }\n }\n },\n description: {\n type: 'string',\n description: 'A brief description of the brand'\n },\n domain: {\n type: 'string',\n description: 'The domain name of the brand'\n },\n email: {\n type: 'string',\n description: 'Company email address'\n },\n is_nsfw: {\n type: 'boolean',\n description: 'Indicates whether the brand content is not safe for work (NSFW)'\n },\n logos: {\n type: 'array',\n description: 'An array of logos associated with the brand',\n items: {\n type: 'object',\n properties: {\n colors: {\n type: 'array',\n description: 'Array of colors in the logo',\n items: {\n type: 'object',\n properties: {\n hex: {\n type: 'string',\n description: 'Color in hexadecimal format'\n },\n name: {\n type: 'string',\n description: 'Name of the color'\n }\n }\n }\n },\n mode: {\n type: 'string',\n description: 'Indicates when this logo is best used: \\'light\\' = best for light mode, \\'dark\\' = best for dark mode, \\'has_opaque_background\\' = can be used for either as image has its own background',\n enum: [ 'light',\n 'dark',\n 'has_opaque_background'\n ]\n },\n resolution: {\n type: 'object',\n description: 'Resolution of the logo image',\n properties: {\n aspect_ratio: {\n type: 'number',\n description: 'Aspect ratio of the image (width/height)'\n },\n height: {\n type: 'integer',\n description: 'Height of the image in pixels'\n },\n width: {\n type: 'integer',\n description: 'Width of the image in pixels'\n }\n }\n },\n type: {\n type: 'string',\n description: 'Type of the logo based on resolution (e.g., \\'icon\\', \\'logo\\')',\n enum: [ 'icon',\n 'logo'\n ]\n },\n url: {\n type: 'string',\n description: 'CDN hosted url of the logo (ready for display)'\n }\n }\n }\n },\n phone: {\n type: 'string',\n description: 'Company phone number'\n },\n slogan: {\n type: 'string',\n description: 'The brand\\'s slogan'\n },\n socials: {\n type: 'array',\n description: 'An array of social media links for the brand',\n items: {\n type: 'object',\n properties: {\n type: {\n type: 'string',\n description: 'Type of social media, e.g., \\'facebook\\', \\'twitter\\''\n },\n url: {\n type: 'string',\n description: 'URL of the social media page'\n }\n }\n }\n },\n stock: {\n type: 'object',\n description: 'Stock market information for this brand (will be null if not a publicly traded company)',\n properties: {\n exchange: {\n type: 'string',\n description: 'Stock exchange name'\n },\n ticker: {\n type: 'string',\n description: 'Stock ticker symbol'\n }\n }\n },\n title: {\n type: 'string',\n description: 'The title or name of the brand'\n }\n }\n },\n code: {\n type: 'integer',\n description: 'HTTP status code'\n },\n status: {\n type: 'string',\n description: 'Status of the response, e.g., \\'ok\\''\n }\n }\n}\n```",
13
14
  inputSchema: {
14
15
  type: 'object',
15
16
  properties: {
@@ -83,12 +84,21 @@ export const tool = {
83
84
  type: 'integer',
84
85
  description: 'Optional timeout in milliseconds for the request. If the request takes longer than this value, it will be aborted with a 408 status code. Maximum allowed value is 300000ms (5 minutes).',
85
86
  },
87
+ jq_filter: {
88
+ type: 'string',
89
+ title: 'jq Filter',
90
+ description: 'A jq filter to apply to the response to include certain fields. Consult the output schema in the tool description to see the fields that are available.\n\nFor example: to include only the `name` field in every object of a results array, you can provide ".results[].name".\n\nFor more information, see the [jq documentation](https://jqlang.org/manual/).',
91
+ },
86
92
  },
93
+ required: ['domain'],
94
+ },
95
+ annotations: {
96
+ readOnlyHint: true,
87
97
  },
88
98
  };
89
99
  export const handler = async (client, args) => {
90
100
  const body = args;
91
- return asTextContentResult(await client.brand.retrieve(body));
101
+ return asTextContentResult(await maybeFilter(args, await client.brand.retrieve(body)));
92
102
  };
93
103
  export default { metadata, tool, handler };
94
104
  //# sourceMappingURL=retrieve-brand.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"retrieve-brand.mjs","sourceRoot":"","sources":["../../src/tools/brand/retrieve-brand.ts"],"names":[],"mappings":"AAAA,sFAAsF;OAE/E,EAAE,mBAAmB,EAAE,MAAM,2BAA2B;AAM/D,MAAM,CAAC,MAAM,QAAQ,GAAa;IAChC,QAAQ,EAAE,OAAO;IACjB,SAAS,EAAE,MAAM;IACjB,IAAI,EAAE,EAAE;IACR,UAAU,EAAE,KAAK;IACjB,QAAQ,EAAE,iBAAiB;CAC5B,CAAC;AAEF,MAAM,CAAC,MAAM,IAAI,GAAS;IACxB,IAAI,EAAE,gBAAgB;IACtB,WAAW,EAAE,+BAA+B;IAC5C,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,wCAAwC;aACtD;YACD,cAAc,EAAE;gBACd,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,sEAAsE;gBACnF,IAAI,EAAE;oBACJ,UAAU;oBACV,QAAQ;oBACR,OAAO;oBACP,SAAS;oBACT,WAAW;oBACX,SAAS;oBACT,UAAU;oBACV,OAAO;oBACP,QAAQ;oBACR,OAAO;oBACP,SAAS;oBACT,UAAU;oBACV,OAAO;oBACP,SAAS;oBACT,QAAQ;oBACR,QAAQ;oBACR,OAAO;oBACP,UAAU;oBACV,OAAO;oBACP,WAAW;oBACX,WAAW;oBACX,YAAY;oBACZ,SAAS;oBACT,QAAQ;oBACR,QAAQ;oBACR,OAAO;oBACP,SAAS;oBACT,YAAY;oBACZ,YAAY;oBACZ,WAAW;oBACX,QAAQ;oBACR,WAAW;oBACX,QAAQ;oBACR,QAAQ;oBACR,QAAQ;oBACR,YAAY;oBACZ,UAAU;oBACV,SAAS;oBACT,SAAS;oBACT,QAAQ;oBACR,SAAS;oBACT,QAAQ;oBACR,SAAS;oBACT,SAAS;oBACT,SAAS;oBACT,SAAS;oBACT,SAAS;oBACT,WAAW;oBACX,MAAM;oBACN,OAAO;oBACP,YAAY;oBACZ,OAAO;iBACR;aACF;YACD,QAAQ,EAAE;gBACR,IAAI,EAAE,SAAS;gBACf,WAAW,EACT,0LAA0L;aAC7L;YACD,SAAS,EAAE;gBACT,IAAI,EAAE,SAAS;gBACf,WAAW,EACT,0LAA0L;aAC7L;SACF;KACF;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,OAAO,GAAG,KAAK,EAAE,MAAgB,EAAE,IAAyC,EAAE,EAAE;IAC3F,MAAM,IAAI,GAAG,IAAW,CAAC;IACzB,OAAO,mBAAmB,CAAC,MAAM,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;AAChE,CAAC,CAAC;AAEF,eAAe,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC"}
1
+ {"version":3,"file":"retrieve-brand.mjs","sourceRoot":"","sources":["../../src/tools/brand/retrieve-brand.ts"],"names":[],"mappings":"AAAA,sFAAsF;OAE/E,EAAE,WAAW,EAAE,MAAM,yBAAyB;OAC9C,EAAY,mBAAmB,EAAE,MAAM,2BAA2B;AAKzE,MAAM,CAAC,MAAM,QAAQ,GAAa;IAChC,QAAQ,EAAE,OAAO;IACjB,SAAS,EAAE,MAAM;IACjB,IAAI,EAAE,EAAE;IACR,UAAU,EAAE,KAAK;IACjB,QAAQ,EAAE,iBAAiB;CAC5B,CAAC;AAEF,MAAM,CAAC,MAAM,IAAI,GAAS;IACxB,IAAI,EAAE,gBAAgB;IACtB,WAAW,EACT,8nPAA8nP;IAChoP,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,wCAAwC;aACtD;YACD,cAAc,EAAE;gBACd,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,sEAAsE;gBACnF,IAAI,EAAE;oBACJ,UAAU;oBACV,QAAQ;oBACR,OAAO;oBACP,SAAS;oBACT,WAAW;oBACX,SAAS;oBACT,UAAU;oBACV,OAAO;oBACP,QAAQ;oBACR,OAAO;oBACP,SAAS;oBACT,UAAU;oBACV,OAAO;oBACP,SAAS;oBACT,QAAQ;oBACR,QAAQ;oBACR,OAAO;oBACP,UAAU;oBACV,OAAO;oBACP,WAAW;oBACX,WAAW;oBACX,YAAY;oBACZ,SAAS;oBACT,QAAQ;oBACR,QAAQ;oBACR,OAAO;oBACP,SAAS;oBACT,YAAY;oBACZ,YAAY;oBACZ,WAAW;oBACX,QAAQ;oBACR,WAAW;oBACX,QAAQ;oBACR,QAAQ;oBACR,QAAQ;oBACR,YAAY;oBACZ,UAAU;oBACV,SAAS;oBACT,SAAS;oBACT,QAAQ;oBACR,SAAS;oBACT,QAAQ;oBACR,SAAS;oBACT,SAAS;oBACT,SAAS;oBACT,SAAS;oBACT,SAAS;oBACT,WAAW;oBACX,MAAM;oBACN,OAAO;oBACP,YAAY;oBACZ,OAAO;iBACR;aACF;YACD,QAAQ,EAAE;gBACR,IAAI,EAAE,SAAS;gBACf,WAAW,EACT,0LAA0L;aAC7L;YACD,SAAS,EAAE;gBACT,IAAI,EAAE,SAAS;gBACf,WAAW,EACT,0LAA0L;aAC7L;YACD,SAAS,EAAE;gBACT,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,WAAW;gBAClB,WAAW,EACT,kWAAkW;aACrW;SACF;QACD,QAAQ,EAAE,CAAC,QAAQ,CAAC;KACrB;IACD,WAAW,EAAE;QACX,YAAY,EAAE,IAAI;KACnB;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,OAAO,GAAG,KAAK,EAAE,MAAgB,EAAE,IAAyC,EAAE,EAAE;IAC3F,MAAM,IAAI,GAAG,IAAW,CAAC;IACzB,OAAO,mBAAmB,CAAC,MAAM,WAAW,CAAC,IAAI,EAAE,MAAM,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACzF,CAAC,CAAC;AAEF,eAAe,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC"}
@@ -1,5 +1,5 @@
1
+ import { Metadata } from 'brand.dev-mcp/tools/types';
1
2
  import { Tool } from '@modelcontextprotocol/sdk/types.js';
2
- import type { Metadata } from "..//index.mjs";
3
3
  import BrandDev from 'brand.dev';
4
4
  export declare const metadata: Metadata;
5
5
  export declare const tool: Tool;
@@ -1 +1 @@
1
- {"version":3,"file":"retrieve-by-ticker-brand.d.mts","sourceRoot":"","sources":["../../src/tools/brand/retrieve-by-ticker-brand.ts"],"names":[],"mappings":"OAIO,EAAE,IAAI,EAAE,MAAM,oCAAoC;OAClD,KAAK,EAAE,QAAQ,EAAE;OACjB,QAAQ,MAAM,WAAW;AAEhC,eAAO,MAAM,QAAQ,EAAE,QAMtB,CAAC;AAEF,eAAO,MAAM,IAAI,EAAE,IAiBlB,CAAC;AAEF,eAAO,MAAM,OAAO,GAAU,QAAQ,QAAQ,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,gEAGxF,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBAHoC,QAAQ,QAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS;;AAKzF,wBAA2C"}
1
+ {"version":3,"file":"retrieve-by-ticker-brand.d.mts","sourceRoot":"","sources":["../../src/tools/brand/retrieve-by-ticker-brand.ts"],"names":[],"mappings":"OAGO,EAAE,QAAQ,EAAuB,MAAM,2BAA2B;OAElE,EAAE,IAAI,EAAE,MAAM,oCAAoC;OAClD,QAAQ,MAAM,WAAW;AAEhC,eAAO,MAAM,QAAQ,EAAE,QAMtB,CAAC;AAEF,eAAO,MAAM,IAAI,EAAE,IA4BlB,CAAC;AAEF,eAAO,MAAM,OAAO,GAAU,QAAQ,QAAQ,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,gEAGxF,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBAHoC,QAAQ,QAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS;;AAKzF,wBAA2C"}
@@ -1,5 +1,5 @@
1
+ import { Metadata } from 'brand.dev-mcp/tools/types';
1
2
  import { Tool } from '@modelcontextprotocol/sdk/types.js';
2
- import type { Metadata } from "..//index.js";
3
3
  import BrandDev from 'brand.dev';
4
4
  export declare const metadata: Metadata;
5
5
  export declare const tool: Tool;
@@ -1 +1 @@
1
- {"version":3,"file":"retrieve-by-ticker-brand.d.ts","sourceRoot":"","sources":["../../src/tools/brand/retrieve-by-ticker-brand.ts"],"names":[],"mappings":"OAIO,EAAE,IAAI,EAAE,MAAM,oCAAoC;OAClD,KAAK,EAAE,QAAQ,EAAE;OACjB,QAAQ,MAAM,WAAW;AAEhC,eAAO,MAAM,QAAQ,EAAE,QAMtB,CAAC;AAEF,eAAO,MAAM,IAAI,EAAE,IAiBlB,CAAC;AAEF,eAAO,MAAM,OAAO,GAAU,QAAQ,QAAQ,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,gEAGxF,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBAHoC,QAAQ,QAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS;;AAKzF,wBAA2C"}
1
+ {"version":3,"file":"retrieve-by-ticker-brand.d.ts","sourceRoot":"","sources":["../../src/tools/brand/retrieve-by-ticker-brand.ts"],"names":[],"mappings":"OAGO,EAAE,QAAQ,EAAuB,MAAM,2BAA2B;OAElE,EAAE,IAAI,EAAE,MAAM,oCAAoC;OAClD,QAAQ,MAAM,WAAW;AAEhC,eAAO,MAAM,QAAQ,EAAE,QAMtB,CAAC;AAEF,eAAO,MAAM,IAAI,EAAE,IA4BlB,CAAC;AAEF,eAAO,MAAM,OAAO,GAAU,QAAQ,QAAQ,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,gEAGxF,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBAHoC,QAAQ,QAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS;;AAKzF,wBAA2C"}
@@ -2,6 +2,7 @@
2
2
  // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.handler = exports.tool = exports.metadata = void 0;
5
+ const filtering_1 = require("brand.dev-mcp/filtering");
5
6
  const types_1 = require("brand.dev-mcp/tools/types");
6
7
  exports.metadata = {
7
8
  resource: 'brand',
@@ -12,7 +13,7 @@ exports.metadata = {
12
13
  };
13
14
  exports.tool = {
14
15
  name: 'retrieve_by_ticker_brand',
15
- description: 'Retrieve brand data by stock ticker (e.g. AAPL, TSLA, etc.)',
16
+ description: "When using this tool, always use the `jq_filter` parameter to reduce the response size and improve performance.\n\nOnly omit if you're sure you don't need the data.\n\nRetrieve brand data by stock ticker (e.g. AAPL, TSLA, etc.)\n\n# Response Schema\n```json\n{\n type: 'object',\n properties: {\n brand: {\n type: 'object',\n description: 'Detailed brand information',\n properties: {\n address: {\n type: 'object',\n description: 'Physical address of the brand',\n properties: {\n city: {\n type: 'string',\n description: 'City name'\n },\n country: {\n type: 'string',\n description: 'Country name'\n },\n country_code: {\n type: 'string',\n description: 'Country code'\n },\n postal_code: {\n type: 'string',\n description: 'Postal or ZIP code'\n },\n state_code: {\n type: 'string',\n description: 'State or province code'\n },\n state_province: {\n type: 'string',\n description: 'State or province name'\n },\n street: {\n type: 'string',\n description: 'Street address'\n }\n }\n },\n backdrops: {\n type: 'array',\n description: 'An array of backdrop images for the brand',\n items: {\n type: 'object',\n properties: {\n colors: {\n type: 'array',\n description: 'Array of colors in the backdrop image',\n items: {\n type: 'object',\n properties: {\n hex: {\n type: 'string',\n description: 'Color in hexadecimal format'\n },\n name: {\n type: 'string',\n description: 'Name of the color'\n }\n }\n }\n },\n resolution: {\n type: 'object',\n description: 'Resolution of the backdrop image',\n properties: {\n aspect_ratio: {\n type: 'number',\n description: 'Aspect ratio of the image (width/height)'\n },\n height: {\n type: 'integer',\n description: 'Height of the image in pixels'\n },\n width: {\n type: 'integer',\n description: 'Width of the image in pixels'\n }\n }\n },\n url: {\n type: 'string',\n description: 'URL of the backdrop image'\n }\n }\n }\n },\n colors: {\n type: 'array',\n description: 'An array of brand colors',\n items: {\n type: 'object',\n properties: {\n hex: {\n type: 'string',\n description: 'Color in hexadecimal format'\n },\n name: {\n type: 'string',\n description: 'Name of the color'\n }\n }\n }\n },\n description: {\n type: 'string',\n description: 'A brief description of the brand'\n },\n domain: {\n type: 'string',\n description: 'The domain name of the brand'\n },\n email: {\n type: 'string',\n description: 'Company email address'\n },\n is_nsfw: {\n type: 'boolean',\n description: 'Indicates whether the brand content is not safe for work (NSFW)'\n },\n logos: {\n type: 'array',\n description: 'An array of logos associated with the brand',\n items: {\n type: 'object',\n properties: {\n colors: {\n type: 'array',\n description: 'Array of colors in the logo',\n items: {\n type: 'object',\n properties: {\n hex: {\n type: 'string',\n description: 'Color in hexadecimal format'\n },\n name: {\n type: 'string',\n description: 'Name of the color'\n }\n }\n }\n },\n mode: {\n type: 'string',\n description: 'Indicates when this logo is best used: \\'light\\' = best for light mode, \\'dark\\' = best for dark mode, \\'has_opaque_background\\' = can be used for either as image has its own background',\n enum: [ 'light',\n 'dark',\n 'has_opaque_background'\n ]\n },\n resolution: {\n type: 'object',\n description: 'Resolution of the logo image',\n properties: {\n aspect_ratio: {\n type: 'number',\n description: 'Aspect ratio of the image (width/height)'\n },\n height: {\n type: 'integer',\n description: 'Height of the image in pixels'\n },\n width: {\n type: 'integer',\n description: 'Width of the image in pixels'\n }\n }\n },\n type: {\n type: 'string',\n description: 'Type of the logo based on resolution (e.g., \\'icon\\', \\'logo\\')',\n enum: [ 'icon',\n 'logo'\n ]\n },\n url: {\n type: 'string',\n description: 'CDN hosted url of the logo (ready for display)'\n }\n }\n }\n },\n phone: {\n type: 'string',\n description: 'Company phone number'\n },\n slogan: {\n type: 'string',\n description: 'The brand\\'s slogan'\n },\n socials: {\n type: 'array',\n description: 'An array of social media links for the brand',\n items: {\n type: 'object',\n properties: {\n type: {\n type: 'string',\n description: 'Type of social media, e.g., \\'facebook\\', \\'twitter\\''\n },\n url: {\n type: 'string',\n description: 'URL of the social media page'\n }\n }\n }\n },\n stock: {\n type: 'object',\n description: 'Stock market information for this brand (will be null if not a publicly traded company)',\n properties: {\n exchange: {\n type: 'string',\n description: 'Stock exchange name'\n },\n ticker: {\n type: 'string',\n description: 'Stock ticker symbol'\n }\n }\n },\n title: {\n type: 'string',\n description: 'The title or name of the brand'\n }\n }\n },\n code: {\n type: 'integer',\n description: 'HTTP status code'\n },\n status: {\n type: 'string',\n description: 'Status of the response, e.g., \\'ok\\''\n }\n }\n}\n```",
16
17
  inputSchema: {
17
18
  type: 'object',
18
19
  properties: {
@@ -24,12 +25,21 @@ exports.tool = {
24
25
  type: 'integer',
25
26
  description: 'Optional timeout in milliseconds for the request. If the request takes longer than this value, it will be aborted with a 408 status code. Maximum allowed value is 300000ms (5 minutes).',
26
27
  },
28
+ jq_filter: {
29
+ type: 'string',
30
+ title: 'jq Filter',
31
+ description: 'A jq filter to apply to the response to include certain fields. Consult the output schema in the tool description to see the fields that are available.\n\nFor example: to include only the `name` field in every object of a results array, you can provide ".results[].name".\n\nFor more information, see the [jq documentation](https://jqlang.org/manual/).',
32
+ },
27
33
  },
34
+ required: ['ticker'],
35
+ },
36
+ annotations: {
37
+ readOnlyHint: true,
28
38
  },
29
39
  };
30
40
  const handler = async (client, args) => {
31
41
  const body = args;
32
- return (0, types_1.asTextContentResult)(await client.brand.retrieveByTicker(body));
42
+ return (0, types_1.asTextContentResult)(await (0, filtering_1.maybeFilter)(args, await client.brand.retrieveByTicker(body)));
33
43
  };
34
44
  exports.handler = handler;
35
45
  exports.default = { metadata: exports.metadata, tool: exports.tool, handler: exports.handler };
@@ -1 +1 @@
1
- {"version":3,"file":"retrieve-by-ticker-brand.js","sourceRoot":"","sources":["../../src/tools/brand/retrieve-by-ticker-brand.ts"],"names":[],"mappings":";AAAA,sFAAsF;;;AAEtF,qDAAgE;AAMnD,QAAA,QAAQ,GAAa;IAChC,QAAQ,EAAE,OAAO;IACjB,SAAS,EAAE,MAAM;IACjB,IAAI,EAAE,EAAE;IACR,UAAU,EAAE,KAAK;IACjB,QAAQ,EAAE,2BAA2B;CACtC,CAAC;AAEW,QAAA,IAAI,GAAS;IACxB,IAAI,EAAE,0BAA0B;IAChC,WAAW,EAAE,6DAA6D;IAC1E,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,wEAAwE;aACtF;YACD,SAAS,EAAE;gBACT,IAAI,EAAE,SAAS;gBACf,WAAW,EACT,0LAA0L;aAC7L;SACF;KACF;CACF,CAAC;AAEK,MAAM,OAAO,GAAG,KAAK,EAAE,MAAgB,EAAE,IAAyC,EAAE,EAAE;IAC3F,MAAM,IAAI,GAAG,IAAW,CAAC;IACzB,OAAO,IAAA,2BAAmB,EAAC,MAAM,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC;AACxE,CAAC,CAAC;AAHW,QAAA,OAAO,WAGlB;AAEF,kBAAe,EAAE,QAAQ,EAAR,gBAAQ,EAAE,IAAI,EAAJ,YAAI,EAAE,OAAO,EAAP,eAAO,EAAE,CAAC"}
1
+ {"version":3,"file":"retrieve-by-ticker-brand.js","sourceRoot":"","sources":["../../src/tools/brand/retrieve-by-ticker-brand.ts"],"names":[],"mappings":";AAAA,sFAAsF;;;AAEtF,uDAAsD;AACtD,qDAA0E;AAK7D,QAAA,QAAQ,GAAa;IAChC,QAAQ,EAAE,OAAO;IACjB,SAAS,EAAE,MAAM;IACjB,IAAI,EAAE,EAAE;IACR,UAAU,EAAE,KAAK;IACjB,QAAQ,EAAE,2BAA2B;CACtC,CAAC;AAEW,QAAA,IAAI,GAAS;IACxB,IAAI,EAAE,0BAA0B;IAChC,WAAW,EACT,4pPAA4pP;IAC9pP,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,wEAAwE;aACtF;YACD,SAAS,EAAE;gBACT,IAAI,EAAE,SAAS;gBACf,WAAW,EACT,0LAA0L;aAC7L;YACD,SAAS,EAAE;gBACT,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,WAAW;gBAClB,WAAW,EACT,kWAAkW;aACrW;SACF;QACD,QAAQ,EAAE,CAAC,QAAQ,CAAC;KACrB;IACD,WAAW,EAAE;QACX,YAAY,EAAE,IAAI;KACnB;CACF,CAAC;AAEK,MAAM,OAAO,GAAG,KAAK,EAAE,MAAgB,EAAE,IAAyC,EAAE,EAAE;IAC3F,MAAM,IAAI,GAAG,IAAW,CAAC;IACzB,OAAO,IAAA,2BAAmB,EAAC,MAAM,IAAA,uBAAW,EAAC,IAAI,EAAE,MAAM,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACjG,CAAC,CAAC;AAHW,QAAA,OAAO,WAGlB;AAEF,kBAAe,EAAE,QAAQ,EAAR,gBAAQ,EAAE,IAAI,EAAJ,YAAI,EAAE,OAAO,EAAP,eAAO,EAAE,CAAC"}
@@ -1,4 +1,5 @@
1
1
  // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+ import { maybeFilter } from 'brand.dev-mcp/filtering';
2
3
  import { asTextContentResult } from 'brand.dev-mcp/tools/types';
3
4
  export const metadata = {
4
5
  resource: 'brand',
@@ -9,7 +10,7 @@ export const metadata = {
9
10
  };
10
11
  export const tool = {
11
12
  name: 'retrieve_by_ticker_brand',
12
- description: 'Retrieve brand data by stock ticker (e.g. AAPL, TSLA, etc.)',
13
+ description: "When using this tool, always use the `jq_filter` parameter to reduce the response size and improve performance.\n\nOnly omit if you're sure you don't need the data.\n\nRetrieve brand data by stock ticker (e.g. AAPL, TSLA, etc.)\n\n# Response Schema\n```json\n{\n type: 'object',\n properties: {\n brand: {\n type: 'object',\n description: 'Detailed brand information',\n properties: {\n address: {\n type: 'object',\n description: 'Physical address of the brand',\n properties: {\n city: {\n type: 'string',\n description: 'City name'\n },\n country: {\n type: 'string',\n description: 'Country name'\n },\n country_code: {\n type: 'string',\n description: 'Country code'\n },\n postal_code: {\n type: 'string',\n description: 'Postal or ZIP code'\n },\n state_code: {\n type: 'string',\n description: 'State or province code'\n },\n state_province: {\n type: 'string',\n description: 'State or province name'\n },\n street: {\n type: 'string',\n description: 'Street address'\n }\n }\n },\n backdrops: {\n type: 'array',\n description: 'An array of backdrop images for the brand',\n items: {\n type: 'object',\n properties: {\n colors: {\n type: 'array',\n description: 'Array of colors in the backdrop image',\n items: {\n type: 'object',\n properties: {\n hex: {\n type: 'string',\n description: 'Color in hexadecimal format'\n },\n name: {\n type: 'string',\n description: 'Name of the color'\n }\n }\n }\n },\n resolution: {\n type: 'object',\n description: 'Resolution of the backdrop image',\n properties: {\n aspect_ratio: {\n type: 'number',\n description: 'Aspect ratio of the image (width/height)'\n },\n height: {\n type: 'integer',\n description: 'Height of the image in pixels'\n },\n width: {\n type: 'integer',\n description: 'Width of the image in pixels'\n }\n }\n },\n url: {\n type: 'string',\n description: 'URL of the backdrop image'\n }\n }\n }\n },\n colors: {\n type: 'array',\n description: 'An array of brand colors',\n items: {\n type: 'object',\n properties: {\n hex: {\n type: 'string',\n description: 'Color in hexadecimal format'\n },\n name: {\n type: 'string',\n description: 'Name of the color'\n }\n }\n }\n },\n description: {\n type: 'string',\n description: 'A brief description of the brand'\n },\n domain: {\n type: 'string',\n description: 'The domain name of the brand'\n },\n email: {\n type: 'string',\n description: 'Company email address'\n },\n is_nsfw: {\n type: 'boolean',\n description: 'Indicates whether the brand content is not safe for work (NSFW)'\n },\n logos: {\n type: 'array',\n description: 'An array of logos associated with the brand',\n items: {\n type: 'object',\n properties: {\n colors: {\n type: 'array',\n description: 'Array of colors in the logo',\n items: {\n type: 'object',\n properties: {\n hex: {\n type: 'string',\n description: 'Color in hexadecimal format'\n },\n name: {\n type: 'string',\n description: 'Name of the color'\n }\n }\n }\n },\n mode: {\n type: 'string',\n description: 'Indicates when this logo is best used: \\'light\\' = best for light mode, \\'dark\\' = best for dark mode, \\'has_opaque_background\\' = can be used for either as image has its own background',\n enum: [ 'light',\n 'dark',\n 'has_opaque_background'\n ]\n },\n resolution: {\n type: 'object',\n description: 'Resolution of the logo image',\n properties: {\n aspect_ratio: {\n type: 'number',\n description: 'Aspect ratio of the image (width/height)'\n },\n height: {\n type: 'integer',\n description: 'Height of the image in pixels'\n },\n width: {\n type: 'integer',\n description: 'Width of the image in pixels'\n }\n }\n },\n type: {\n type: 'string',\n description: 'Type of the logo based on resolution (e.g., \\'icon\\', \\'logo\\')',\n enum: [ 'icon',\n 'logo'\n ]\n },\n url: {\n type: 'string',\n description: 'CDN hosted url of the logo (ready for display)'\n }\n }\n }\n },\n phone: {\n type: 'string',\n description: 'Company phone number'\n },\n slogan: {\n type: 'string',\n description: 'The brand\\'s slogan'\n },\n socials: {\n type: 'array',\n description: 'An array of social media links for the brand',\n items: {\n type: 'object',\n properties: {\n type: {\n type: 'string',\n description: 'Type of social media, e.g., \\'facebook\\', \\'twitter\\''\n },\n url: {\n type: 'string',\n description: 'URL of the social media page'\n }\n }\n }\n },\n stock: {\n type: 'object',\n description: 'Stock market information for this brand (will be null if not a publicly traded company)',\n properties: {\n exchange: {\n type: 'string',\n description: 'Stock exchange name'\n },\n ticker: {\n type: 'string',\n description: 'Stock ticker symbol'\n }\n }\n },\n title: {\n type: 'string',\n description: 'The title or name of the brand'\n }\n }\n },\n code: {\n type: 'integer',\n description: 'HTTP status code'\n },\n status: {\n type: 'string',\n description: 'Status of the response, e.g., \\'ok\\''\n }\n }\n}\n```",
13
14
  inputSchema: {
14
15
  type: 'object',
15
16
  properties: {
@@ -21,12 +22,21 @@ export const tool = {
21
22
  type: 'integer',
22
23
  description: 'Optional timeout in milliseconds for the request. If the request takes longer than this value, it will be aborted with a 408 status code. Maximum allowed value is 300000ms (5 minutes).',
23
24
  },
25
+ jq_filter: {
26
+ type: 'string',
27
+ title: 'jq Filter',
28
+ description: 'A jq filter to apply to the response to include certain fields. Consult the output schema in the tool description to see the fields that are available.\n\nFor example: to include only the `name` field in every object of a results array, you can provide ".results[].name".\n\nFor more information, see the [jq documentation](https://jqlang.org/manual/).',
29
+ },
24
30
  },
31
+ required: ['ticker'],
32
+ },
33
+ annotations: {
34
+ readOnlyHint: true,
25
35
  },
26
36
  };
27
37
  export const handler = async (client, args) => {
28
38
  const body = args;
29
- return asTextContentResult(await client.brand.retrieveByTicker(body));
39
+ return asTextContentResult(await maybeFilter(args, await client.brand.retrieveByTicker(body)));
30
40
  };
31
41
  export default { metadata, tool, handler };
32
42
  //# sourceMappingURL=retrieve-by-ticker-brand.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"retrieve-by-ticker-brand.mjs","sourceRoot":"","sources":["../../src/tools/brand/retrieve-by-ticker-brand.ts"],"names":[],"mappings":"AAAA,sFAAsF;OAE/E,EAAE,mBAAmB,EAAE,MAAM,2BAA2B;AAM/D,MAAM,CAAC,MAAM,QAAQ,GAAa;IAChC,QAAQ,EAAE,OAAO;IACjB,SAAS,EAAE,MAAM;IACjB,IAAI,EAAE,EAAE;IACR,UAAU,EAAE,KAAK;IACjB,QAAQ,EAAE,2BAA2B;CACtC,CAAC;AAEF,MAAM,CAAC,MAAM,IAAI,GAAS;IACxB,IAAI,EAAE,0BAA0B;IAChC,WAAW,EAAE,6DAA6D;IAC1E,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,wEAAwE;aACtF;YACD,SAAS,EAAE;gBACT,IAAI,EAAE,SAAS;gBACf,WAAW,EACT,0LAA0L;aAC7L;SACF;KACF;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,OAAO,GAAG,KAAK,EAAE,MAAgB,EAAE,IAAyC,EAAE,EAAE;IAC3F,MAAM,IAAI,GAAG,IAAW,CAAC;IACzB,OAAO,mBAAmB,CAAC,MAAM,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC;AACxE,CAAC,CAAC;AAEF,eAAe,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC"}
1
+ {"version":3,"file":"retrieve-by-ticker-brand.mjs","sourceRoot":"","sources":["../../src/tools/brand/retrieve-by-ticker-brand.ts"],"names":[],"mappings":"AAAA,sFAAsF;OAE/E,EAAE,WAAW,EAAE,MAAM,yBAAyB;OAC9C,EAAY,mBAAmB,EAAE,MAAM,2BAA2B;AAKzE,MAAM,CAAC,MAAM,QAAQ,GAAa;IAChC,QAAQ,EAAE,OAAO;IACjB,SAAS,EAAE,MAAM;IACjB,IAAI,EAAE,EAAE;IACR,UAAU,EAAE,KAAK;IACjB,QAAQ,EAAE,2BAA2B;CACtC,CAAC;AAEF,MAAM,CAAC,MAAM,IAAI,GAAS;IACxB,IAAI,EAAE,0BAA0B;IAChC,WAAW,EACT,4pPAA4pP;IAC9pP,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,wEAAwE;aACtF;YACD,SAAS,EAAE;gBACT,IAAI,EAAE,SAAS;gBACf,WAAW,EACT,0LAA0L;aAC7L;YACD,SAAS,EAAE;gBACT,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,WAAW;gBAClB,WAAW,EACT,kWAAkW;aACrW;SACF;QACD,QAAQ,EAAE,CAAC,QAAQ,CAAC;KACrB;IACD,WAAW,EAAE;QACX,YAAY,EAAE,IAAI;KACnB;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,OAAO,GAAG,KAAK,EAAE,MAAgB,EAAE,IAAyC,EAAE,EAAE;IAC3F,MAAM,IAAI,GAAG,IAAW,CAAC;IACzB,OAAO,mBAAmB,CAAC,MAAM,WAAW,CAAC,IAAI,EAAE,MAAM,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACjG,CAAC,CAAC;AAEF,eAAe,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC"}
@@ -1,5 +1,5 @@
1
+ import { Metadata } from 'brand.dev-mcp/tools/types';
1
2
  import { Tool } from '@modelcontextprotocol/sdk/types.js';
2
- import type { Metadata } from "..//index.mjs";
3
3
  import BrandDev from 'brand.dev';
4
4
  export declare const metadata: Metadata;
5
5
  export declare const tool: Tool;
@@ -1 +1 @@
1
- {"version":3,"file":"retrieve-naics-brand.d.mts","sourceRoot":"","sources":["../../src/tools/brand/retrieve-naics-brand.ts"],"names":[],"mappings":"OAIO,EAAE,IAAI,EAAE,MAAM,oCAAoC;OAClD,KAAK,EAAE,QAAQ,EAAE;OACjB,QAAQ,MAAM,WAAW;AAEhC,eAAO,MAAM,QAAQ,EAAE,QAMtB,CAAC;AAEF,eAAO,MAAM,IAAI,EAAE,IAkBlB,CAAC;AAEF,eAAO,MAAM,OAAO,GAAU,QAAQ,QAAQ,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,gEAGxF,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBAHoC,QAAQ,QAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS;;AAKzF,wBAA2C"}
1
+ {"version":3,"file":"retrieve-naics-brand.d.mts","sourceRoot":"","sources":["../../src/tools/brand/retrieve-naics-brand.ts"],"names":[],"mappings":"OAGO,EAAE,QAAQ,EAAuB,MAAM,2BAA2B;OAElE,EAAE,IAAI,EAAE,MAAM,oCAAoC;OAClD,QAAQ,MAAM,WAAW;AAEhC,eAAO,MAAM,QAAQ,EAAE,QAMtB,CAAC;AAEF,eAAO,MAAM,IAAI,EAAE,IA6BlB,CAAC;AAEF,eAAO,MAAM,OAAO,GAAU,QAAQ,QAAQ,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,gEAGxF,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBAHoC,QAAQ,QAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS;;AAKzF,wBAA2C"}
@@ -1,5 +1,5 @@
1
+ import { Metadata } from 'brand.dev-mcp/tools/types';
1
2
  import { Tool } from '@modelcontextprotocol/sdk/types.js';
2
- import type { Metadata } from "..//index.js";
3
3
  import BrandDev from 'brand.dev';
4
4
  export declare const metadata: Metadata;
5
5
  export declare const tool: Tool;
@@ -1 +1 @@
1
- {"version":3,"file":"retrieve-naics-brand.d.ts","sourceRoot":"","sources":["../../src/tools/brand/retrieve-naics-brand.ts"],"names":[],"mappings":"OAIO,EAAE,IAAI,EAAE,MAAM,oCAAoC;OAClD,KAAK,EAAE,QAAQ,EAAE;OACjB,QAAQ,MAAM,WAAW;AAEhC,eAAO,MAAM,QAAQ,EAAE,QAMtB,CAAC;AAEF,eAAO,MAAM,IAAI,EAAE,IAkBlB,CAAC;AAEF,eAAO,MAAM,OAAO,GAAU,QAAQ,QAAQ,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,gEAGxF,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBAHoC,QAAQ,QAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS;;AAKzF,wBAA2C"}
1
+ {"version":3,"file":"retrieve-naics-brand.d.ts","sourceRoot":"","sources":["../../src/tools/brand/retrieve-naics-brand.ts"],"names":[],"mappings":"OAGO,EAAE,QAAQ,EAAuB,MAAM,2BAA2B;OAElE,EAAE,IAAI,EAAE,MAAM,oCAAoC;OAClD,QAAQ,MAAM,WAAW;AAEhC,eAAO,MAAM,QAAQ,EAAE,QAMtB,CAAC;AAEF,eAAO,MAAM,IAAI,EAAE,IA6BlB,CAAC;AAEF,eAAO,MAAM,OAAO,GAAU,QAAQ,QAAQ,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,gEAGxF,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBAHoC,QAAQ,QAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS;;AAKzF,wBAA2C"}
@@ -2,6 +2,7 @@
2
2
  // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.handler = exports.tool = exports.metadata = void 0;
5
+ const filtering_1 = require("brand.dev-mcp/filtering");
5
6
  const types_1 = require("brand.dev-mcp/tools/types");
6
7
  exports.metadata = {
7
8
  resource: 'brand',
@@ -12,7 +13,7 @@ exports.metadata = {
12
13
  };
13
14
  exports.tool = {
14
15
  name: 'retrieve_naics_brand',
15
- description: 'Endpoint to classify any brand into a 2022 NAICS code.',
16
+ description: "When using this tool, always use the `jq_filter` parameter to reduce the response size and improve performance.\n\nOnly omit if you're sure you don't need the data.\n\nEndpoint to classify any brand into a 2022 NAICS code.\n\n# Response Schema\n```json\n{\n type: 'object',\n properties: {\n codes: {\n type: 'array',\n description: 'Array of NAICS codes and titles.',\n items: {\n type: 'object',\n properties: {\n code: {\n type: 'string',\n description: 'NAICS code'\n },\n title: {\n type: 'string',\n description: 'NAICS title'\n }\n }\n }\n },\n domain: {\n type: 'string',\n description: 'Domain found for the brand'\n },\n status: {\n type: 'string',\n description: 'Status of the response, e.g., \\'ok\\''\n },\n type: {\n type: 'string',\n description: 'Industry classification type, for naics api it will be `naics`'\n }\n }\n}\n```",
16
17
  inputSchema: {
17
18
  type: 'object',
18
19
  properties: {
@@ -24,12 +25,21 @@ exports.tool = {
24
25
  type: 'integer',
25
26
  description: 'Optional timeout in milliseconds for the request. If the request takes longer than this value, it will be aborted with a 408 status code. Maximum allowed value is 300000ms (5 minutes).',
26
27
  },
28
+ jq_filter: {
29
+ type: 'string',
30
+ title: 'jq Filter',
31
+ description: 'A jq filter to apply to the response to include certain fields. Consult the output schema in the tool description to see the fields that are available.\n\nFor example: to include only the `name` field in every object of a results array, you can provide ".results[].name".\n\nFor more information, see the [jq documentation](https://jqlang.org/manual/).',
32
+ },
27
33
  },
34
+ required: ['input'],
35
+ },
36
+ annotations: {
37
+ readOnlyHint: true,
28
38
  },
29
39
  };
30
40
  const handler = async (client, args) => {
31
41
  const body = args;
32
- return (0, types_1.asTextContentResult)(await client.brand.retrieveNaics(body));
42
+ return (0, types_1.asTextContentResult)(await (0, filtering_1.maybeFilter)(args, await client.brand.retrieveNaics(body)));
33
43
  };
34
44
  exports.handler = handler;
35
45
  exports.default = { metadata: exports.metadata, tool: exports.tool, handler: exports.handler };
@@ -1 +1 @@
1
- {"version":3,"file":"retrieve-naics-brand.js","sourceRoot":"","sources":["../../src/tools/brand/retrieve-naics-brand.ts"],"names":[],"mappings":";AAAA,sFAAsF;;;AAEtF,qDAAgE;AAMnD,QAAA,QAAQ,GAAa;IAChC,QAAQ,EAAE,OAAO;IACjB,SAAS,EAAE,MAAM;IACjB,IAAI,EAAE,EAAE;IACR,UAAU,EAAE,KAAK;IACjB,QAAQ,EAAE,cAAc;CACzB,CAAC;AAEW,QAAA,IAAI,GAAS;IACxB,IAAI,EAAE,sBAAsB;IAC5B,WAAW,EAAE,wDAAwD;IACrE,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,WAAW,EACT,mMAAmM;aACtM;YACD,SAAS,EAAE;gBACT,IAAI,EAAE,SAAS;gBACf,WAAW,EACT,0LAA0L;aAC7L;SACF;KACF;CACF,CAAC;AAEK,MAAM,OAAO,GAAG,KAAK,EAAE,MAAgB,EAAE,IAAyC,EAAE,EAAE;IAC3F,MAAM,IAAI,GAAG,IAAW,CAAC;IACzB,OAAO,IAAA,2BAAmB,EAAC,MAAM,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC;AACrE,CAAC,CAAC;AAHW,QAAA,OAAO,WAGlB;AAEF,kBAAe,EAAE,QAAQ,EAAR,gBAAQ,EAAE,IAAI,EAAJ,YAAI,EAAE,OAAO,EAAP,eAAO,EAAE,CAAC"}
1
+ {"version":3,"file":"retrieve-naics-brand.js","sourceRoot":"","sources":["../../src/tools/brand/retrieve-naics-brand.ts"],"names":[],"mappings":";AAAA,sFAAsF;;;AAEtF,uDAAsD;AACtD,qDAA0E;AAK7D,QAAA,QAAQ,GAAa;IAChC,QAAQ,EAAE,OAAO;IACjB,SAAS,EAAE,MAAM;IACjB,IAAI,EAAE,EAAE;IACR,UAAU,EAAE,KAAK;IACjB,QAAQ,EAAE,cAAc;CACzB,CAAC;AAEW,QAAA,IAAI,GAAS;IACxB,IAAI,EAAE,sBAAsB;IAC5B,WAAW,EACT,+/BAA+/B;IACjgC,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,WAAW,EACT,mMAAmM;aACtM;YACD,SAAS,EAAE;gBACT,IAAI,EAAE,SAAS;gBACf,WAAW,EACT,0LAA0L;aAC7L;YACD,SAAS,EAAE;gBACT,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,WAAW;gBAClB,WAAW,EACT,kWAAkW;aACrW;SACF;QACD,QAAQ,EAAE,CAAC,OAAO,CAAC;KACpB;IACD,WAAW,EAAE;QACX,YAAY,EAAE,IAAI;KACnB;CACF,CAAC;AAEK,MAAM,OAAO,GAAG,KAAK,EAAE,MAAgB,EAAE,IAAyC,EAAE,EAAE;IAC3F,MAAM,IAAI,GAAG,IAAW,CAAC;IACzB,OAAO,IAAA,2BAAmB,EAAC,MAAM,IAAA,uBAAW,EAAC,IAAI,EAAE,MAAM,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAC9F,CAAC,CAAC;AAHW,QAAA,OAAO,WAGlB;AAEF,kBAAe,EAAE,QAAQ,EAAR,gBAAQ,EAAE,IAAI,EAAJ,YAAI,EAAE,OAAO,EAAP,eAAO,EAAE,CAAC"}
@@ -1,4 +1,5 @@
1
1
  // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+ import { maybeFilter } from 'brand.dev-mcp/filtering';
2
3
  import { asTextContentResult } from 'brand.dev-mcp/tools/types';
3
4
  export const metadata = {
4
5
  resource: 'brand',
@@ -9,7 +10,7 @@ export const metadata = {
9
10
  };
10
11
  export const tool = {
11
12
  name: 'retrieve_naics_brand',
12
- description: 'Endpoint to classify any brand into a 2022 NAICS code.',
13
+ description: "When using this tool, always use the `jq_filter` parameter to reduce the response size and improve performance.\n\nOnly omit if you're sure you don't need the data.\n\nEndpoint to classify any brand into a 2022 NAICS code.\n\n# Response Schema\n```json\n{\n type: 'object',\n properties: {\n codes: {\n type: 'array',\n description: 'Array of NAICS codes and titles.',\n items: {\n type: 'object',\n properties: {\n code: {\n type: 'string',\n description: 'NAICS code'\n },\n title: {\n type: 'string',\n description: 'NAICS title'\n }\n }\n }\n },\n domain: {\n type: 'string',\n description: 'Domain found for the brand'\n },\n status: {\n type: 'string',\n description: 'Status of the response, e.g., \\'ok\\''\n },\n type: {\n type: 'string',\n description: 'Industry classification type, for naics api it will be `naics`'\n }\n }\n}\n```",
13
14
  inputSchema: {
14
15
  type: 'object',
15
16
  properties: {
@@ -21,12 +22,21 @@ export const tool = {
21
22
  type: 'integer',
22
23
  description: 'Optional timeout in milliseconds for the request. If the request takes longer than this value, it will be aborted with a 408 status code. Maximum allowed value is 300000ms (5 minutes).',
23
24
  },
25
+ jq_filter: {
26
+ type: 'string',
27
+ title: 'jq Filter',
28
+ description: 'A jq filter to apply to the response to include certain fields. Consult the output schema in the tool description to see the fields that are available.\n\nFor example: to include only the `name` field in every object of a results array, you can provide ".results[].name".\n\nFor more information, see the [jq documentation](https://jqlang.org/manual/).',
29
+ },
24
30
  },
31
+ required: ['input'],
32
+ },
33
+ annotations: {
34
+ readOnlyHint: true,
25
35
  },
26
36
  };
27
37
  export const handler = async (client, args) => {
28
38
  const body = args;
29
- return asTextContentResult(await client.brand.retrieveNaics(body));
39
+ return asTextContentResult(await maybeFilter(args, await client.brand.retrieveNaics(body)));
30
40
  };
31
41
  export default { metadata, tool, handler };
32
42
  //# sourceMappingURL=retrieve-naics-brand.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"retrieve-naics-brand.mjs","sourceRoot":"","sources":["../../src/tools/brand/retrieve-naics-brand.ts"],"names":[],"mappings":"AAAA,sFAAsF;OAE/E,EAAE,mBAAmB,EAAE,MAAM,2BAA2B;AAM/D,MAAM,CAAC,MAAM,QAAQ,GAAa;IAChC,QAAQ,EAAE,OAAO;IACjB,SAAS,EAAE,MAAM;IACjB,IAAI,EAAE,EAAE;IACR,UAAU,EAAE,KAAK;IACjB,QAAQ,EAAE,cAAc;CACzB,CAAC;AAEF,MAAM,CAAC,MAAM,IAAI,GAAS;IACxB,IAAI,EAAE,sBAAsB;IAC5B,WAAW,EAAE,wDAAwD;IACrE,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,WAAW,EACT,mMAAmM;aACtM;YACD,SAAS,EAAE;gBACT,IAAI,EAAE,SAAS;gBACf,WAAW,EACT,0LAA0L;aAC7L;SACF;KACF;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,OAAO,GAAG,KAAK,EAAE,MAAgB,EAAE,IAAyC,EAAE,EAAE;IAC3F,MAAM,IAAI,GAAG,IAAW,CAAC;IACzB,OAAO,mBAAmB,CAAC,MAAM,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC;AACrE,CAAC,CAAC;AAEF,eAAe,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC"}
1
+ {"version":3,"file":"retrieve-naics-brand.mjs","sourceRoot":"","sources":["../../src/tools/brand/retrieve-naics-brand.ts"],"names":[],"mappings":"AAAA,sFAAsF;OAE/E,EAAE,WAAW,EAAE,MAAM,yBAAyB;OAC9C,EAAY,mBAAmB,EAAE,MAAM,2BAA2B;AAKzE,MAAM,CAAC,MAAM,QAAQ,GAAa;IAChC,QAAQ,EAAE,OAAO;IACjB,SAAS,EAAE,MAAM;IACjB,IAAI,EAAE,EAAE;IACR,UAAU,EAAE,KAAK;IACjB,QAAQ,EAAE,cAAc;CACzB,CAAC;AAEF,MAAM,CAAC,MAAM,IAAI,GAAS;IACxB,IAAI,EAAE,sBAAsB;IAC5B,WAAW,EACT,+/BAA+/B;IACjgC,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,WAAW,EACT,mMAAmM;aACtM;YACD,SAAS,EAAE;gBACT,IAAI,EAAE,SAAS;gBACf,WAAW,EACT,0LAA0L;aAC7L;YACD,SAAS,EAAE;gBACT,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,WAAW;gBAClB,WAAW,EACT,kWAAkW;aACrW;SACF;QACD,QAAQ,EAAE,CAAC,OAAO,CAAC;KACpB;IACD,WAAW,EAAE;QACX,YAAY,EAAE,IAAI;KACnB;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,OAAO,GAAG,KAAK,EAAE,MAAgB,EAAE,IAAyC,EAAE,EAAE;IAC3F,MAAM,IAAI,GAAG,IAAW,CAAC;IACzB,OAAO,mBAAmB,CAAC,MAAM,WAAW,CAAC,IAAI,EAAE,MAAM,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAC9F,CAAC,CAAC;AAEF,eAAe,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC"}
@@ -1,5 +1,5 @@
1
+ import { Metadata } from 'brand.dev-mcp/tools/types';
1
2
  import { Tool } from '@modelcontextprotocol/sdk/types.js';
2
- import type { Metadata } from "..//index.mjs";
3
3
  import BrandDev from 'brand.dev';
4
4
  export declare const metadata: Metadata;
5
5
  export declare const tool: Tool;
@@ -1 +1 @@
1
- {"version":3,"file":"retrieve-simplified-brand.d.mts","sourceRoot":"","sources":["../../src/tools/brand/retrieve-simplified-brand.ts"],"names":[],"mappings":"OAIO,EAAE,IAAI,EAAE,MAAM,oCAAoC;OAClD,KAAK,EAAE,QAAQ,EAAE;OACjB,QAAQ,MAAM,WAAW;AAEhC,eAAO,MAAM,QAAQ,EAAE,QAMtB,CAAC;AAEF,eAAO,MAAM,IAAI,EAAE,IAkBlB,CAAC;AAEF,eAAO,MAAM,OAAO,GAAU,QAAQ,QAAQ,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,gEAGxF,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBAHoC,QAAQ,QAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS;;AAKzF,wBAA2C"}
1
+ {"version":3,"file":"retrieve-simplified-brand.d.mts","sourceRoot":"","sources":["../../src/tools/brand/retrieve-simplified-brand.ts"],"names":[],"mappings":"OAGO,EAAE,QAAQ,EAAuB,MAAM,2BAA2B;OAElE,EAAE,IAAI,EAAE,MAAM,oCAAoC;OAClD,QAAQ,MAAM,WAAW;AAEhC,eAAO,MAAM,QAAQ,EAAE,QAMtB,CAAC;AAEF,eAAO,MAAM,IAAI,EAAE,IA4BlB,CAAC;AAEF,eAAO,MAAM,OAAO,GAAU,QAAQ,QAAQ,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,gEAGxF,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBAHoC,QAAQ,QAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS;;AAKzF,wBAA2C"}
@@ -1,5 +1,5 @@
1
+ import { Metadata } from 'brand.dev-mcp/tools/types';
1
2
  import { Tool } from '@modelcontextprotocol/sdk/types.js';
2
- import type { Metadata } from "..//index.js";
3
3
  import BrandDev from 'brand.dev';
4
4
  export declare const metadata: Metadata;
5
5
  export declare const tool: Tool;
@@ -1 +1 @@
1
- {"version":3,"file":"retrieve-simplified-brand.d.ts","sourceRoot":"","sources":["../../src/tools/brand/retrieve-simplified-brand.ts"],"names":[],"mappings":"OAIO,EAAE,IAAI,EAAE,MAAM,oCAAoC;OAClD,KAAK,EAAE,QAAQ,EAAE;OACjB,QAAQ,MAAM,WAAW;AAEhC,eAAO,MAAM,QAAQ,EAAE,QAMtB,CAAC;AAEF,eAAO,MAAM,IAAI,EAAE,IAkBlB,CAAC;AAEF,eAAO,MAAM,OAAO,GAAU,QAAQ,QAAQ,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,gEAGxF,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBAHoC,QAAQ,QAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS;;AAKzF,wBAA2C"}
1
+ {"version":3,"file":"retrieve-simplified-brand.d.ts","sourceRoot":"","sources":["../../src/tools/brand/retrieve-simplified-brand.ts"],"names":[],"mappings":"OAGO,EAAE,QAAQ,EAAuB,MAAM,2BAA2B;OAElE,EAAE,IAAI,EAAE,MAAM,oCAAoC;OAClD,QAAQ,MAAM,WAAW;AAEhC,eAAO,MAAM,QAAQ,EAAE,QAMtB,CAAC;AAEF,eAAO,MAAM,IAAI,EAAE,IA4BlB,CAAC;AAEF,eAAO,MAAM,OAAO,GAAU,QAAQ,QAAQ,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,gEAGxF,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;sBAHoC,QAAQ,QAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS;;AAKzF,wBAA2C"}
@@ -2,6 +2,7 @@
2
2
  // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
4
  exports.handler = exports.tool = exports.metadata = void 0;
5
+ const filtering_1 = require("brand.dev-mcp/filtering");
5
6
  const types_1 = require("brand.dev-mcp/tools/types");
6
7
  exports.metadata = {
7
8
  resource: 'brand',
@@ -12,7 +13,7 @@ exports.metadata = {
12
13
  };
13
14
  exports.tool = {
14
15
  name: 'retrieve_simplified_brand',
15
- description: 'Returns a simplified version of brand data containing only essential information: domain, title, colors, logos, and backdrops. This endpoint is optimized for faster responses and reduced data transfer.',
16
+ description: "When using this tool, always use the `jq_filter` parameter to reduce the response size and improve performance.\n\nOnly omit if you're sure you don't need the data.\n\nReturns a simplified version of brand data containing only essential information: domain, title, colors, logos, and backdrops. This endpoint is optimized for faster responses and reduced data transfer.\n\n# Response Schema\n```json\n{\n type: 'object',\n properties: {\n brand: {\n type: 'object',\n description: 'Simplified brand information',\n properties: {\n backdrops: {\n type: 'array',\n description: 'An array of backdrop images for the brand',\n items: {\n type: 'object',\n properties: {\n colors: {\n type: 'array',\n description: 'Array of colors in the backdrop image',\n items: {\n type: 'object',\n properties: {\n hex: {\n type: 'string',\n description: 'Color in hexadecimal format'\n },\n name: {\n type: 'string',\n description: 'Name of the color'\n }\n }\n }\n },\n resolution: {\n type: 'object',\n description: 'Resolution of the backdrop image',\n properties: {\n aspect_ratio: {\n type: 'number',\n description: 'Aspect ratio of the image (width/height)'\n },\n height: {\n type: 'integer',\n description: 'Height of the image in pixels'\n },\n width: {\n type: 'integer',\n description: 'Width of the image in pixels'\n }\n }\n },\n url: {\n type: 'string',\n description: 'URL of the backdrop image'\n }\n }\n }\n },\n colors: {\n type: 'array',\n description: 'An array of brand colors',\n items: {\n type: 'object',\n properties: {\n hex: {\n type: 'string',\n description: 'Color in hexadecimal format'\n },\n name: {\n type: 'string',\n description: 'Name of the color'\n }\n }\n }\n },\n domain: {\n type: 'string',\n description: 'The domain name of the brand'\n },\n logos: {\n type: 'array',\n description: 'An array of logos associated with the brand',\n items: {\n type: 'object',\n properties: {\n colors: {\n type: 'array',\n description: 'Array of colors in the logo',\n items: {\n type: 'object',\n properties: {\n hex: {\n type: 'string',\n description: 'Color in hexadecimal format'\n },\n name: {\n type: 'string',\n description: 'Name of the color'\n }\n }\n }\n },\n mode: {\n type: 'string',\n description: 'Indicates when this logo is best used: \\'light\\' = best for light mode, \\'dark\\' = best for dark mode, \\'has_opaque_background\\' = can be used for either as image has its own background',\n enum: [ 'light',\n 'dark',\n 'has_opaque_background'\n ]\n },\n resolution: {\n type: 'object',\n description: 'Resolution of the logo image',\n properties: {\n aspect_ratio: {\n type: 'number',\n description: 'Aspect ratio of the image (width/height)'\n },\n height: {\n type: 'integer',\n description: 'Height of the image in pixels'\n },\n width: {\n type: 'integer',\n description: 'Width of the image in pixels'\n }\n }\n },\n type: {\n type: 'string',\n description: 'Type of the logo based on resolution (e.g., \\'icon\\', \\'logo\\')',\n enum: [ 'icon',\n 'logo'\n ]\n },\n url: {\n type: 'string',\n description: 'CDN hosted url of the logo (ready for display)'\n }\n }\n }\n },\n title: {\n type: 'string',\n description: 'The title or name of the brand'\n }\n }\n },\n code: {\n type: 'integer',\n description: 'HTTP status code of the response'\n },\n status: {\n type: 'string',\n description: 'Status of the response, e.g., \\'ok\\''\n }\n }\n}\n```",
16
17
  inputSchema: {
17
18
  type: 'object',
18
19
  properties: {
@@ -24,12 +25,21 @@ exports.tool = {
24
25
  type: 'integer',
25
26
  description: 'Optional timeout in milliseconds for the request. If the request takes longer than this value, it will be aborted with a 408 status code. Maximum allowed value is 300000ms (5 minutes).',
26
27
  },
28
+ jq_filter: {
29
+ type: 'string',
30
+ title: 'jq Filter',
31
+ description: 'A jq filter to apply to the response to include certain fields. Consult the output schema in the tool description to see the fields that are available.\n\nFor example: to include only the `name` field in every object of a results array, you can provide ".results[].name".\n\nFor more information, see the [jq documentation](https://jqlang.org/manual/).',
32
+ },
27
33
  },
34
+ required: ['domain'],
35
+ },
36
+ annotations: {
37
+ readOnlyHint: true,
28
38
  },
29
39
  };
30
40
  const handler = async (client, args) => {
31
41
  const body = args;
32
- return (0, types_1.asTextContentResult)(await client.brand.retrieveSimplified(body));
42
+ return (0, types_1.asTextContentResult)(await (0, filtering_1.maybeFilter)(args, await client.brand.retrieveSimplified(body)));
33
43
  };
34
44
  exports.handler = handler;
35
45
  exports.default = { metadata: exports.metadata, tool: exports.tool, handler: exports.handler };
@@ -1 +1 @@
1
- {"version":3,"file":"retrieve-simplified-brand.js","sourceRoot":"","sources":["../../src/tools/brand/retrieve-simplified-brand.ts"],"names":[],"mappings":";AAAA,sFAAsF;;;AAEtF,qDAAgE;AAMnD,QAAA,QAAQ,GAAa;IAChC,QAAQ,EAAE,OAAO;IACjB,SAAS,EAAE,MAAM;IACjB,IAAI,EAAE,EAAE;IACR,UAAU,EAAE,KAAK;IACjB,QAAQ,EAAE,4BAA4B;CACvC,CAAC;AAEW,QAAA,IAAI,GAAS;IACxB,IAAI,EAAE,2BAA2B;IACjC,WAAW,EACT,2MAA2M;IAC7M,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,mDAAmD;aACjE;YACD,SAAS,EAAE;gBACT,IAAI,EAAE,SAAS;gBACf,WAAW,EACT,0LAA0L;aAC7L;SACF;KACF;CACF,CAAC;AAEK,MAAM,OAAO,GAAG,KAAK,EAAE,MAAgB,EAAE,IAAyC,EAAE,EAAE;IAC3F,MAAM,IAAI,GAAG,IAAW,CAAC;IACzB,OAAO,IAAA,2BAAmB,EAAC,MAAM,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC;AAC1E,CAAC,CAAC;AAHW,QAAA,OAAO,WAGlB;AAEF,kBAAe,EAAE,QAAQ,EAAR,gBAAQ,EAAE,IAAI,EAAJ,YAAI,EAAE,OAAO,EAAP,eAAO,EAAE,CAAC"}
1
+ {"version":3,"file":"retrieve-simplified-brand.js","sourceRoot":"","sources":["../../src/tools/brand/retrieve-simplified-brand.ts"],"names":[],"mappings":";AAAA,sFAAsF;;;AAEtF,uDAAsD;AACtD,qDAA0E;AAK7D,QAAA,QAAQ,GAAa;IAChC,QAAQ,EAAE,OAAO;IACjB,SAAS,EAAE,MAAM;IACjB,IAAI,EAAE,EAAE;IACR,UAAU,EAAE,KAAK;IACjB,QAAQ,EAAE,4BAA4B;CACvC,CAAC;AAEW,QAAA,IAAI,GAAS;IACxB,IAAI,EAAE,2BAA2B;IACjC,WAAW,EACT,6zKAA6zK;IAC/zK,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,mDAAmD;aACjE;YACD,SAAS,EAAE;gBACT,IAAI,EAAE,SAAS;gBACf,WAAW,EACT,0LAA0L;aAC7L;YACD,SAAS,EAAE;gBACT,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,WAAW;gBAClB,WAAW,EACT,kWAAkW;aACrW;SACF;QACD,QAAQ,EAAE,CAAC,QAAQ,CAAC;KACrB;IACD,WAAW,EAAE;QACX,YAAY,EAAE,IAAI;KACnB;CACF,CAAC;AAEK,MAAM,OAAO,GAAG,KAAK,EAAE,MAAgB,EAAE,IAAyC,EAAE,EAAE;IAC3F,MAAM,IAAI,GAAG,IAAW,CAAC;IACzB,OAAO,IAAA,2BAAmB,EAAC,MAAM,IAAA,uBAAW,EAAC,IAAI,EAAE,MAAM,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACnG,CAAC,CAAC;AAHW,QAAA,OAAO,WAGlB;AAEF,kBAAe,EAAE,QAAQ,EAAR,gBAAQ,EAAE,IAAI,EAAJ,YAAI,EAAE,OAAO,EAAP,eAAO,EAAE,CAAC"}