media-gen-mcp: Instructions file for Codex

AGENTS.md

media-gen-mcp AGENTS.md is an instructions file for Codex, OpenCode from creative-nam/media-gen-mcp. It costs 2,182 tokens per session, scanned A, original, Unlicense.

Project instructions for a Python MCP server that gives OpenCode access to image and video generation providers through one interface.

In plain words
What is it for?
Use them when changing the server, adding media providers, handling jobs, updating tool schemas, or running tests.
Why use it?
They help coding agents follow the project's architecture, avoid exposing API keys, and check previous work before making structural changes.

Instructions file for CodexOpenCode

Written for Codex and OpenCode: the file is AGENTS.md. Also seen: reads .claude/ paths; mentions AGENTS.md; mentions OpenCode.

This is creative-nam/media-gen-mcp's own configuration. It tells Codex and OpenCode how to work on media-gen-mcp itself, so it is not a mod to install elsewhere. Copy it as a starting point and replace the rules that are about this project. Everything media-gen-mcp configures →

Reuse

Borrowing it

Nothing to install: this file belongs to creative-nam/media-gen-mcp. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.

Copy the file
curl -O https://raw.githubusercontent.com/creative-nam/media-gen-mcp/main/AGENTS.md
Clone the repo
git clone --depth 1 https://github.com/creative-nam/media-gen-mcp

Made for: Codex, OpenCode.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for media-gen-mcp AGENTS.md

README.md
[![agentmods](https://agentmods.dev/badge/instructions/creative-nam/media-gen-mcp/agents-md.svg)](https://agentmods.dev/instructions/creative-nam/media-gen-mcp/agents-md)
Your own site
<a href="https://agentmods.dev/instructions/creative-nam/media-gen-mcp/agents-md"><img src="https://agentmods.dev/badge/instructions/creative-nam/media-gen-mcp/agents-md.svg" alt="Measured on agentmods" height="20"></a>
Per session 2,182 This file is loaded in full into every session.
When invoked 2,182 The same file — it is already loaded in full.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.02182 $0.02182
Opus 5 $0.01091 $0.01091
Sonnet 5 $0.00436 $0.00436
Haiku 4.5 $0.00218 $0.00218

Measured 7d ago against content hash c13ed1ca32ec, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-07, from the pricing page.

Security

Grade A, and why

media-gen-mcp AGENTS.md scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 7d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

AGENTS.md · 81 lines

How it starts

The opening of the file, as written. The whole thing — 81 lines — stays where its author put it; the contents beside it link to each section on GitHub.

AGENTS.md

Project

media-gen-mcp is a personal MCP server that exposes image and video generation tools to OpenCode. It wraps multiple AI media providers (Agnes AI, Google Gemini, more later) behind one interface, so choosing a provider is a config/runtime decision, not a code change per provider.

Read ARCHITECTURE.md before making any structural change, and check progress-tracker.md for current status and past incidents before starting work. ARCHITECTURE.md governs what the system looks like, right now — provider interface, trust-level wrapping, job persistence, module layout, tool schemas. progress-tracker.md governs what's been done, what's open, and what's already gone wrong once — read it so you don't re-discover a lesson the hard way. This file (AGENTS.md) governs how you work, independent of both.

Stack

  • Python, mcp SDK for the protocol layer
  • httpx for outbound HTTP calls (Agnes)
  • official google-genai SDK for Gemini
  • pydantic for response schema validation
  • python-dotenv for local secrets
  • pytest for tests

Hard rules

  • Never log, print, or write API keys anywhere — including error messages and test fixtures. Secrets live only in .env (gitignored), read via environment variables.
  • Machine-specific identifiers leak too — absolute paths under a user's home directory, usernames, local tool-install locations. These aren't secrets in the credential-unlocks-access sense, but they're a real leak class on their own, and they've been found twice in this project in files that don't look like "config" at a glance: a tool's cache directory (graphify-out/.graphify_python) and an agent hook-command file (.claude/settings.json). Don't assume machine paths only hide in obvious places.
  • When a leak-shaped problem is found once, don't just fix that instance — check whether the same pattern exists elsewhere before considering it closed. In this project the second machine-path leak was found by accident, unrelated to what was being worked on, and it prompted a full history sweep (git filter-repo) rather than a single-file fix. That full-sweep response is the default for this shape of discovery, not the exception.
  • Any provider marked untrusted in config.yaml goes through the full ResponseValidator path, no exceptions and no "temporarily skip it to get something working" — wire it through the validator from the start.
  • Every provider, trusted or not, still gets the generic hardening: timeout, size cap, content-type check, safe filename generation. This isn't optional just because a provider is marked trusted.
  • Don't add a new dependency without flagging it first — this is a personal, free-tier project; keep the footprint small.
  • Don't guess at a provider's response shape. If Agnes's actual response format for a given endpoint isn't confirmed by a real call, say so and ask, rather than inventing a plausible-looking schema.
  • Never assume the MCP server's own process cwd is the user's project directory (see ARCHITECTURE.md for why) — always go through the explicit project_dir argument.
  • For untrusted providers, _extract_image_bytes reads a raw dict, not the validated Pydantic model — validation and extraction are two separate passes over the same data, not one enforcing the other structurally. Every field extraction touches must be explicitly required and type-checked in that provider's schema (confirmed by audit for Agnes/Cloudflare/HuggingFace as of Milestone 5). If you add a new provider, add a field to extraction, or change a schema, re-verify this by hand — nothing enforces it automatically.

Read the full file on GitHub · 81 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 7d ago First seen · 81 lines · 2,182 tokens per session scan A c13ed1ca32ec

Subscribe to this mod's changes

media-gen-mcp AGENTS.md is an instructions file published in the GitHub repository creative-nam/media-gen-mcp (0 stars, last pushed 25d ago), licensed Unlicense. It adds 2,182 tokens to every session, about $0.0109 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other instructions, from other repositories

codex AGENTS.md

AGENTS.md instructions for openai/codex, covering rust/codex-rs, the codex-core crate, code review rules, crate api surface and model visible context.

openai/codex · 5,182 tokens

vscode buildNext.instructions.md

Working notes and architecture documentation for the new esbuild-based build system in build/next. Use when making changes to the new build pipeline (transpile/bundle commands, NLS plugin, source-map handling, resource copying, or self-hosting watch tasks).

microsoft/vscode · 6,785 tokens

next.js AGENTS.md

AGENTS.md instructions for vercel/next.js, covering next.js development guide, codebase structure, monorepo overview, core package: packages/next and other important packages.

vercel/next.js · 7,296 tokens

langchain AGENTS.md

AGENTS.md instructions for langchain-ai/langchain, covering global development guidelines for the langchain monorepo, corridor security analysis, project architecture and context, monorepo structure and development tools & commands.

langchain-ai/langchain · 4,469 tokens

vscode oss-third-party-notices.instructions.md

Instructions for microsoft/vscode, covering vs code oss third-party-notices pipeline, architecture, pipeline flow in ci, applying the notice (cutover) and fallback chain (never fail the build).

microsoft/vscode · 5,001 tokens

spec-kit AGENTS.md

AGENTS.md instructions for github/spec-kit, covering agents.md, about spec kit and specify, quickstart — add a new integration in 5 steps, integration architecture and integrationmanifest — file tracking.

github/spec-kit · 7,104 tokens