MCP-Sentinel: Instructions file for Codex

AGENTS.md

MCP-Sentinel AGENTS.md is an instructions file for Codex, OpenCode from BashaarJavaid/MCP-Sentinel. It costs 2,929 tokens per session, scanned A, original, MIT.

Project instructions for MCP Sentinel, a command-line tool and GitHub Action that checks Model Context Protocol (MCP) servers for security problems before they run. It uses source-code checks and limited runtime checks and reports results in SARIF, a format used by code-scanning tools.

In plain words
What is it for?
Use it when modifying or reviewing the MCP Sentinel codebase. It helps locate components, follow project conventions, run builds and tests, and understand its scanner and GitHub Action.
Why use it?
It gives a coding agent the project's structure, conventions, commands, and safety rules. This reduces guesses, unnecessary changes, and missed checks while working on the repository.

Instructions file for CodexOpenCode

Written for Codex and OpenCode: the file is AGENTS.md. Also seen: mentions AGENTS.md.

This is BashaarJavaid/MCP-Sentinel's own configuration. It tells Codex and OpenCode how to work on MCP-Sentinel 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 MCP-Sentinel configures →

Reuse

Borrowing it

Nothing to install: this file belongs to BashaarJavaid/MCP-Sentinel. 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/BashaarJavaid/MCP-Sentinel/main/AGENTS.md
Clone the repo
git clone --depth 1 https://github.com/BashaarJavaid/MCP-Sentinel

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 MCP-Sentinel AGENTS.md

README.md
[![agentmods](https://agentmods.dev/badge/instructions/bashaarjavaid/mcp-sentinel/agents-md/github.svg)](https://agentmods.dev/instructions/bashaarjavaid/mcp-sentinel/agents-md)
Your own site
<a href="https://agentmods.dev/instructions/bashaarjavaid/mcp-sentinel/agents-md"><img src="https://agentmods.dev/badge/instructions/bashaarjavaid/mcp-sentinel/agents-md/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.

agentmods 80×15 button for MCP-Sentinel AGENTS.md

Your own site · 80×15
<a href="https://agentmods.dev/instructions/bashaarjavaid/mcp-sentinel/agents-md"><img src="https://agentmods.dev/badge/instructions/bashaarjavaid/mcp-sentinel/agents-md.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 2,929 This file is loaded in full into every session.
When invoked 2,929 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.02929 $0.02929
Opus 5.5 $0.01172 $0.01172
Sonnet 5.5 $0.00586 $0.00586
Haiku 4.5 $0.00293 $0.00293

Measured 1mo ago against content hash 1927e30dc6bb, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

MCP-Sentinel 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 1mo 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 · 212 lines

How it starts

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

AGENTS.md

Project

PortunusMCP Sentinel — a build-time static/dynamic security scanner for MCP (Model Context Protocol) servers, mapped to the OWASP Agentic Top 10, shipped as a CLI tool and a GitHub Action that outputs SARIF.

Sentinel is one of three components of the PortunusMCP family:

  1. PortunusMCP Gateway — runtime zero-trust enforcement gateway (separate repo, out of scope here).
  2. PortunusMCP Sentinel (this repo) — build-time scanner.
  3. PortunusMCP Identity — short-lived credential broker (separate repo, out of scope here).

Sentinel helps maintainers and small teams catch MCP server security regressions before release, with actionable source findings and reproducible evidence for supported runtime checks. It combines static source/manifest analysis and adversarial probes against sandboxed targets. A completed scan is not proof that a server is safe; OWASP mappings classify findings, not coverage of all ten categories. Start with supported Python server maintainers and expand according to measured detection gaps and pilot demand.

The historical build context lives in mcp-sentinel-buildplan.md; active contracts and status live in ARCHITECTURE.md and ROADMAP.md. Read the historical brief first for project context, then use the active documents as authority.

Where things live

  • mcp-sentinel-buildplan.md — historical build brief and original scope. Read this first for context; defer to Architecture and Roadmap for current contracts.
  • README.md — public quickstart, install, supported scope, and usage examples.
  • src/sentinel/static/rules/ — one file per detection rule; each rule is independently testable and tagged with its OWASP Agentic Top 10 category (src/sentinel/owasp_mapping.py holds the canonical rule-id → category map).
  • src/sentinel/dynamic/ — the sandbox launcher (sandbox.py) and adversarial prober (prober.py).
  • src/sentinel/report/ — sarif.py (SARIF 2.1.0 writer) and console.py (human-readable terminal report).
  • tests/fixtures/vulnerable_server/ and tests/fixtures/clean_server/ — the reference sample servers every rule is tested against.
  • tests/evals/ and artifacts/ — existing review truth sets and retained evidence; Phase 20 adds independent vulnerable/fixed cases and held-out evaluation. Fixture success and code coverage are not detection accuracy.
  • action.yml — the GitHub Action wrapper around the CLI.

Read the full file on GitHub · 212 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. 1mo ago Changed · -2,557 lines · -37,722 tokens per session 1927e30dc6bb
  2. 1mo ago Changed · +2,500 lines · +36,730 tokens per session 9c49ce965a23
  3. 1mo ago Changed · +12 lines · +159 tokens per session f406bd278975
  4. 1mo ago Changed · +102 lines · +1,324 tokens per session 61ab64b9157f
  5. 1mo ago Changed · +11 lines · +212 tokens per session fbff9bde6111
  6. 1mo ago First seen · 144 lines · 2,226 tokens per session scan A d2ffc301f13c

Subscribe to this mod's changes

MCP-Sentinel AGENTS.md is an instructions file published in the GitHub repository BashaarJavaid/MCP-Sentinel (8 stars, last pushed today), licensed MIT. It adds 2,929 tokens to every session, about $0.0117 per session on Opus 5.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