creatorloop
概览
作者提供的说明(英文原文)
Instagram content studio for Claude: analytics, competitors, Reels, publishing queue.
PopNx MCP 的三大支柱
这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。
- 用户评价i暂无评价评价功能将在后续阶段与账户功能一起开放
- 我们的基础检查i1 项中通过 1 项依据公开信息检查;尚未扫描代码
- 使用情况i非常新↓ 36/周 · ★ –
它能帮你做什么
我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。
- 连接方式: 在你的电脑上运行
- 传输方式: stdio
- 分类: 营销与社交媒体
- 你需要填写:IG_ACCESS_TOKEN
安装
选择你使用的 AI 应用,然后复制设置。
安装之前
- 基础检查:1 项中通过 1 项
- 在你的电脑上运行,拥有你的用户账户的权限(文件、网络、应用)。
- 需要你自己填写:
IG_ACCESS_TOKEN,IG_USER_ID
标为机密的值是你账户的钥匙。千万不要分享给别人,也不要粘贴到聊天里。
你需要
- PyPI已安装 Python 的 uv(用于 uvx 命令)
你用的是哪个应用?
在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。
打开 Claude Desktop → Settings → Developer → Edit Config,把下面的内容粘贴到 claude_desktop_config.json
{
"mcpServers": {
"creatorloop": {
"command": "uvx",
"args": [
"creatorloop"
],
"env": {
"IG_ACCESS_TOKEN": "your-value",
"IG_USER_ID": "your-value"
}
}
}
}在终端中运行这条命令
claude mcp add creatorloop --env IG_ACCESS_TOKEN=your-value --env IG_USER_ID=your-value -- uvx creatorloop运行前请先填写空着的值。
或者自己复制设置
粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json
{
"mcpServers": {
"creatorloop": {
"command": "uvx",
"args": [
"creatorloop"
],
"env": {
"IG_ACCESS_TOKEN": "your-value",
"IG_USER_ID": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
或者自己复制设置
粘贴到项目中的 .vscode/mcp.json
{
"servers": {
"creatorloop": {
"type": "stdio",
"command": "uvx",
"args": [
"creatorloop"
],
"env": {
"IG_ACCESS_TOKEN": "your-value",
"IG_USER_ID": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
这个服务器在你的电脑上运行,而 ChatGPT 只能连接互联网上的服务器。请选择其他应用。
你的选择通过 Cookie 保存在这台设备上,无需账户。
需要你填写的值
- Instagram Graph API token (long-lived or System User). Can also live in the creatorloop .env file.
IG_USER_IDenvInstagram professional account ID (not the username).
这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。
它能做什么
它在你的电脑上运行;安装后,工具列表会显示在你的 AI 应用中。
基础检查i
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月8日
- ✓ 通过
作者与仓库一致
注册名称已通过 GitHub 账户 pandich93 验证,该账户拥有此仓库
- … 尚未检查
仍在维护
我们还没有从 GitHub 读取这个仓库
- … 尚未检查
有许可证
我们还没有从 GitHub 读取这个仓库
- – 不适用
端点有响应
它在你的电脑上运行,没有互联网端点
- – 不适用
使用 OAuth 登录
在你的电脑上运行,改用本地设置
- … 尚未检查
工具描述中没有隐藏指令
它在你的电脑上运行;我们只能读取互联网端点的工具列表
与“营销与社交媒体”中的其他服务器比较i
- 星标数多于此分类中其他 3594 个服务器的 0%
- 发布到注册中心的时间比此分类中其他 3594 个服务器的 60% 更新
- 基础检查结果等于或优于此分类中其他 3594 个服务器的 100%
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
常见问题
creatorloop 安全吗?
它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
它需要哪些密钥或代码?
你需要填写:IG_ACCESS_TOKEN
它在我的电脑上运行还是在云端?
它在你的电脑上运行。你的 AI 应用会在需要时启动它,数据不会经过作者的服务器(除非它自己调用在线服务)。
它还在维护吗?
GitHub 仓库最后更新于–,最新版本(0.3.0)于20天前进入注册中心。
哪些应用可以使用它?
支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。你的电脑上还需要有 Python (uv)。
有什么可以替代它?
同一分类中有:MCP YouTube Transcript, Google Analytics MCP, BibiGPT YouTube Video Summarizer
替代选择
同一分类中其他作者的服务器,按星标数排序。
如何看卡片:↓ 每周下载量i★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i
Google Analytics MCP
GA4 MCP server for AI agents: schema discovery, server-side aggregation, analysis-ready defaults.
BibiGPT YouTube Video Summarizer
AI video summarizer: summarize and transcribe YouTube, Bilibili, TikTok and podcast videos.
作者的 README
打开 README
按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。
creatorloop
Open-source AI content studio for Instagram creators, built on Claude and the official Instagram API.
Analyse what works → make Reels and carousels → publish or queue them → review how they did. All from a chat with Claude.
Why
There are plenty of "Instagram API for Claude" servers. creatorloop is built for the creator's loop instead:
- Learn from data, not vibes. Best and worst posts with their hooks, format comparison, follows per 1,000 reach, Reels watch time, best day and hour — and which captions (language, question hook, CTA, length) actually work.
- Spy on competitors legally. Track professional accounts, keep their follower history, and get alerted to the posts that did N× better than their median. Analyse any public post by URL, slides included.
- Make the content. A Remotion Reel template with automatic checks (first-second rule, safe zones, "not a copy of the carousel"), original music and licensed 3D objects.
- Publish safely. Two-step publishing with a preview, a queue with fingerprints (a changed file blocks the post), 24 h / 72 h post reviews and comment replies — every public action needs your explicit OK.
- Official API only. No scraping, no browser automation, no risk to your account.
Quick start
You need uv, Claude Desktop, an Instagram Business or Creator account linked to a Facebook Page, and your own Meta app (5-minute guide).
uvx --from creatorloop creatorloop-setup
It connects Claude Desktop and opens a setup page in your browser: enter your app's App ID and App Secret, press Continue with Facebook, done. Then ask Claude: *"How did my last 10 posts do, and what should I post next?"*
Already in Claude? Ask *"connect my Instagram"*: Claude opens the same page (open_setup). Your App Secret and token are typed only into that local page, never into the chat.
Installing uv
| System | Command | |
|---|---|---|
| Windows | `powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 \ | iex"` |
| macOS | brew install uv or `curl -LsSf https://astral.sh/uv/install.sh \ | sh` |
| Linux | `curl -LsSf https://astral.sh/uv/install.sh \ | sh` |
creatorloop runs on Python 3.12 or newer; uv downloads one by itself if you don't have it.
creatorloop-setup finds the Claude Desktop config on Windows (including the Microsoft Store build), macOS and Linux, keeps your other servers, makes a backup and creates your settings file. Claude Desktop rewrites its config while it runs, so on macOS the command quits and reopens it for you; on Windows and Linux it asks you to quit it first.
One-click install (Claude Desktop)
Prefer not to open a terminal? Download the .mcpb file from the latest release and double-click it (or drag it into Claude Desktop → Settings → Extensions). Claude Desktop sets up Python and the dependencies itself, so the first start takes a minute. Leave the two optional fields empty and ask Claude *"connect my Instagram"*: the same setup page opens. Fill them in only if you already have a token and account ID — values entered there win over the setup page. If Claude Desktop says it can't find uv, install it (see *Installing uv* above) and restart Claude Desktop.
Running in Docker instead of uv
Build the image straight from GitHub and keep your settings in a folder on your computer:
docker build -t creatorloop https://github.com/pandich93/creatorloop.git
mkdir "$HOME/creatorloop"
If you use the post queue, first create .env in that folder with IG_TIMEZONE=Europe/Berlin (your zone): the container runs in UTC.
Connect your account (the setup page runs in the container; open the printed link in your browser). Keep all three 8765 the same; to use another port change all three:
docker run --rm -it -p 127.0.0.1:8765:8765 -v "$HOME/creatorloop:/data" --entrypoint creatorloop-auth creatorloop \
login --no-browser --port 8765 --bind 0.0.0.0
creatorloop-setup doesn't run inside Docker, so add the server to claude_desktop_config.json yourself, with the full path to the folder:
{
"mcpServers": { "creatorloop": { "command": "docker", "args": ["run", "-i", "--rm", "-v", "/Users/you/creatorloop:/data", "creatorloop"] } } }
Post folders for prepare_post and queue_post go into creatorloop/content/. The image includes cloudflared for publishing carousels.
The open_setup tool does not work inside Docker; use the command above to reconnect.
What you can ask
- "Make a report on my content for the last 60 days. Reels or carousels — what works better, and when should I post?"
- "Compare me with @competitor1 and @competitor2. Who has the higher engagement and why?"
- "Analyse this post https://www.instagram.com/p/… and write my own version of it."
- "Track @competitor and tell me every week which of their posts took off."
- "Check the hashtags #ai, #productivity and #startup. Check the quota first."
- "Queue the post from folder
my-first-reelfor the next free slot." → preview → "yes" → it goes out on time. - "Which new comments haven't I answered? Draft replies." → you approve each reply.
Ready-made prompts in Claude Desktop's + menu: *Weekly Instagram report*, *Competitor brief*, *Data-driven content ideas*.
Tools
| Area | Tools |
|---|---|
| Your account | get_my_profile, get_my_media, get_media_insights, get_account_insights, get_audience_demographics |
| Content analysis | get_my_content_report, get_caption_insights, get_post_history, post_reviews |
| Competitors | get_competitor, compare_accounts, get_follower_history, track_competitor, untrack_competitor, list_tracked_competitors, update_tracked_competitors, find_viral_posts, get_competitor_post |
| Hashtags | search_hashtag, compare_hashtags, plan_hashtag_research |
| Publishing | prepare_post, get_post_job, publish_media, list_publications |
| Queue | queue_post, list_queue, cancel_queued |
| Comments | get_new_comments, reply_comment |
| Service | get_api_status, open_setup, clear_cache, restart_server |
34 tools in total. Tools that change something on Instagram are annotated as such for Claude, and their descriptions tell it to act only after you approve: publish_media and reply_comment after you OK the preview or the exact text, queue_post only with confirm=true after you saw the preview.
Publishing
Put the files into a folder inside your content folder ( /content/ /):
my-carousel/ my-reel/
slide_01.png … slide_10.png reel.mp4 # H.264/HEVC, 23–60 fps, ≤1920 px wide, 3 s–15 min, ≤300 MB caption.txt caption.txt reel.json # optional: {"cover_ms": 1667, "share_to_feed": true, "trial": "SS_PERFORMANCE"}
- Slides: 1–10 PNG/JPG (API limit), aspect ratio 4:5 to 1.91:1, ordered by file name. Everything below a
---line incaption.txtis notes and is not published. - Then: "prepare the post from folder
my-carousel" → preview → "publish". Or queue it for a slot. - Carousels: Instagram downloads images from a public URL, so creatorloop opens a temporary Cloudflare Quick Tunnel for that minute. Install
cloudflaredonce:winget install --id Cloudflare.cloudflared -e(Windows),brew install cloudflared(macOS) or a package from pkg.cloudflare.com (Linux). - Reels upload directly to Meta (no tunnel). The MP4 header is checked before upload (duration, size, width,
moovfirst) with the exactffmpegfix if something is off. - Queue slots default to Tue/Thu/Sun 19:00 in your timezone — an example, change
QUEUE_SLOTSin the settings file. A queued post is blocked if its files or caption change after you approved it, and is marked missed if your computer was asleep for more than 3 hours past the slot. - Meta's limit is 100 posts per rolling 24 hours;
list_publicationsshows what is left. Publishing is never retried automatically, so there are no duplicates.
Making the content itself: see examples/ and the content pipeline — a sample carousel, a sample Reel storyboard and the Remotion Reel template.
What the Instagram API allows (and doesn't)
| Possible | Not possible | |
|---|---|---|
| Your account | Reach, views, likes, comments, saves, shares, profile visits, follows per post, Reels average watch time, audience demographics, account totals | Data older than 2 years; insights per carousel slide; Stories after 24 h |
| Competitors (Business Discovery) | Public data of Business/Creator accounts: followers, posts, bio, likes, comments, Reels views per post | Personal or private accounts; their reach, saves, shares, demographics; Stories |
| Hashtags | Top posts and posts from the last 24 h | More than 30 unique hashtags per rolling 7 days; post authors; keyword, audio or trend search |
| Follower growth | creatorloop saves a daily snapshot for you and every competitor you look at | History before the first snapshot |
Engagement rate for your posts = Σ(likes + comments + saves + shares) / Σreach × 100 (weighted, so tiny posts don't skew it). Posts younger than 72 h are reported separately as "still growing". Competitors' ER is per follower — the API does not expose their reach.
Settings
creatorloop-setup creates .env in your creatorloop home folder:
| System | Home folder |
|---|---|
| Windows | %APPDATA%\creatorloop |
| macOS | ~/Library/Application Support/creatorloop |
| Linux | ~/.local/share/creatorloop (or $XDG_DATA_HOME/creatorloop) |
Set CREATORLOOP_HOME to use another folder. The home folder holds .env, the creatorloop.db database and the content/ folder.
| Variable | Required | Meaning |
|---|---|---|
IG_ACCESS_TOKEN | yes | Long-lived (60 days) or System User (never expires) token — see Meta setup |
IG_USER_ID | yes | Your Instagram professional account ID (1784…), not the username |
GRAPH_API_VERSION | no | Default v26.0 |
META_APP_ID, META_APP_SECRET | no | Filled by the setup page; also used to check the token expiry |
IG_TIMEZONE | no | IANA name, e.g. Europe/Berlin. Default: your computer's timezone |
QUEUE_SLOTS | no | e.g. Mon,Wed,Fri 20:00 |
IG_DB_PATH, CACHE_TTL_*_MIN | no | Database location, cache lifetime in minutes |
The token expiry shows up in get_api_status, and every tool answer carries a `token_warn
只显示了开头部分;其余内容请在仓库中阅读