ต้นแบบ · รุ่นทดลอง: มีทุก server ในทะเบียนทางการ อัปเดตทุก 30 นาที รีวิวและบัญชีผู้ใช้จะมาในขั้นถัดไป
PopNx MCPที่รวม MCP สำหรับคนใช้ AI · อธิบายเป็นภาษาคน

HasData Instagram

โดย HasDataรุ่น 1.0.8i★ –iบนเครื่องหรือคลาวด์
ชื่อใน registrycom.hasdata/instagram

ติดตั้ง

ภาพรวม

คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)

Public Instagram profiles and post feeds by handle, with hashtags and mentions parsed.

สามเสาของ PopNx MCP

สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน

ใช้ทำอะไรได้

ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry

  • การเชื่อมต่อ: บนเครื่องหรือคลาวด์
  • ช่องทาง (transport): stdio, Streamable HTTP
  • หมวด: การตลาดและโซเชียล
  • ต้องใส่ค่าเหล่านี้: HASDATA_API_KEY, x-api-key

ติดตั้ง

เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง

ก่อนติดตั้ง

ค่าที่ติดป้ายความลับคือกุญแจของบัญชีคุณ อย่าส่งให้ใคร และอย่าวางในแชต

ต้องเตรียมก่อน

  • รันบนคลาวด์ไม่ต้องลงโปรแกรมเพิ่ม ต่อผ่านอินเทอร์เน็ตได้เลย
  • npmติดตั้ง Node.js (มีคำสั่ง npx) ในเครื่อง

คุณใช้แอปไหน

เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”

ที่อยู่นี้ต้องใส่ key ใน header ของคำขอ ซึ่งเมนูเพิ่ม connector ใส่ให้ไม่ได้ ใช้ Claude Code, Cursor หรือ VS Code แทน

หรือรันในเครื่องคุณ

เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json

{
  "mcpServers": {
    "instagram": {
      "command": "npx",
      "args": [
        "-y",
        "@hasdata/instagram-mcp"
      ],
      "env": {
        "HASDATA_API_KEY": "ใส่ค่าของคุณ"
      }
    }
  }
}

พิมพ์คำสั่งนี้ใน Terminal

claude mcp add --transport http instagram 'https://mcp.hasdata.com/mcp?apis=instagram' --header 'x-api-key: ใส่ค่าของคุณ'

หรือรันในเครื่องคุณ

claude mcp add instagram --env HASDATA_API_KEY='ใส่ค่าของคุณ' -- npx -y @hasdata/instagram-mcp

เติมค่าที่เว้นว่างไว้ก่อนรัน

เปิดใน Cursor

หรือคัดลอกค่าตั้งเอง

วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json

{
  "mcpServers": {
    "instagram": {
      "url": "https://mcp.hasdata.com/mcp?apis=instagram",
      "headers": {
        "x-api-key": "ใส่ค่าของคุณ"
      }
    }
  }
}

หรือรันในเครื่องคุณ

เปิดใน Cursor

หรือคัดลอกค่าตั้งเอง

วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json

{
  "mcpServers": {
    "instagram": {
      "command": "npx",
      "args": [
        "-y",
        "@hasdata/instagram-mcp"
      ],
      "env": {
        "HASDATA_API_KEY": "ใส่ค่าของคุณ"
      }
    }
  }
}

เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง

เปิดใน VS Code

หรือคัดลอกค่าตั้งเอง

วางในไฟล์ .vscode/mcp.json ของโปรเจกต์

{
  "servers": {
    "instagram": {
      "type": "http",
      "url": "https://mcp.hasdata.com/mcp?apis=instagram",
      "headers": {
        "x-api-key": "ใส่ค่าของคุณ"
      }
    }
  }
}

หรือรันในเครื่องคุณ

เปิดใน VS Code

หรือคัดลอกค่าตั้งเอง

วางในไฟล์ .vscode/mcp.json ของโปรเจกต์

{
  "servers": {
    "instagram": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@hasdata/instagram-mcp"
      ],
      "env": {
        "HASDATA_API_KEY": "ใส่ค่าของคุณ"
      }
    }
  }
}

เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง

ที่อยู่นี้ต้องใส่ key ใน header ของคำขอ ซึ่งเมนูเพิ่ม connector ใส่ให้ไม่ได้ ใช้ Claude Code, Cursor หรือ VS Code แทน

ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี

