Mandem FC Agent
Provides posting to Instagram for publishing approved football-related social media content.
Integrates with Pexels for image search and retrieval, used as part of the image-source ladder for generating visual assets.
Enables human-in-the-loop approval for drafts via Telegram, allowing operators to review and approve posts before publication.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Mandem FC AgentDraft a post about yesterday's 3-1 win over Arsenal"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Football Content Agent
A football content brand that runs itself, end to end, with a human on the publish button. Live in production as @mandemfchq: it watches fixtures and news, drafts opinionated posts with match graphics, and publishes only after approval over Telegram.
Architecture · Runbook · The engine it runs on
At a glance
This repo is the live football implementation of the reusable
ai-social-content-agent
engine. It shows the engine connected to real football inputs: fixtures, news,
lineups, player imagery, Telegram approval, and optional Instagram publishing.
Path | What it contains |
| MCP tool server for football content workflows. |
| Football APIs, news ranking, captions, imagery, Telegram, and publishing. |
| Public notes on data/provider failures and graceful fallback behavior. |
| System design and approval-flow notes. |
| Setup and operating checklist. |
| No-secret tests for captions, season mode, image rules, and safety checks. |
Related MCP server: AgentReacher
Why this exists
This is the production proof for the ai-social-content-agent engine: the same approval-gated, human-in-the-loop core, specialized for football and running live for a real audience. The engine repo is the reusable version; this repo shows it holding up in the wild.
The interesting part is not "generate a caption." It is the operating system around that caption: event polling, ranking, state, an approval gate, async media jobs, image safety checks, deterministic fallbacks, and recovery when a provider fails or live data goes missing.
What it proves
Runs live | Deployed and posting as @mandemfchq. |
35 MCP tools | Fixtures, news ranking, image sourcing, drafts, approval, stylization, publishing. |
Human-in-the-loop | Every draft is approved over Telegram before it can publish. |
Safe imagery | An image-source ladder (official photos, news, Wikimedia, Pexels, generation) with identity and relevance checks. |
Fails gracefully | Deterministic Pillow composites when providers fail or mutate an image. |
Real coverage | 67 passing tests, run in CI. |
How it works
flowchart TD
Cron["Cron or operator"] --> MCP["FastMCP server (35 tools)"]
Telegram["Telegram approval chat"] --> MCP
MCP --> Football["API-Football + news"]
MCP --> DB[("SQLite state")]
MCP --> Images["Image source ladder"]
Images --> Vision["Relevance + identity checks"]
Vision --> Draft["Draft + Telegram preview"]
Draft --> Approval{"Human: yes / edit / skip"}
Approval -->|yes| Job["Async stylize job"]
Approval -->|skip| DB
Job --> Publish["Optional Instagram publish"]Full detail in ARCHITECTURE.md. The generic, reusable engine behind this lives in ai-social-content-agent.
Quick start
python3 -m venv .venv && . .venv/bin/activate
make install
make test # 67 tests, no live secrets needed
cp .env.example .env
make db-initBuilt with
Python · MCP (FastMCP) · SQLite · API-Football · Telegram Bot API · Instagram Graph API · fal.ai / OpenAI image models.
Public-safe notes
A sanitized proof repo. It excludes private workspace memory, live hostnames, IPs,
chat IDs, secrets, and deployment-specific paths. Keep real credentials in .env
locally or in a server env file outside git.
License
MIT, see LICENSE. Use it as a reference implementation for your own human-approved content workflow.
Contact
Built and operated by Mira Solutions, an AI engineering and automation studio.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/mirasolutions06/football-content-agent'
If you have feedback or need assistance with the MCP directory API, please join our Discord server