Skip to content
Eden Engine

Instagram Hashtag Top Posts with Likes, Captions and Authors (First Page)

omnial/instagram-hashtag-top-posts

Given an Instagram hashtag (without the #), returns the first page of posts from the hashtag's top feed (30 in testing), with the number of posts returned. For each post: its ID and shortcode, whether it is a photo, video or album, when it was posted, its comment count, its like count (null when the owner hides likes) and whether like and view counts are hidden, its caption with links removed, the caption's hashtags, and the posting account's ID, username, display name and verified flag.

activeper callv1

Price

Up to $0.0041 per call; you pay what the call used

The price shown is the price you pay. No monthly minimum. Top-ups start at $5.

Data source

Instagram

Data from Instagram.

Use it

Five steps: search, inspect, learn, run, settle. No per-tool setup; your agent reaches this tool through the meta-tools it already has.

agent
// 1. search: find the tool
omnial_search({ query: "what you need" })

// 2. inspect: price and input schema
omnial_inspect({ tool: "omnial/instagram-hashtag-top-posts" })

// 3. learn: read the usage guide at runtime
omnial_learn({ tool: "omnial/instagram-hashtag-top-posts" })

// 4. run: price the exact call first, then run it
omnial_execute({ tool: "omnial/instagram-hashtag-top-posts", input: { /* see input_schema */ }, dry_run: true })
omnial_execute({ tool: "omnial/instagram-hashtag-top-posts", input: { /* ... */ } })

// 5. settle: the call is charged when it finishes, nothing to do

Not connected yet? Point your MCP client at https://mcp.eden-engine.com/mcp, then copy a config for your client.

Pricing

Every charge this tool can incur.

ChargePrice
Per call
$0.0041
Updated
Oct 15, 2026

Input and output schemas

Input schema
input_schema.json
{
  "type": "object",
  "required": [
    "keyword"
  ],
  "properties": {
    "keyword": {
      "type": "string",
      "minLength": 1,
      "description": "The hashtag to look up, as a word without the leading # sign."
    }
  },
  "additionalProperties": false
}
Output schema
output_schema.json
{
  "type": "object",
  "properties": {
    "data": {
      "type": "object",
      "properties": {
        "count": {
          "type": "number",
          "description": "How many posts this page holds."
        },
        "items": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "description": "The post's media ID."
              },
              "code": {
                "type": "string",
                "description": "The post's shortcode, used in its own page address."
              },
              "user": {
                "type": "object",
                "properties": {
                  "id": {
                    "type": "string",
                    "description": "The account's numeric ID."
                  },
                  "username": {
                    "type": "string",
                    "description": "The account's handle."
                  },
                  "full_name": {
                    "type": "string",
                    "description": "The account's display name."
                  },
                  "is_verified": {
                    "type": "boolean",
                    "description": "Whether the account carries the verified badge."
                  }
                },
                "description": "The account that posted it."
              },
              "taken_at": {
                "type": "string",
                "description": "When the post was published, as an ISO date-time (UTC)."
              },
              "like_count": {
                "type": [
                  "number",
                  "null"
                ],
                "description": "Total likes on the post; null when the owner hides like counts."
              },
              "caption_text": {
                "type": [
                  "string",
                  "null"
                ],
                "description": "The caption with links and markup removed; null if it has none."
              },
              "media_format": {
                "type": "string",
                "description": "The kind of post: image, video or album."
              },
              "comment_count": {
                "type": "number",
                "description": "Total comments on the post."
              },
              "caption_hashtags": {
                "type": "array",
                "items": {
                  "type": "string"
                },
                "description": "The hashtags in the caption, each with its # sign."
              },
              "like_and_view_counts_disabled": {
                "type": "boolean",
                "description": "True when the owner has hidden the post's like and view counts."
              }
            }
          },
          "description": "The hashtag's top posts, first page."
        }
      }
    }
  },
  "description": "One page of the hashtag's top posts, as returned after shaping."
}