Skip to main content
Glama

Emojihub

Get By Category

get_by_category
Read-onlyIdempotent

Search emojis by category (e.g., "smileys-and-people", "food-and-drink", "travel-and-places", "symbols"). Returns matching emojis with names and groups.

Input Schema

NameRequiredDescriptionDefault
categoryYesThe emoji category slug, e.g. "smileys-and-people", "animals-and-nature", "food-and-drink".

Output Schema

NameRequiredDescriptionDefault
countYesNumber of emojis in the category
emojisYesArray of emojis in the category
categoryYesThe requested emoji category

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "properties": {
      +    "category": {
      +      "description": "The requested emoji category",
      +      "type": "string"
      +    },
      +    "count": {
      +      "description": "Number of emojis in the category",
      +      "type": "integer"
      +    },
      +    "emojis": {
      +      "description": "Array of emojis in the category",
      +      "items": {
      +        "properties": {
      +          "category": {
      +            "description": "The emoji category",
      +            "type": "string"
      +          },
      +          "group": {
      +            "description": "The emoji group",
      +            "type": "string"
      +          },
      +          "htmlCode": {
      +            "description": "HTML code representations of the emoji",
      +            "items": {
      +              "type": "string"
      +            },
      +            "type": "array"
      +          },
      +          "name": {
      +            "description": "The emoji name",
      +            "type": "string"
      +          },
      +          "unicode": {
      +            "description": "Unicode representations of the emoji",
      +            "items": {
      +              "type": "string"
      +            },
      +            "type": "array"
      +          }
      +        },
      +        "required": [
      +          "name",
      +          "category",
      +          "group",
      +          "htmlCode",
      +          "unicode"
      +        ],
      +        "type": "object"
      +      },
      +      "type": "array"
      +    }
      +  },
      +  "required": [
      +    "category",
      +    "count",
      +    "emojis"
      +  ],
      +  "type": "object"
      +}
  2. Changed1 schema field changed
    • addedInput schema / examples
      Added value: +[
      +  {
      +    "category": "smileys-and-people"
      +  },
      +  {
      +    "category": "food-and-drink"
      +  }
      +]
  3. First observed

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, covering the safety profile. The description adds the return behavior: 'Returns matching emojis with names and groups,' which is useful context beyond the annotations. It does not contradict any annotations, and the additional information is relevant and non-redundant.

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?

The description is a single, concise sentence that front-loads the action and provides examples inline. There is no fluff or repetition; every word contributes to the tool's purpose and usage. It is perfectly sized for the tool's simplicity.

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 the simple nature of the tool (one parameter, output schema present, detailed annotations), the description is sufficiently complete. It states the return format and provides example inputs. It does not explain pagination or sorting, but such details are not critical for a simple search-by-category operation. The combination of annotations, schema, and description covers the essential context.

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

Parameters3/5

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

The input schema already provides 100% coverage for the 'category' parameter, including a descriptive text and examples. The description adds a few more example categories but does not fundamentally expand parameter understanding beyond what the schema already provides. With high schema coverage, the baseline of 3 is appropriate.

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 clearly states the tool's purpose: searching emojis by category. It uses a specific verb ('Search') and resource ('emojis'), and provides concrete examples of valid categories, which disambiguates it from sibling tools like get_by_group or random_emoji. The scope is well-defined.

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?

The description implies usage for retrieving emojis filtered by a category, but it does not explicitly state when to use this tool versus alternatives like get_by_group or random_emoji. There are no exclusion criteria or alternative recommendations, leaving the decision to the agent's inference.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.