ค่าที่ต้องใส่เอง

  • HASDATA_API_KEY ความลับ จำเป็น env
    HasData API key, created at app.hasdata.com. 1,000 free credits every month, no card.
  • x-api-key ความลับ จำเป็น HTTP header
    HasData API key, created at app.hasdata.com. 1,000 free credits every month, no card.

ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README

ทำอะไรได้บ้าง

ยังไม่ได้อ่านรายการเครื่องมือของตัวนี้ เราตรวจ endpoint ทีละชุดวนไป

ผลตรวจเบื้องต้นi

เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 6 พ.ย. 2569

  • ✓ ผ่าน

    ตัวตนผู้ทำตรงกับ repo

    ชื่อใน registry ยืนยันโดเมน hasdata.com แล้ว (registry ตรวจความเป็นเจ้าของโดเมน)

  • … ยังไม่ตรวจ

    ยังมีคนดูแล

    ยังไม่ได้อ่านข้อมูล repo จาก GitHub

  • … ยังไม่ตรวจ

    มีสัญญาอนุญาต (license)

    ยังไม่ได้อ่านข้อมูล repo จาก GitHub

  • … ยังไม่ตรวจ

    endpoint ตอบ

    ยังไม่ได้ตรวจ เราตรวจ endpoint ทีละชุดวนไป

  • … ยังไม่ตรวจ

    ล็อกอินแบบ OAuth

    ยังไม่ได้ตรวจ เราตรวจ endpoint ทีละชุดวนไป

  • … ยังไม่ตรวจ

    คำอธิบายเครื่องมือไม่มีคำสั่งแอบแฝง

    ยังไม่ได้ตรวจ เราอ่านรายการเครื่องมือตอนตรวจ endpoint

เทียบกับตัวอื่นในหมวด การตลาดและโซเชียลi

  • ดาวมากกว่า 0% ของอีก 2953 ตัวในหมวดนี้
  • ส่งรุ่นใหม่เข้า registry ล่าสุดกว่า 40% ของอีก 2953 ตัวในหมวดนี้
  • ผลตรวจเบื้องต้นดีกว่าหรือเท่ากับ 100% ของอีก 2953 ตัวในหมวดนี้

เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo

คำถามที่พบบ่อย

HasData Instagram ปลอดภัยไหม?

จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น

ต้องใช้กุญแจหรือรหัสอะไรบ้าง?

ต้องใส่ค่าเหล่านี้: HASDATA_API_KEY, x-api-key

ตัวนี้รันบนเครื่องหรือบนคลาวด์?

ได้ทั้งสองแบบ จะลงในเครื่องหรือต่อผ่านคลาวด์ก็ได้

ยังมีคนดูแลอยู่ไหม?

repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (1.0.8) เข้า registry 43 วันที่ผ่านมา

ใช้กับโปรแกรมไหนได้บ้าง?

โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต่อผ่าน URL จึงใช้กับโปรแกรมที่รับ remote MCP ได้ เช่น ChatGPT ที่เปิดโหมดนักพัฒนา

มีตัวไหนใช้แทนได้บ้าง?

ในหมวดเดียวกันมี MCP YouTube Transcript, Google Analytics MCP, BibiGPT YouTube Video Summarizer

ตัวที่ใช้แทนได้

server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว

อ่านการ์ด:★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi

MCP YouTube Transcript

โดย jkawamoto

An MCP server retrieving transcripts of YouTube videos

รันบนเครื่อง★ 495MITอัปเดต 9 วันที่ผ่านมา
ติดตั้ง

Google Analytics MCP

โดย surendranb

GA4 MCP server for AI agents: schema discovery, server-side aggregation, analysis-ready defaults.

รันบนเครื่อง★ 244MITอัปเดต 9 วันที่ผ่านมา
ติดตั้ง

AI video summarizer: summarize and transcribe YouTube, Bilibili, TikTok and podcast videos.

รันบนคลาวด์★ 137MITอัปเดต 9 วันที่ผ่านมา
ติดตั้ง

README จากผู้ทำ

เปิดอ่าน README

ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ

Instagram MCP Server

A hosted Instagram MCP server that gives Claude, Cursor, Windsurf and any other MCP client read-only Instagram tools. Look up a public profile by handle, walk its public post feed and read the comments on a public post or reel, as structured JSON.

