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 yzonur/sap-adt-mcp --skill legacy-code-docgit clone --depth 1 https://github.com/yzonur/sap-adt-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/yzonur/sap-adt-mcp/legacy-code-doc)<a href="https://agentmods.dev/skills/yzonur/sap-adt-mcp/legacy-code-doc"><img src="https://agentmods.dev/badge/skills/yzonur/sap-adt-mcp/legacy-code-doc/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/yzonur/sap-adt-mcp/legacy-code-doc"><img src="https://agentmods.dev/badge/skills/yzonur/sap-adt-mcp/legacy-code-doc.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.00109 | $0.01155 |
| Opus 5 | $0.00055 | $0.00577 |
| Sonnet 5 | $0.00022 | $0.00231 |
| Haiku 4.5 | $0.00011 | $0.00115 |
Grade A, and why
legacy-code-doc 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 9d 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.
How it starts
The opening of the file, as written. The whole thing — 98 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Legacy Code Documentation
Produce documentation for ABAP objects that have none. The output is for two audiences at once: a developer who must change the code next month, and a manager deciding whether it survives the next migration.
Prerequisites
- sap-adt-mcp ≥ 0.8.1 connected to the target system (
adt_pingto verify). - NetWeaver 7.4x+ — only core ADT read endpoints are needed (source read,
search, where-used).
adt_read_tableexamples additionally need NW 7.55+; skip data sampling on older systems. - SAP user authorizations: repository display only (S_DEVELOP display).
- Read-only mode: fully supported — this skill never writes to SAP. (It may write the documentation to a local file if the user asks.)
- Large sources:
adt_get_sourceoutput is capped per call (~64 KB). For big programs paginate withfirstLine/lastLine, or slice withonlyMethod. Never assume one call returned the whole object — checktruncated/totalLines.
Workflow
1. Scope the object
adt_search_objects if only a fuzzy name is known. Identify the object type —
the strategy differs:
- Program (PROG): fetch the main source, then list its includes
(
adt_browse_packageon its package, or INCLUDE statements from source) and fetch each include that carries logic. - Class (CLAS): fetch
definitionsfirst (the public contract), thenimplementationsmethod by method (onlyMethod) for the ones that matter. - Function group (FUGR): document each function module separately
(
adt_get_sourcewith type function + group); shared TOP include for state.
2. Read with a checklist
While reading, collect — don't paraphrase line by line:
- Entry points: events (START-OF-SELECTION, user-commands), public methods, FM interfaces, selection screen parameters.
- Database touchpoints: every table read (SELECT/JOIN) and especially every write (INSERT/UPDATE/MODIFY/DELETE, CALL FUNCTION ... IN UPDATE TASK). Writes are the risk register.
- External calls: RFCs, BAPIs, file I/O (OPEN DATASET, GUI_*), HTTP, authority-checks, COMMIT/ROLLBACK placement.
- Configuration coupling: hardcoded values, TVARV/Z-config table reads, sy-mandt/sy-sysid branching.
- Smells worth flagging: SELECT in loops, missing authority checks before
writes, swallowed exceptions, dead branches (
adt_grep_sourceacross the package helps find copy-paste siblings).
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.
- 9d ago First seen · 98 lines · 109 tokens per session scan A b2ad92def46b
legacy-code-doc is a skill published in the GitHub repository yzonur/sap-adt-mcp (15 stars, last pushed 22d ago), licensed MIT. It adds 109 tokens to every session and 1,155 once invoked, about $0.0005 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-30.
Other skills, from other repositories
sap-abap-setup
Configure, re-authenticate, and verify a local SAP ABAP MCP profile. Use when no SAP connection is configured, credentials are missing or expired, or the user asks to set up or repair SAP connectivity.
sap-abap-change-assurance
Assess an SAP transport before release by running ATC, ABAP Unit, and optional cross-system comparison, then produce JSON, SARIF, and JUnit evidence. Use when reviewing a transport, preparing a release gate, investigating a failed quality gate, or integrating SAP change checks into CI.
security-review
Perform a focused security review of pending git changes to identify high-confidence security vulnerabilities with real exploitation potential. Use this skill when the user asks for a security review, security audit, vulnerability scan, or wants to check pending changes on a branch for security issues before merging.…
huggingface-llm-trainer
Train or fine-tune language models with TRL or Unsloth on Hugging Face Jobs, including SFT, DPO, GRPO, reward models, and GGUF conversion. Use for cloud LLM training; use huggingface-vision-trainer for vision tasks.
feature-dev
Guide a feature implementation through a structured seven-phase workflow with deep codebase understanding, clarifying questions, parallel architecture design, and quality review. Use this skill when the user asks to build a new feature, add functionality, or wants a methodical approach to implementation rather than…
memstack-business-gdpr
Use this skill when the user says 'GDPR', 'data protection', 'privacy compliance', 'DPA', 'DSAR', 'data subject request', 'cookie consent', 'privacy audit', 'CCPA', or asks 'do I need GDPR for this repo'. Scans the repository to detect what personal data is collected, classifies sensitivity, determines whether GDPR…