Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add jmagar/swag-mcp --skill swaggit clone --depth 1 https://github.com/jmagar/swag-mcpWrote 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.
[](https://agentmods.dev/skills/jmagar/swag-mcp/swag)<a href="https://agentmods.dev/skills/jmagar/swag-mcp/swag"><img src="https://agentmods.dev/badge/skills/jmagar/swag-mcp/swag/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/jmagar/swag-mcp/swag"><img src="https://agentmods.dev/badge/skills/jmagar/swag-mcp/swag.svg" alt="Reviewed on agentmods" width="80" height="20"></a>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.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00118 | $0.01110 |
| Opus 5 | $0.00059 | $0.00555 |
| Sonnet 5 | $0.00024 | $0.00222 |
| Haiku 4.5 | $0.00012 | $0.00111 |
Grade A, and why
swag scanned grade A with 1 finding 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 10d 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.
Makes network callslowCapability
Not a fault in itself. Listed so you know the mod talks to something, and to what.
**HTTP fallback**: No meaningful curl equivalent — SWAG config management requires direct filesystem access. If MCP server is unavailable, surface the issue to the user and suggest restarting it. How it starts
The opening of the file, as written. The whole thing — 146 lines — stays where its author put it; the contents beside it link to each section on GitHub.
SWAG Skill
Mode Detection
MCP mode (preferred): Use when mcp__swag-mcp__swag tool is available. The server manages nginx proxy configuration files directly (local or remote via SSH).
HTTP fallback: No meaningful curl equivalent — SWAG config management requires direct filesystem access. If MCP server is unavailable, surface the issue to the user and suggest restarting it.
MCP URL: ${user_config.swag_mcp_url}
MCP Mode — Tool Reference
Single tool: mcp__swag-mcp__swag with an action parameter.
List configurations
mcp__swag-mcp__swag
action: "list"
Returns all proxy configurations with their status (enabled/disabled).
Create configuration
mcp__swag-mcp__swag
action: "create"
server_name: (required) Service name, e.g. "jellyfin", "sonarr"
type: (required) "subdomain" or "subfolder"
upstream_url: (required) Backend URL, e.g. "http://192.168.1.10:8096"
auth_method: (optional) "authelia", "authentik", "basic", "none" — default from server config
enable_quic: (optional) true/false
View configuration
mcp__swag-mcp__swag
action: "view"
server_name: (required) Service name
Edit configuration
mcp__swag-mcp__swag
action: "edit"
server_name: (required) Service name
changes: (required) Description of changes to apply
Update upstream
mcp__swag-mcp__swag
action: "update"
server_name: (required) Service name
upstream_url: (required) New backend URL
Remove configuration
mcp__swag-mcp__swag
action: "remove"
server_name: (required) Service name
DESTRUCTIVE — removes the nginx config file. Always confirm with user before executing.
View logs
mcp__swag-mcp__swag
action: "logs"
log_type: (optional) "access", "error", "fail2ban", "letsencrypt" — default "error"
Manage backups
mcp__swag-mcp__swag
action: "backups"
Lists available configuration backups.
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.
- 10d ago First seen · 146 lines · 118 tokens per session scan A 9aab26493151
swag is a skill published in the GitHub repository jmagar/swag-mcp (5 stars, last pushed 3d ago), licensed MIT. It adds 118 tokens to every session and 1,110 once invoked, about $0.0006 per session on Opus 5. A static security scan graded it A with 1 finding (makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
sop-mcp-configuration
Configure SOP-MCP server for step-by-step SOP execution in any MCP client.
sop-mcp-usage
How to use the SOP-MCP server to execute, create, and improve Standard Operating Procedures.
authoring
Add or edit an MCP server entry in mcptoon's config correctly — stdio/streamable-http/sse shapes, command rules, placeholders, and validation.
connect
Connect any AI agent to MCP servers through mcptoon — one config synced everywhere, one stdio gateway, 99.2% fewer tokens on tool discovery.
mcptoon
Compress MCP tool discovery with the mcptoon CLI. Trigger when a session has a large MCP tool catalog (many servers/tools), when the user mentions token cost, tool discovery, mcptoon, or asks to list/call MCP tools efficiently. Also route here when the user says the MCP tool list is too large, the agent context window…
compare
Structured comparison of 2+ alternatives with consistent criteria and decision matrix.