anomalia-cli
AI social media automation CLI + MCP server. Generate, approve and publish posts and blog articles from your terminal.
Install / Use
claude mcp add andreabuttarelli -- npx -y github:andreabuttarelli/anomalia-cliIf the server publishes to npm under a different name, use that package instead β check the repo README.
MCP Server
Model Context Protocol server
Quality Score
Category
AutomationSupported Platforms
Tags
Our assessment of anomalia-cli
anomalia-cli scores 78/100 on our quality scale, 2562nd of 2,870 Automation skills we index.
Its MCP Server is 8.0 KB long, well organised into 16 sections with 13 code examples: a thorough specification that gives an agent plenty to work with.
It has 3 GitHub stars, so there is little community track record yet; judge it on its content.
Maintenance, license and trust
- The repository was last updated about 2 months ago, so anomalia-cli is actively maintained.
- It is released under AGPL-3.0, a copyleft license: you can use it, but modified versions you distribute must carry the same license.
- Its trust signals score 92/100, with 1 caution from licensing, adoption, age or documentation. These come from repository metadata, not a code audit β read the skill file before letting an agent act on it.
anomalia-cli compared with similar skills
All 4 of these similar skills score higher than anomalia-cli; compare them before choosing.
| Skill | Score | Stars | Updated | Format |
|---|---|---|---|---|
| anomalia-cli (this skill)by andreabuttarelli | 78 | 3 | 2mo ago | MCP Server |
| Agent-Reachby Panniantong | 100 | 106.6k | 5d ago | CLAUDE.md |
| headroomby headroomlabs-ai | 100 | 78.3k | today | CLAUDE.md |
| CowAgentby zhayujie | 100 | 47.7k | today | CLAUDE.md |
| Scraplingby D4Vinci | 100 | 90.4k | 1d ago | MCP Server |
Frequently asked questions
- How do I install anomalia-cli?
- Run
claude mcp add andreabuttarelli -- npx -y github:andreabuttarelli/anomalia-cli. The install tabs above show the steps for each supported agent. - Which AI agents does anomalia-cli work with?
- It is written for Claude Code and Claude Desktop, as a MCP Server file. Other agents that read the same format can often use it too.
- Is anomalia-cli safe to use?
- It is AGPL-3.0-licensed and scores 92/100 on trust signals. Skills are instructions an agent will follow, so read the file before installing it and do not approve commands you do not understand.
- Is anomalia-cli still maintained?
- The repository was last updated about 2 months ago, so anomalia-cli is actively maintained.
Skill content
View source on GitHubAnomalia CLI β Social Media AI Automation CLI, MCP Server & Agent Skill
Automate your social media from the terminal. Anomalia is the social
media AI autopilot that plans, writes, designs and publishes posts, blog articles and SEO/GEO
audits on autopilot. This repository is its command-line client, MCP server
(Model Context Protocol β stdio + HTTP) and agent skill: everything you need to run social
media automation, content generation and approval workflows from a terminal or an AI agent.
This repository ships three ways to drive the same product (same OAuth, same API, no static tokens):
| | What | Who itβs for |
|---|------|----------------|
| CLI | anomalia terminal commands | Humans & scripts |
| MCP | Model Context Protocol server (stdio + HTTP) | Cursor, Claude, other MCP hosts |
| Skill | Agent Skill (skills/anomalia/) | Coding agents / skills.sh / npx skills |
You need an Anomalia account. This is a client, not a standalone tool: every call talks to the Anomalia API over HTTPS. Without an account there is nothing to drive.
With the Anomalia CLI you can automate social media posting, approve AI-generated content in one tap, edit a carousel slide by slide, turn a post into a video, run SEO and GEO audits, and manage your blog β from the terminal or from an AI agent like Cursor or Claude.
βββββββββββββββ βββββββββββββββ ββββββββββββββββββββ
β anomalia β β MCP host β β Agent + Skill β
β CLI β β (Cursorβ¦) β β (npx skills) β
ββββββββ¬βββββββ ββββββββ¬βββββββ ββββββββββ¬ββββββββββ
β β β
β lib/api.ts + OAuth session β
βββββββββββββββββββΌββββββββββββββββββββ
βΌ
Anomalia /api/v1/*
1. CLI
Install
Pick one:
| Method | Command | Notes |
|--------|---------|--------|
| npm | npm install -g anomalia-cli | Needs Node.js β₯ 20 |
| Homebrew | see below | macOS / Linux, standalone binary |
| Installer | see below | curl script β binary on PATH |
| From source | see below | Needs Bun |
npm
npm install -g anomalia-cli
# or: pnpm add -g anomalia-cli / bun add -g anomalia-cli
anomalia login
Homebrew
brew tap andreabuttarelli/anomalia-cli https://github.com/andreabuttarelli/anomalia-cli
brew install anomalia
anomalia login
Installer (standalone binary) β macOS arm64/x64 and Linux arm64/x64, no Node/Bun required:
curl -sSL https://raw.githubusercontent.com/andreabuttarelli/anomalia-cli/main/scripts/install.sh | bash
anomalia login
Update later with anomalia update, or npm install -g anomalia-cli@latest / brew upgrade anomalia depending on how you installed. More detail: docs/distribute.md.
Quick start
anomalia brands
anomalia dashboard my-brand
anomalia content my-brand --status pending_user
anomalia approve my-brand --all
anomalia seo my-brand
anomalia web my-brand generate --topic "..."
anomalia ads my-brand --remix
anomalia ai my-brand --message "..." --pipe
Every command takes the brand slug as its first argument. anomalia --help lists them all;
anomalia <command> --help details one. Short id prefixes from tables are accepted; ambiguous
prefixes error instead of guessing.
| Area | Commands |
|------|----------|
| Posts | content, approve, post <id> [show\|edit\|regenerate\|slide\|reorder\|video\|publish] |
| Planning | plan, weekly-plan, calendar, gtm |
| Brand | studio, voice, people, products |
| Web | seo, geo, keywords, web |
| Ads | ads β campaigns, spend, boost proposals, remix, duplicate/delete (--sync, --propose, --remix, --create, --approve, --pause, --resume, --duplicate, --delete, --reject, --ad per singola creativitΓ ) |
| Insight | dashboard, status, analytics |
| AI | ai --message "..." β natural language, full read/write access |
Full command dump: llms.txt Β· more docs: docs/
From source
Requires Bun.
git clone https://github.com/andreabuttarelli/anomalia-cli.git
cd anomalia-cli
bun install
bun run cli.ts --help
2. MCP server
Same tools and OAuth as the CLI. Docs: docs/mcp.md.
bun run mcp # stdio (local hosts)
bun run mcp:http # http://localhost:8787/mcp
Remote: https://mcp.anomalia.so/mcp (Bearer JWT required). Health: GET /health.
Cursor β stdio
{
"mcpServers": {
"anomalia": {
"command": "bun",
"args": ["run", "/ABS/PATH/to/anomalia-cli/mcp/stdio.ts"]
}
}
}
Cursor β HTTP
{
"mcpServers": {
"anomalia": { "url": "https://mcp.anomalia.so/mcp" }
}
}
If Connect fails with Not an https or loopback URI: cursor://β¦, your Cursor build is still
using the custom-scheme OAuth callback β use stdio above, update Cursor (loopback
http://localhost:8787/callback), or see docs/mcp.md.
- Local stdio:
logintool or existinganomalia loginβ~/.config/anomalia/session.json - Remote HTTP:
Authorization: Bearer <access_token>(401 without it is expected)
3. Agent Skill & plugins
Publishable Agent Skill for Cursor, Claude, skills.sh, and friends:
npx skills add andreabuttarelli/anomalia-cli --skill anomalia
# or
bash scripts/install-skill.sh --project
Package: skills/anomalia/ β plugins/anomalia/skills/anomalia/ (SKILL.md + references/ for MCP setup, tool map, CLI).
When the skill is active, agents prefer MCP tools if connected, otherwise the CLI.
Claude Code / Codex marketplace plugin
Same skill + remote MCP, packaged for plugin install and directory submit:
# Claude Code
/plugin marketplace add andreabuttarelli/anomalia-cli
/plugin install anomalia@anomalia
# Codex
codex plugin marketplace add andreabuttarelli/anomalia-cli
Submit checklist (Claude community directory + OpenAI Plugins Directory): docs/plugins.md.
Configuration
Zero config by default β https://anomalia.so, with automatic fallback to
http://localhost:5173 when a local app is answering.
| Variable | Purpose |
|----------|---------|
| PUBLIC_APP_URL | Point CLI/MCP at another Anomalia instance |
| SENTRY_DSN | (MCP HTTP / Vercel) Errors β Sentry |
| SUPABASE_SERVICE_ROLE_KEY | (MCP HTTP / Vercel) Rows in mcp_logs |
| MCP_PUBLIC_URL | Public MCP base URL for OAuth metadata |
Session: ~/.config/anomalia/session.json. anomalia logout clears it. No secrets are embedded
in this repo or the binary.
Architecture
Thin HTTPS client β no DB access, no coupling to the Anomalia server codebase:
CLI βββ
MCP βββΌββ HTTPS βββΊ /api/v1/* βββΊ Anomalia
Skill ββ (guides agents to CLI or MCP)
- CLI commands:
commands/+cli.ts - HTTP client:
lib/api.tsonly - MCP:
mcp/(reuseslib/api.ts, registers tools) - Skill / plugins:
skills/anomalia/βplugins/anomalia/(Claude + Codex marketplace manifests)
Development
bun install
bun run cli.ts --help
bun run mcp
bun run mcp:http
bun run typecheck
bun test
bun run build # binary β dist/
bun run build:all # all four targets
bun run vercel-build # MCP bundles under mcp/api/
Releases: push a v* tag β CI typechecks, tests, cross-compiles binaries + .tar.gz +
SHA256SUMS.txt on the GitHub Release, bumps Formula/anomalia.rb,
and publishes anomalia-cli to npm when NPM_TOKEN is set. Details: docs/distribute.md.
License
Copyright Β© 2026 Andrea Buttarelli.
Licensed under the GNU Affero General Public License v3.0 or later. You may use, modify and redistribute it, but derivative works must stay open source under the same license, must keep the copyright notice, and must state their changes β including when offered to users over a network.
Related Skills
Agent-Reach
106.6kGive your AI agent eyes to see the entire internet. Read & search Twitter, Reddit, YouTube, GitHub, Bilibili, XiaoHongShu β one CLI, zero API fees.
headroom
78.3kCompress tool outputs, logs, files, and RAG chunks before they reach the LLM. 20% fewer tokens for coding agents, 60-95% fewer tokens for JSON, same answers. Library, proxy, MCP server.
CowAgent
47.7kOpen-source personal AI assistant & Agent Harness. Plans tasks, runs tools and skills, self-evolves with memory and knowledge. Multi-agent, multi-model, multi-channel. Lightweight, extensible, one-line install.
Scrapling
90.4kπ·οΈ The BEST Web Scraping framework that handles everything from a single request to a full-scale crawl! Don't be shy, join here: https://discord.gg/EMgGbDceNQ and follow here for daily tips and tricks: https://x.com/Scrapling_dev
Languages
Trust signals
From repository metadata: license, adoption, age and documentation. Not a code audit β see the Safety scan above for what the skill file itself contains.
