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 cyanheads/openstreetmap-mcp-server --skill report-issue-frameworkgit clone --depth 1 https://github.com/cyanheads/openstreetmap-mcp-serverWrote 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/cyanheads/openstreetmap-mcp-server/report-issue-framework)<a href="https://agentmods.dev/skills/cyanheads/openstreetmap-mcp-server/report-issue-framework"><img src="https://agentmods.dev/badge/skills/cyanheads/openstreetmap-mcp-server/report-issue-framework.svg" alt="Measured on agentmods" 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.00052 | $0.03085 |
| Opus 5 | $0.00026 | $0.01543 |
| Sonnet 5 | $0.00010 | $0.00617 |
| Haiku 4.5 | $0.00005 | $0.00309 |
Grade A, and why
report-issue-framework 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 6d 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.
This is a copy
100% identical to report-issue-framework — 0 lines differ, which has more behind it and is treated as the original. This page carries a canonical link to it rather than competing with it.
How it starts
The opening of the file, as written. The whole thing — 301 lines — stays where its author put it; the contents beside it link to each section on GitHub.
When to Use
You've isolated a problem to @cyanheads/mcp-ts-core itself — not your server code, not a misconfiguration, not a missing peer dependency. Typical triggers:
- Framework builder (
tool(),resource(),prompt()) rejects valid input or produces incorrect output createApp()orcreateWorkerHandler()fails on a valid configContextproperties (ctx.log,ctx.state,ctx.inputs, etc.) behave contrary to docs- A utility from
/utils,/errors,/auth,/storage,/servicesreturns wrong results or throws unexpectedly - Type exports are incorrect or missing (compile error on documented usage)
- The definition linter (
bun run lint:mcp) produces false positives or misses real violations
For general gh CLI workflows outside issue filing (PRs, workflows, API access), see the github-cli skill.
Before Filing
- Confirm framework version —
bun pm ls @cyanheads/mcp-ts-coreor checknode_modules/@cyanheads/mcp-ts-core/package.json - Check you're on latest —
bun outdated @cyanheads/mcp-ts-core. If behind, update and retest before filing. - Isolate the issue — reproduce with a minimal handler or standalone script. Strip server-specific services, config, and dependencies. If the bug disappears when isolated, it's likely in your server code.
- Search existing issues — don't file duplicates:
gh issue list -R cyanheads/mcp-ts-core --search "your error message or keyword" --state all
# Assess a close match before commenting — is it already linked to a fix or referenced elsewhere?
gh issue view <number> -R cyanheads/mcp-ts-core --comments
gh api 'repos/cyanheads/mcp-ts-core/issues/<number>/timeline' --paginate \
--jq '.[] | select(.event=="cross-referenced") | .source.issue | "\(.repository.full_name)#\(.number) — \(.title)"'
- For documentation- or contract-shaped requests, audit all three doc layers first — proposals to add reference docs, public-API conventions, attribute/event catalogs, or stability commitments often duplicate surface that already exists. Check
src/for behavior,docs/for human-facing reference, andskills/for agent-facing reference. Skill files markedaudience: externalare the framework's public contract — treat them as authoritative when evaluating whether a documentation gap exists. Also verify the constants or types you'd reference aren't already exported from@cyanheads/mcp-ts-coreor one of its subpaths.
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.
- 6d ago First seen · 301 lines · 52 tokens per session scan A 257a59da6a7e
report-issue-framework is a skill published in the GitHub repository cyanheads/openstreetmap-mcp-server (5 stars, last pushed 3d ago), licensed Apache-2.0. It adds 52 tokens to every session and 3,085 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it A with 0 findings. It is 100% identical to report-issue-framework, differing in 0 lines, and is treated as a copy.
Other skills, from other repositories
wtf-happened
Retrieve a distilled timeline of the current troubleshooting incident and generate a runbook skeleton. Returns a concise summary by default, or the full untruncated timeline on request.
wtf-now
Add a manual observation to the WTF flight recorder journal. The entry is stored as a crafted (intentional) record. Classification of the entry's action type is handled by the background classifier — do not attempt to infer it here.
wtf
Launch the WTF flight recorder for a new troubleshooting incident. Archives any prior incident, prompts for an optional title, then puts Claude into flight recorder mode where significant observations, theories, and corrective actions are journaled automatically.
api-linter
MCP definition linter rules reference. Use when bun run lint:mcp or bun run devcheck reports a lint error or warning (format-parity, schema-is-object, name-format, server-json-, etc.) and you need to understand the rule, its severity, and how to fix it. Every rule ID the linter emits has an entry in this doc.
api-linter
MCP definition linter rules reference. Use when bun run lint:mcp or bun run devcheck reports a lint error or warning (format-parity, schema-is-object, name-format, server-json-, etc.) and you need to understand the rule, its severity, and how to fix it. Every rule ID the linter emits has an entry in this doc.
api-errors
McpError constructor, JsonRpcErrorCode reference, and error handling patterns for @cyanheads/mcp-ts-core. Use when looking up error codes, understanding where errors should be thrown vs. caught, or using ErrorHandler.tryCatch in services.