Skip to main content
Glama

get_values

Retrieve available ethical and ownership values to filter origin-verified products and brands. Access canonical tokens and display labels for sustainability, vegan, and cruelty-free criteria.

Instructions

List all supported ethical/ownership values that can be used to filter products and brands. Returns canonical value tokens with display labels.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Implementation Reference

  • Main handler function that executes the get_values tool logic. Maps CANONICAL_VALUES to labeled tokens and returns them with usage instructions.
    export function handleGetValues() {
      return {
        values: CANONICAL_VALUES.map(v => ({
          token: v,
          label: VALUE_LABELS[v] || v
        })),
        total: CANONICAL_VALUES.length,
        usage: 'Pass the "token" values in the "values" array when calling search_products or search_brands.'
      };
    }
  • Tool schema definition (name, description, inputSchema) for get_values. Input schema accepts an empty object as this tool requires no parameters.
    export const getValuesTool = {
      name: 'get_values',
      description: 'List all supported ethical/ownership values that can be used to filter products and brands. Returns canonical value tokens with display labels.',
      inputSchema: {
        type: 'object',
        properties: {}
      }
    };
  • src/index.js:59-68 (registration)
    Tool registration in the MCP server. getValuesTool is added to the tools array returned by ListToolsRequestSchema handler.
    server.setRequestHandler(ListToolsRequestSchema, async () => ({
      tools: [
        searchProductsTool,
        searchBrandsTool,
        refineSearchTool,
        getValuesTool,
        getCategoriesTool,
        getCountriesTool
      ]
    }));
  • src/index.js:90-92 (registration)
    Tool handler registration in the CallToolRequestSchema switch statement. Dispatches 'get_values' calls to handleGetValues().
    case 'get_values':
      result = handleGetValues();
      break;
  • Data constants and label mappings used by the get_values handler. CANONICAL_VALUES defines the valid tokens and VALUE_LABELS provides human-readable display labels.
    export const CANONICAL_VALUES = [
      'women-owned', 'black-owned', 'indigenous-owned', 'latino-owned', 'aapi-owned',
      'veteran-owned', 'family-owned', 'lgbtq-owned', 'minority-owned',
      'b-corp', 'organic', 'sustainable', 'vegan', 'non-gmo', 'fair-trade', 'social-impact',
      'fragrance-free', 'plastic-free', 'cruelty-free', 'non-toxic', 'gluten-free'
    ];
    
    export const CANONICAL_COUNTRIES = [
      'Canada', 'USA'
    ];
    
    export const CANONICAL_CATEGORIES = [
      'Beauty', 'Personal Care', 'Baby', 'Health & Wellness', 'Supplements',
      'Home & Kitchen', 'Cleaning', 'Food & Grocery', 'Beverages', 'Pet Care',
      'Fashion', 'Accessories', 'Electronics', 'Office', 'Outdoors', 'Sports', 'Toys'
    ];
    
    export const CANONICAL_CLASSIFICATIONS = [
      'fully-canadian', 'canadian-manufactured', 'canadian-operations'
    ];
    
    export const VALUE_LABELS = {
      'women-owned': 'Women-Owned',
      'black-owned': 'Black-Owned',
      'indigenous-owned': 'Indigenous-Owned',
      'latino-owned': 'Latino-Owned',
      'aapi-owned': 'AAPI-Owned',
      'veteran-owned': 'Veteran-Owned',
      'family-owned': 'Family-Owned',
      'lgbtq-owned': 'LGBTQ+-Owned',
      'minority-owned': 'Minority-Owned',
      'b-corp': 'B Corp Certified',
      'organic': 'Organic',
      'sustainable': 'Sustainable',
      'vegan': 'Vegan',
      'non-gmo': 'Non-GMO',
      'fair-trade': 'Fair Trade',
      'social-impact': 'Social Impact',
      'fragrance-free': 'Fragrance-Free',
      'plastic-free': 'Plastic-Free',
      'cruelty-free': 'Cruelty-Free',
      'non-toxic': 'Non-Toxic',
      'gluten-free': 'Gluten-Free'
    };
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. It discloses return structure ('canonical value tokens with display labels') which compensates for missing output_schema, but omits other behavioral traits like caching, pagination, or rate limiting.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two efficient sentences with zero waste: first establishes purpose, second explains return format. Perfectly front-loaded with no redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema exists, the description adequately explains return values ('canonical value tokens with display labels'). Covers essential context for a simple enumeration tool, though explicit mention of relationship to search_products could strengthen completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Input schema has 0 parameters, establishing baseline 4 per scoring rules. Description appropriately requires no additional parameter explanation since the tool takes no arguments.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses specific verb 'List' with clear resource 'ethical/ownership values' and distinguishes from siblings (get_categories, get_countries) by specifying the exact domain of values returned.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides implied usage context ('can be used to filter products and brands') suggesting when these values are relevant, but lacks explicit guidance on when to call this versus siblings or prerequisites for search operations.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/chhavimishra/originselect-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server