Borrowing it
Nothing to install: this file belongs to HardMCP/ndpsc-case-search-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.
curl -O https://raw.githubusercontent.com/HardMCP/ndpsc-case-search-mcp/main/CLAUDE.mdgit clone --depth 1 https://github.com/HardMCP/ndpsc-case-search-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/instructions/hardmcp/ndpsc-case-search-mcp/claude-md)<a href="https://agentmods.dev/instructions/hardmcp/ndpsc-case-search-mcp/claude-md"><img src="https://agentmods.dev/badge/instructions/hardmcp/ndpsc-case-search-mcp/claude-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.
<a href="https://agentmods.dev/instructions/hardmcp/ndpsc-case-search-mcp/claude-md"><img src="https://agentmods.dev/badge/instructions/hardmcp/ndpsc-case-search-mcp/claude-md.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.00565 | $0.00565 |
| Opus 5.5 | $0.00226 | $0.00226 |
| Sonnet 5.5 | $0.00113 | $0.00113 |
| Haiku 4.5 | $0.00056 | $0.00056 |
Grade A, and why
ndpsc-case-search-mcp CLAUDE.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 2mo 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 — 51 lines — stays where its author put it; the contents beside it link to each section on GitHub.
ndpsc-case-search-mcp
MCP server for searching North Dakota Public Service Commission case records. Scrapes https://apps.psc.nd.gov/cases/ — no official API exists.
Structure
src/ndpsc_case_search_mcp/
server.py # FastMCP server, health route, main()
models/
case.py # Pydantic models + enums (CaseSummary, CaseDetail, DocketFile, Jurisdiction, CaseStatus, CaseCategory)
services/
scraper.py # HTTP scraping helpers (httpx + BeautifulSoup)
tools/
__init__.py # ALL_TOOLS aggregation
cases.py # search_cases, get_case_detail, get_docket_detail
documents.py # get_document_text, get_document_pdf
Architecture
- Tools are plain async functions registered via
mcp.tool(fn)loop inserver.py - Each tool module exports an
ALLlist;tools/__init__.pyconcatenates them - Models are Pydantic
BaseModelsubclasses with__str__()for markdown output - Services handle all HTTP interaction with the PSC site
- Tools return
str— models are joined withSEPARATOR = "\n---\n" - Enums:
Jurisdiction,CaseStatus,CaseCategoryarestr, Enumtypes used as tool params
Data Source
- Site: https://apps.psc.nd.gov/cases/
- Search is a POST form; field names:
jurisdictionId,caseYear,caseSequence,caseStatusCode,caseTypeCode,caseCategoryCode,entityName,description,filedFromDate,filedToDate,closedFromDate,closedToDate - Dates must be YYYY-MM-DD (ISO format) — MM/DD/YYYY causes 500 errors
- Results capped at 100 per search (server-side pagination exists but requires Java session state that doesn't survive scraping)
- Case detail docket rows are JS-loaded; docket count is extracted from page text instead
Development
uv sync
uv run ndpsc-case-search-mcp # HTTP on 0.0.0.0:8000
fastmcp run fastmcp.json # alternative via fastmcp CLI
Deployment
- Docker:
docker build -t ndpsc-case-search-mcp . - Compose:
compose.yamlwith traefik labels forhardmcp.com/ndpsc-case-search/mcp - Transport: HTTP (streamable), stateless mode, port 8000
- Health: GET
/health
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.
- 2mo ago First seen · 51 lines · 565 tokens per session scan A 1f0cfec24f29
ndpsc-case-search-mcp CLAUDE.md is an instructions file published in the GitHub repository HardMCP/ndpsc-case-search-mcp (0 stars, last pushed 7mo ago), licensed MIT. It adds 565 tokens to every session, about $0.0023 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.
ndpsc-case-search-mcp CLAUDE.md compared with instructions from other repositories
| Mod | Type | Stars | Last push | Licence | Scan | Tokens | Works with |
|---|---|---|---|---|---|---|---|
| ndpsc-case-search-mcp CLAUDE.mdHardMCP/ndpsc-case-search-mcp | Instructions file | 0 | 7mo ago | MIT | A | 565 | Claude Code |
| vscode buildNext.instructions.mdmicrosoft/vscode | Instructions file | 195k | yesterday | MIT | A | 9,719 | GitHub Copilot |
| next.js AGENTS.mdvercel/next.js | Instructions file | 143k | yesterday | MIT | A | 7,461 | Codex, OpenCode |
| langchain AGENTS.mdlangchain-ai/langchain | Instructions file | 149k | yesterday | MIT | A | 4,680 | Codex, OpenCode |
| vscode oss-third-party-notices.instructions.mdmicrosoft/vscode | Instructions file | 195k | yesterday | MIT | A | 5,516 | GitHub Copilot |
| vscode copilot-instructions.mdmicrosoft/vscode | Instructions file | 195k | yesterday | MIT | A | 3,093 | GitHub Copilot |
| deepseek-harness AGENTS.mddeepseek-ai/deepseek-harness | Instructions file | 274k | 2d ago | MIT | A | 4,313 | Codex, OpenCode |