Chemical safety intelligence through the hosted MSDS Chain MCP endpoint: 23 tools for compatibility and mixing order, GHS hazards, PPE, storage, waste disposal, exposure limits, transport classification, multi-region regulatory compliance, SDS lookup and version diffs, and signed audit reports, each answer citing the supplier SDS and revision date it is grounded in.
Install
# from GitHub (first run asks for allowBuilds approval — follow the hint, retry)
dsh plugin --profile web add github:littleblakew/msds-chain-mcp#path:/plugins/dsh
Any plugin you install runs third-party code with your own permissions — it can read your files, use your credentials, and reach the network, and tool approvals don’t sandbox it. GitHub-sourced plugins also run build scripts at install time — pnpm blocks those until you allow them, so an install can stop with ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED or ERR_PNPM_IGNORED_BUILDS; dsh prints the exact key to add under allowBuilds in your profile’s pnpm-workspace.yaml, and the install works on the next run. Allowing a build is a trust decision: only install sources you trust, and pin a commit (github:owner/repo#sha).
README
Chemical safety intelligence for DeepSeek Harness.
This bundle mounts the hosted MSDS Chain MCP endpoint through the in-box
@deepseek-ai/dsh-mcp-client bridge — no server to run locally.
MCP tools covering compatibility and mixing-order checks, GHS hazard analysis, PPE recommendations, storage and waste-disposal guidance, occupational exposure limits, transport classification, multi-region regulatory compliance (EU/US/CN/JP/KR/CA/AU/TW/SG), safer alternatives, protocol text parsing, SDS section lookup and version diffs, and signed audit reports. Every answer cites the supplier SDS and revision date it is grounded in.
Install
dsh plugin --profile web add github:littleblakew/msds-chain-mcp#path:/plugins/dsh
Configure
An API key is required — there is no anonymous tier on this endpoint. Create one at msdschain.lagentbot.com → API Keys (free plan available), then:
export MSDS_API_KEY=sk-msds-your-key
Start dsh with that variable set. The tools register on ctx.tools under the
msds-chain namespace, so the model sees mcp__msds-chain__ask_chemical_safety,
mcp__msds-chain__check_chemical_compatibility, and so on.
Verifying it loaded
⚠️ A missing or invalid key fails silently. The endpoint answers 401, no tools
register, and dsh prints nothing to the console — the harness starts normally and the
model simply has no mcp__msds-chain__* tools. (Measured against dsh 0.1.0-rc.6.)
So check the key itself rather than watching for an error:
curl -s -o /dev/null -w '%{http_code}\n' -X POST https://mcp.lagentbot.com/mcp \
-H "Authorization: Bearer $MSDS_API_KEY" \
-H 'Content-Type: application/json' \
-H 'Accept: application/json, text/event-stream' \
-d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-06-18","capabilities":{},"clientInfo":{"name":"probe","version":"0"}}}'
200 means the key works; 401 means it does not.
This bundle deliberately leaves failOnStartupError at its default (false). Setting it
to true does surface the 401 loudly — but it aborts the whole plugin tree, so dsh
refuses to boot at all. A chemical-safety plugin should not be able to take down your
harness because our endpoint had a bad minute.
Which tool to use
For a broad safety question — hazards, PPE, first aid, spill response, storage,
disposal — call ask_chemical_safety. It returns one answer grounded in a specific
supplier SDS. The granular tools are for when you want that one structured field.
Self-hosting
To point at your own core instead of the hosted endpoint, override the row from a
later layer (profile cordis.patch.yml or --patch) — see the comment block in
cordis.patch.yml.
Links
- MCP server source and tool reference: https://github.com/littleblakew/msds-chain-mcp
- Product: https://msdschain.lagentbot.com
MIT licensed.
Links
More in this category
Tencent/WeKnora#dsh-weknora★ 37401
Four read-only tools over a WeKnora knowledge base: list knowledge bases, hybrid passage search, reassemble one document's chunks in order, and WeKnora's own cited RAG or ReAct-agent answer with a resumable session id.
DayuanJiang/next-ai-draw-io#dsh-plugin★ 36932
Draws draw.io diagrams in DeepSeek Harness through the next-ai-drawio MCP server: the link in the reply opens a live preview in the right sidebar, you can edit the diagram by hand, and each AI change is a version you can restore. Node.js 18+; npx downloads the MCP server on first use.
superdesigndev/treg★ 7929
Tool catalog for agents: search ~2,600 external endpoints (SEO and SERP, backlinks, social, people and company enrichment, ad libraries, scraping) by the task you want done, read each one's parameters and per-call price, then call it with the credential injected server-side. Ships the skill plus an MCP row that stays disabled until TREG_TOKEN is set.
T-Auto/dsh-ops★ 5798
Provides bash, PowerShell 7, and high-performance Rust tools for DSH on Windows to reduce token usage.
sixtysevenlf/dsh-blender-plugin★ 2081
Lets a DSH agent drive a local Blender over a direct TCP channel with 15 tools: viewport frames, custom-angle renders, Python execution, headless and job offload, transaction rollback, and a planning layer of 228 ops across 34 families.
yjl9903/AnimeGarden#dsh★ 1400
Anime Garden for DSH: search anime torrent resources from 動漫花園, 蜜柑计划, 萌番组 and ANi inside DSH — via chat, a sidebar panel with fansub and type filters, a seasonal calendar, and an in-app floating player.
Community comments
Comments are public GitHub Discussions. Loading them connects to GitHub and Giscus; a GitHub account is required to post.