It reads public data about accounts. It does not act as an account. There is nothing to connect and no account of yours involved anywhere in the flow.

1,000 free credits every month, no card required, which is 100 Instagram calls.

https://mcp.hasdata.com/mcp?apis=instagram
  • Prompts and resources

Contents

  • What you need
  • Quick start
  • Example prompts
  • Tools
  • Errors and failure paths
  • Pricing, free tier and limits
  • Tool selection
  • How it compares
  • FAQ
  • HasData links
  • Development
  • Contributing
  • License

What you need

An MCP client that speaks streamable HTTP with custom headers. A HasData API key from the dashboard, free to create with no card, and the free tier covers 100 calls a month. Nothing else. This is a remote server, so the simplest path is a URL and a header, with no container to run. A stdio-only client can use the @hasdata/instagram-mcp (npm) or hasdata-instagram-mcp (PyPI) launcher instead.

Quick start

URLhttps://mcp.hasdata.com/mcp?apis=instagram
TransportHTTP, streamable
Auth headerx-api-key: HASDATA_API_KEY

The server URL is the same for every client. We run it hands-on in Claude Code and Claude Desktop. The other blocks follow each client's own documented format for a remote server.

Clients with OAuth support can add the same URL as a connector and sign in without putting a key in a config file.

Claude Code

claude mcp add --transport http instagram "https://mcp.hasdata.com/mcp?apis=instagram" \

--header "x-api-key: HASDATA_API_KEY"

Claude Desktop

Claude Desktop loads only local (stdio) servers from its config file, so it reaches a remote server through a stdio launcher. The @hasdata/instagram-mcp package is that launcher, and it reads the key from the environment.

claude_desktop_config.json:

{

"mcpServers": { "instagram": { "command": "npx", "args": ["-y", "@hasdata/instagram-mcp"], "env": { "HASDATA_API_KEY": "YOUR_KEY" } } } }

Python instead of Node? Swap the launcher for the PyPI package, which uvx runs without a manual install:

{

"mcpServers": { "instagram": { "command": "uvx", "args": ["hasdata-instagram-mcp"], "env": { "HASDATA_API_KEY": "YOUR_KEY" } } } }

A client with OAuth support can instead add the URL as a custom connector and skip the launcher.

Cursor

.cursor/mcp.json:

{

"mcpServers": { "instagram": { "url": "https://mcp.hasdata.com/mcp?apis=instagram", "headers": { "x-api-key": "HASDATA_API_KEY" } } } }

Windsurf

~/.codeium/windsurf/mcp_config.json:

{

"mcpServers": { "instagram": { "serverUrl": "https://mcp.hasdata.com/mcp?apis=instagram", "headers": { "x-api-key": "HASDATA_API_KEY" } } } }

Cline

{

"mcpServers": { "instagram": { "url": "https://mcp.hasdata.com/mcp?apis=instagram", "type": "streamableHttp", "headers": { "x-api-key": "HASDATA_API_KEY" }, "disabled": false } } }

VS Code

.vscode/mcp.json:

{

"servers": { "instagram": { "type": "http", "url": "https://mcp.hasdata.com/mcp?apis=instagram", "headers": { "x-api-key": "HASDATA_API_KEY" } } } }

Gemini CLI

~/.gemini/settings.json:

{

"mcpServers": { "instagram": { "httpUrl": "https://mcp.hasdata.com/mcp?apis=instagram", "headers": { "x-api-key": "HASDATA_API_KEY" } } } }

Example prompts

Each of these is one tool call unless the count says otherwise.

Pull the profile for @nasa and tell me the follower count, whether it is verified, and every link in the bio.

*One call, 10 credits. For a public account the profile response already carries the twelve most recent posts, so a follow-up about recent activity needs no second call.*

Compare @nasa, @natgeo and @bbcearth on followers, accounts followed and whether each is verified.

*Three calls, 30 credits. One per handle.*

Walk the last fifty posts from @nasa and list every hashtag with how often it appears.

*Five calls, 50 credits. Twelve posts arrive per call, and fifty takes five pages.*

For the last twelve posts on @natgeo, list the accounts mentioned in each caption and the type of each post.

*One call, 10 credits. Mentions and hashtags arrive parsed out of the caption in the post objects.*

