Jobsite Safety Reference (free)
com.jobsitecerts/safety-referencejobsitecerts.comstreamable-httpv1.0.0Scanned
Free, no-login construction safety tools: OSHA rule text, toolbox talks, 1904 recordability.
6 tools: 1 change things and 5 only read.
- Reads private data · 1
- Reads text others write · 2
- Can send data out · 0
- 1 finding
Anlyon alternative
1 of these tools change something. Run those as governed actions.
Declare what an action changes, and Anlyon puts it under a shared limit, binds every approval to the exact request, and grades the outcome. It works on any HTTPS API you can describe as an action.
Anlyon does not run, proxy or govern this MCP server. A tool your own code calls directly is not routed through Anlyon and is not governed by it.
Import an OpenAPI spec →Tools
Grouped by what each tool does, most consequential first. Open one for its reasons and full description; descriptions are the publisher's own words.
6 tools
Changes things 1Claude Code: ask
osha_recordability_checkRuns Jobsite's deterministic OSHA 29 CFR 1904 decision tree on the facts of an injury or illness: returns the proposed 300-log classification (or the questions still needed), the r…1 finding
Why it is in this group
- The description's first verb is "run": a word for a change.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Findings
- Warn
The server marks "osha_recordability_check" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The description's first verb is "run": a word for a change.
Description, as the server wrote it Runs Jobsite's deterministic OSHA 29 CFR 1904 decision tree on the facts of an injury or illness: returns the proposed 300-log classification (or the questions still needed), the rationale with verbatim 1904 quotes, and any report-to-OSHA deadline (8 or 24 hours). Map the story to the answers; leave out anything not known — unknowns come back as questions, never guesses. Reads and writes no records.
Annotations the server declares
- title: OSHA recordability check
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
Only reads 5Show 5 read-only tools
get_toolbox_talkA ready-to-deliver construction toolbox talk from Jobsite's library of nearly 300 talks, in English or Spanish: title, talking points, a discussion question, duration, and the OSHA…Reads text others writeNo findings
Why it is in this group
- The name "get_toolbox_talk" says "get": a word for reading.
What it can reach
- untrusted-inputThe description's first sentence says "discussion": it reads comments, which other people can write.
Description, as the server wrote it A ready-to-deliver construction toolbox talk from Jobsite's library of nearly 300 talks, in English or Spanish: title, talking points, a discussion question, duration, and the OSHA standards it is built on. Find one by topic or hazard in plain words ("trenching", "heat", "ladder setup") or by standard number ("1926.501"), or fetch one by talk_number. Returns the best match plus up to five other matching titles.
Annotations the server declares
- title: Get a toolbox talk
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
lookup_jobsite_docsLook up how Jobsite (this product) works — features, UI navigation, terminology, account / billing, worker-side experience, what counts as a 'group' vs 'crew', etc.Reads private dataNo findings
Why it is in this group
- The name "lookup_jobsite_docs" says "lookup": a word for reading.
What it can reach
- private-dataThe name "lookup_jobsite_docs" says "lookup" and "doc": it reads documents.
Description, as the server wrote it Look up how Jobsite (this product) works — features, UI navigation, terminology, account / billing, worker-side experience, what counts as a 'group' vs 'crew', etc. Use this for any 'how do I…' / 'where do I find…' / 'what does X mean in Jobsite' question. Returns matching sections from the curated product guide. NOT for OSHA / regulatory questions (use search_law_corpus or search_training_source) and NOT for tenant data lookups (use list_workers, list_expiring_certs, etc.). If a returned section is flagged todo:true, the topic is in scope but not yet documented — say so rather than inventing an answer.
Annotations the server declares
- title: Search the Jobsite product guide
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
search_articlesSearch Jobsite's published marketing content — blog articles, head-to-head COMPETITOR COMPARISON pages (e.g.No findings
Why it is in this group
- The name "search_articles" says "search": a word for reading.
Description, as the server wrote it Search Jobsite's published marketing content — blog articles, head-to-head COMPETITOR COMPARISON pages (e.g. 'Jobsite vs Procore', 'Jobsite vs SiteDocs', 'Jobsite vs SafetyCulture'), and pillar guides. Use this whenever the user asks how Jobsite compares to a competitor ('how are you better than Procore', 'Jobsite vs SafetyCulture', 'why pick you over X'), or asks for a published article on a construction-safety topic. Returns matching articles with a relevant excerpt and a link to the full page. This is DISTINCT from lookup_jobsite_docs (product how-to) and search_training_source (OSHA regulatory). If nothing matches, say you don't have an article on it rather than inventing a comparison.
Annotations the server declares
- title: Search Jobsite articles
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
search_law_corpusSearch the VERBATIM authority corpus behind Jobsite's training: 29 CFR regulation text (per-section, with citations), the CA/WA/OR state rules for heat illness and wildfire smoke, …No findings
Why it is in this group
- The name "search_law_corpus" says "search": a word for reading.
Description, as the server wrote it Search the VERBATIM authority corpus behind Jobsite's training: 29 CFR regulation text (per-section, with citations), the CA/WA/OR state rules for heat illness and wildfire smoke, plus OSHA interpretations and NIOSH/CDC/EPA technical guidance the training cites. Use this when the user asks what an authority ACTUALLY SAYS — exact rule language, a specific citation ('what does 1926.501 require'), trigger heights, employer duties — and quote the returned text with its citation heading and jurisdiction. EVERY match carries an `authority` field: T1 is binding law, T2 is an agency interpretation and T3 is technical guidance. READ IT BEFORE YOU CHARACTERISE THE MATCH — quote a T2/T3 match as what that agency recommends or says, NEVER as what a regulation requires, and never call it a rule. This is DISTINCT from search_training_source (what Jobsite's TRAINING teaches, paraphrased) — prefer search_law_corpus when the user wants the source itself. The corpus spans the topics Jobsite trains on plus the authorities they cite, NOT all of 29 CFR: an empty result means 'not in the corpus', never 'no such rule exists'.
Annotations the server declares
- title: Search the regulation corpus
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
search_regulatory_newsSearch recent regulatory / safety news from the Federal Register (filtered to OSHA) and the OSHA news RSS feed.Reads text others writeNo findings
Why it is in this group
- The name "search_regulatory_news" says "search": a word for reading.
What it can reach
- untrusted-inputThe server marks it openWorldHint: true: it reaches things outside the server's own data.
- untrusted-inputThe description's first sentence says "search" and "rss": it reads web pages, which anyone can write.
Description, as the server wrote it Search recent regulatory / safety news from the Federal Register (filtered to OSHA) and the OSHA news RSS feed. Use for questions about recent rule changes, enforcement memos, or news that might affect a training course's content (e.g. 'any silica updates this year', 'recent fall protection rulemaking'). Returns titles, agencies, dates, URLs, and short summaries — pure pass-through, nothing is persisted. Prefer specific multi-word queries built around an OSHA topic or standard ('respirable silica §1926.1153', 'lockout tagout enforcement', 'fall protection 1926.501'). NOT for tenant-data questions; NOT for general OSHA reference (use search_training_source for established standards).
Annotations the server declares
- title: Search regulatory news
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.
Exfil surface
Which tools read private data, which read text someone else can write, and which can send data out. One of each is a path a prompt injection can use.
No private-data, untrusted-input, outbound path in this server alone: no tool is tagged outbound.
- Reads private data1
- Reads files, mail, messages, databases, secrets, calendars or repositories.
- Reads text others write2
- Brings in text someone else can write: web pages, inbound email, messages, issues and comments.
- Can send data out0
- Can carry data to people or systems: it sends, posts or publishes, or takes a recipient, channel or URL.
Other servers in the same agent add their own tools to these paths. Audit your whole setup to see them together.
Findings
Matches of fixed checks, with the text they matched.
The server marks "osha_recordability_check" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The description's first verb is "run": a word for a change.
History
Changes to its tool definitions and to its remote endpoint, newest first.
No change seen yet. Its tools are rescanned every day, and a remote endpoint is looked at once a week.
Install
Pinned to version 1.0.0. Values in angle brackets are yours to fill in.
claude mcp add --transport http safety-reference https://jobsitecerts.com/api/mcp/publicclaude mcp add --transport http safety-reference https://jobsitecerts.com/api/mcp/publicRun in a terminal.
Claude Code permissions
Allow the reads, ask before a change or a way out, deny the deletes. Paste into .claude/settings.json.
{
"permissions": {
"allow": [
"mcp__safety-reference__lookup_jobsite_docs",
"mcp__safety-reference__search_articles",
"mcp__safety-reference__search_law_corpus",
"mcp__safety-reference__search_regulatory_news",
"mcp__safety-reference__get_toolbox_talk"
],
"ask": [
"mcp__safety-reference__osha_recordability_check"
],
"deny": []
}
}Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. A read that can send data out (it takes a URL, say) asks first too. It assumes the server is installed as safety-reference. Review it before you use it.
Capability tags behind 3 rules
- mcp__safety-reference__lookup_jobsite_docs private-data
- mcp__safety-reference__search_regulatory_news untrusted-input
- mcp__safety-reference__get_toolbox_talk untrusted-input
Pin
Keep the decision: fail CI when the tools change, follow every change, or show a badge.
Pin in CI
Fail a build when the tools you reviewed are not the tools the server serves today.
curl -s "https://anlyon.dev/api/v1/servers/com.jobsitecerts/safety-reference/verify?hash=7b42b88ffebb03c86397e8b758c5622cf03b9aed8732a12c0c39022acb84fe85" | jq -e '.changed == false'Pinned hash 7b42b88ffebb, from Oct 31, 2026, 00:18 UTC.
Watch
Get told when its tools change: a new tool, a new description, a new class.
https://anlyon.dev/servers/com.jobsitecerts/safety-reference/changes.xmlAn Atom feed. Works in any feed reader or Slack's RSS app.
Badge
[](https://anlyon.dev/servers/com.jobsitecerts/safety-reference)Source: MCP Registry. Synced Oct 31, 2026, 00:18 UTC.