io.mediawork/mediawork is an MCP server that search Mediawork's directory of post-production and distribution vendors, plus FAQ and plans. Its tool list has not been published yet over http, requires no API key, and scores 52/100 on MCPpedia's security, maintenance and efficiency rubric.
Config is the same across clients — only the file and path differ.
{
"mcpServers": {
"mediawork": {
"url": "https://mcp.mediawork.io/mcp",
"type": "http"
}
}
}Are you the author?
Add this badge to your README to show your security score and help users find safe servers.
Read-only Model Context Protocol access to everything Mediawork publishes publicly: the directory of post-production and distribution vendors, the FAQ, the blog, and subscription plans.
Run this in your terminal to verify the server starts. Then let us know if it worked — your result helps other developers.
npx -y 'pnpm' 2>&1 | head -1 && echo "✓ Server started successfully"
After testing, let us know if it worked:
Five weighted categories — click any category to see the underlying evidence.
pnpm: Path traversal in configDependencies env lockfile allows symlink creation outside node_modules/.pnpm-config
## Summary `pnpm` accepts package names from the env lockfile `configDependencies` section and uses those names directly when creating config dependency symlinks under `node_modules/.pnpm-config`. A malicious repository can commit a crafted `pnpm-lock.yaml` whose env-lockfile document contains a traversal-shaped config dependency name such as `../../PWNED_CFGDEP`. During `pnpm install`, pnpm installs the config dependency and creates a symlink at a path derived from that name. In local testin
pnpm: `patch-remove` could delete project-selected files outside the patches directory
## Summary The `patch-remove` deletion-scope issue tracked as GHSA-72r4-9c5j-mj57 / CAND-PNPM-030 has been addressed in pnpm. A crafted patch entry could resolve outside the configured patches directory and cause `pnpm patch-remove` to delete an arbitrary reachable file. This patch validates the configured directory and every resolved target before unlinking anything, then deletes the final directory entry without following it. ## Security boundary - Traversal and absolute paths that resolve
pnpm: Hoisted install imports lockfile alias outside node_modules
## Summary The hoisted dependency alias issue tracked as GHSA-fr4h-3cph-29xv / CAND-PNPM-059 has been addressed in both pnpm and pacquet. A crafted lockfile alias could be joined directly under a hoisted `node_modules` directory. Traversal aliases could escape that directory, while reserved aliases such as `.bin` or `.pnpm` could overwrite pnpm-owned layout. This patch validates package-name semantics and path containment before graph insertion or filesystem work. ## Security boundary - The
pnpm: `stage download` writes outside its destination directory via manifest name/version traversal
## Summary The staged-tarball filename traversal reported as GHSA-v23m-ccfg-pq9h / CAND-PNPM-038 is fixed on `main` by [pnpm/pnpm#12303](https://github.com/pnpm/pnpm/pull/12303), merged as `65443f4bdf1f0db9c8c7dc58fee25252607e9234`. Before the fix, `pnpm stage download` derived a local filename from registry-controlled package name and version fields. A crafted manifest could escape the selected download directory and overwrite another reachable file. The merged fix validates both fields, deri
pnpm: Reserved bin name deletes PNPM_HOME during global remove
<details> <summary>Maintainer Action Plan</summary> ## Maintainer Action Plan This report is ready to review with the shared patch branch. Start with the PR and the expected fixed behavior, then use the detailed exploit narrative below only if you want to replay the original path. - Advisory: `CAND-PNPM-085` / `GHSA-4gxm-v5v7-fqc4` - Advisory URL: https://github.com/pnpm/pnpm/security/advisories/GHSA-4gxm-v5v7-fqc4 - Shared patch PR: https://github.com/pnpm/pnpm-ghsa-j2hc-m6cf-6jm8/pull/1 - S
Be the first to review
Have you used this server?
Share your experience — it helps other developers decide.
Sign in to write a review.
Others in education
A Model Context Protocol server for searching and analyzing arXiv papers
ARIS ⚔️ (Auto-Research-In-Sleep) — Lightweight Markdown-only skills for autonomous ML research: cross-model review loops, idea discovery, and experiment automation. No framework, no lock-in — works with Claude Code, Codex, OpenClaw, or any LLM agent.
1000+ scientific tools for AI scientists: life science, reserach, literature, and more.
Search open-source research papers across arXiv, OpenAlex, Crossref, PubMed, Semantic Scholar.
MCP Security Weekly
Get CVE alerts and security updates for io.mediawork/mediawork and similar servers.
Start a conversation
Ask a question, share a tip, or report an issue.
Sign in to join the discussion.
Read-only Model Context Protocol access to everything Mediawork publishes publicly: the directory of post-production and distribution vendors, the FAQ, the blog, and subscription plans.
Connector URL: https://mcp.mediawork.io/mcp — Streamable HTTP, no authentication, no sign-up.
Listed in the official MCP Registry as io.mediawork/mediawork.
Claude Code:
claude mcp add --transport http mediawork https://mcp.mediawork.io/mcp
Anything that takes a JSON config:
{
"mcpServers": {
"mediawork": {
"type": "http",
"url": "https://mcp.mediawork.io/mcp"
}
}
}
| Tool | What it does |
|---|---|
search | One query across the directory, FAQ and blog, returning {id, title, url} |
fetch | Read one record in full, by an id from search |
search_facilities | The vendor directory, filtered by service and place |
get_facility | A vendor's full public profile |
list_services | The service taxonomy, for resolving a filter |
list_places | Cities, states and countries with vendors in them |
search_faq | Published FAQ entries |
list_blog_posts / get_blog_post | The blog |
get_plans | Subscription plans and pricing |
search + fetch are the generic pair some clients require; the dedicated tools give richer,
filterable results where a client can use them.
Directory questions usually chain: list_services or list_places to resolve a filter, then
search_facilities, then get_facility. Every result carries its canonical www.mediawork.io URL
so an agent can cite the source.
The deployment holds exactly one environment variable, APP_API_URL, and every byte it serves comes
from https://app.mediawork.io/api/www/* — the same public contract the marketing site consumes.
There are no database credentials and no write path, so "read-only" is a property of the
deployment's shape rather than a promise in a comment.
The Next.js app is in deploy/. Conventions and the traps worth knowing are in
AGENTS.md.
cd deploy
nvm use 24
pnpm install
pnpm dev # http://localhost:3004/mcp
pnpm check # types + lint
pnpm test:unit # Vitest — pure logic, no network
pnpm test # Playwright smoke spec against a real MCP client