Two things make these work. Hashtags and mentions arrive as arrays parsed out of the caption, and an agent counts them instead of running a regex over prose. And a profile lookup returns the recent feed in the same response. That is why so many research questions land in a single call.

Tools

ToolWhat it returns
hasdata_instagram_comments_getInstagramCommentsFetches the comments on a public post or reel by its URL and returns the post itself with its caption, media, likesCount, commentsCount and timestamp, then each comment with its text, like count, timestamp and author. 10 credits a call
hasdata_instagram_posts_getInstagramPostsFetches the latest posts of a public Instagram account by username (handle) and returns each post with its id, shortcode, caption, type, productType, permalink, media URLs and pixel size, like and comment counts, the posting time, plus hashtags, mentions, tagged users and carousel members. 10 credits a call
hasdata_instagram_profile_getInstagramProfileFetches a public Instagram profile by username (handle) and returns id, full name, biography, bio links, profile picture URL, followers and following counts, the verified flag and the twelve most recent posts. 10 credits a call

Three tools, all read-only. Two are keyed on a public account handle, the third on the URL of a single post. Samples below are trimmed from real calls, and the numbers in them move as accounts post. Read them as shapes. Each tool name links to its endpoint reference.

The samples are the payload, not the whole response. A tools/call result carries one text block, and that text is itself JSON holding url, status, text and json, with the scraped data under json. From a raw JSON-RPC response the path is result.content[0].text, parsed, then .json. A chat client unwraps that for you and code talking to the endpoint directly does not.

Get an Instagram profile

hasdata_instagram_profile_getInstagramProfile

One public profile by handle.

ParameterTypeRequiredNotes
handlestringyesUsername without the @, as it appears in the profile URL

Returns id, username, fullName, biography, verified, the counters followersCount and followsCount, profilePicUrl, the internal fbid, the bioLinks array and latestPosts.

What is guaranteed and what is not, measured across twenty accounts: id, username, followersCount, followsCount, profilePicUrl and fbid came back every time. fullName, biography, verified, bioLinks and latestPosts came back for every public account and are the ones to read with a default.

A private account answers with private: true and little else. No bio, no counters beyond the follower numbers, no posts. Branch on that flag before you touch the rest of the payload.

bioLinks is an array of objects, not strings. Each entry carries url, title, Instagram's own redirectUrl wrapper and linkType. Read .url when you want the destination.

{

"id": "528817151", "username": "nasa", "fullName": "NASA", "biography": "Making the seemingly impossible, possible. ✨", "verified": true, "followersCount": 104345698, "followsCount": 91, "profilePicUrl": "https://scontent.cdninstagram.com/v/t51.2885-19/…", "fbid": "17841401474538262", "bioLinks": [ { "url": "https://www.nasa.gov", "title": "NASA.gov Homepage", "redirectUrl": "https://l.instagram.com/?u=https%3A%2F%2Fwww.nasa.gov%2F&e=…", "linkType": "external" } ], "latestPosts": [ "…the most recent posts, same shape as the posts tool…" ] }

Get Instagram posts

hasdata_instagram_posts_getInstagramPosts

The public post feed for one handle, page by page.

ParameterTypeRequiredNotes
handlestringyesUsername without the @
limitnumberApproximate ceiling on posts in one response. Twelve is the real maximum, and larger values do not fetch more
nextPageTokenstringThe pagination.nextPageToken from the previous response

limit is a rough cap rather than an exact count. Twelve posts is one Instagram page and the hard ceiling for a single call, and limit: 50 returns twelve. Below the ceiling the count lands near the number you asked for without always matching it, and how near depends on the account. Measured on @nasa, a limit of 2 returned 4 posts, 6 returned 6, 11 returned 10 and 13 returned 12. Treat it as "no more than roughly this many" and read the array length rather than assuming it.

The response carries posts and pagination, and nothing else. Earlier versions repeated the account's identity fields alongside the feed, so code written against that shape needs a profile call for the name and avatar.

Each post carries id, shortcode, caption, type, productType, url, ownerUsername, ownerId, displayUrl and images, the pixel size as dimensionsWidth and dimensionsHeight, and hasdataLink, a ready-made link to the comments endpoint for that post. hashtags and mentions appear only when the captio

ตัดมาแค่ช่วงต้น อ่านต่อใน repo

ถาม PopNx