PrismPoster Creator Tools
NPM · @PRISMPOSTER/CREATOR-TOOLS · 2 COMPONENTS
Social media frame sizes with sourced safe areas, plus aspect-ratio, bitrate and subtitle tools.
Available components
Last scanned (6 hours ago)
Scores higher than 35% of npm servers
Category Design and Media
How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →
Supply Chain Security13
- Malware scan not yet available for this package.Unverified
- Known CVEs could not be checked: the version this server declares is not published in its registry.Unverified
- No install/post-install scripts declared.Pass
- Dependency health could not be checked: the version this server declares is not published in its registry.Unverified
Provenance & Transparency97
- Source repository is publicly reachable at the declared URL. View diagnostics → Pass
- Cryptographically verified build provenance (signed, bound to PrismPoster/creator-tools). View diagnostics → Pass
- Clear OSI-approved license (MIT).Pass
- Actively maintained (last published 0 days ago).Pass
- Disclosure check failed: no security disclosure policy was found in the source repository. See how to fix → Fail
Schema Quality & AI Usability66
- AI-judged instruction clarity (excellent).Pass
- Context-footprint check failed: tool/resource definitions use about 1551 tokens (~221/item across 7 items; 7 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management0
- Stability not yet verified: not enough scan history yet (needs a 30-day window).Unverified
Tool Coverage100
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 100% of tool parameters carry a description.Pass
- Structured output schemas are declared (100% of tools); any adoption earns full credit.Pass
Tool Safety100
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- We read all 7 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
- An AI judge read all 8 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a current MCP spec version (2026-07-28).Pass
Unverified: 1 category
A category scored 0 because we could not verify it: a data source with nothing on this package, evidence we could not reach, or a check we could not run. We only credit what we can confirm.
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 23 Oct 26 53
First indexed and scored.
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 23 Oct 2026 · Analysed npm/@prismposter/creator-tools@0.5.0
Provenance Verified
A signed build attestation was found and verified, binding this exact artifact to the source repository it claims to come from.
| Result | Verified |
|---|---|
| Ecosystem | npm |
| Reason | Verified |
| Discovered via | Registry attestation endpoint |
| Source repo | PrismPoster/creator-tools |
| Certificate issuer | https://token.actions.githubusercontent.com |
| Certificate SAN | https://github.com/PrismPoster/creator-tools/.github/workflows/publish.yml@refs/tags/v0.5.0 |
| Rekor log index | 3421699645 |
| Predicate type | SLSA build provenance https://slsa.dev/provenance/v1 |
| Subject digest | sha512:4840c3d6349ceaf43641376c3720057e67ec31b81dca49642b689518fb5d7b51e9ad5bcad6838c888dfc75923dc81c2a7a9b8a9e4e53579c76e2dcf16 |
Background: How many MCP packages publish verified provenance →
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
calculate_aspect_ratio Calculate aspect ratio and crop/pad plan ~290
Reduce any pixel size to its simplest aspect ratio (1920x1080 is 16:9), round it up to an even or codec-block multiple, and, given a target ratio, return the centre-crop and letterbox/pillarbox plans with the px removed or added per edge. Use this for arbitrary sizes and ratios (cinema 2.39:1, a client's 4:5); when the target is a named platform placement, use get_social_media_placement with sourceWidth/sourceHeight instead, which picks the right ratio for you. Errors on a non-integer or out-of-range size, or on only one of targetRatioW/targetRatioH.
| Name | Type | Req | Description |
|---|---|---|---|
| blockSize | integer | – | Round dimensions up to a multiple of this: 2 for H.264 4:2:0, 16 for macroblock-aligned. Default 2. |
| height | integer | yes | Frame height in px. |
| targetRatioH | number | – | Height term of the target ratio, e.g. 16 for 9:16. Requires targetRatioW. |
| targetRatioW | number | – | Width term of the ratio to crop or pad to, e.g. 9 for 9:16 or 2.39 for 2.39:1. Requires targetRatioH. |
| width | integer | yes | Frame width in px. |
| Name | Type | Req | Description |
|---|---|---|---|
| alignedToBlock | – | yes | – |
| blockSize | integer | yes | – |
| cropPlan | – | yes | – |
| formattedRatio | string|null | yes | – |
| input | object | yes | – |
| padPlan | – | yes | – |
| ratio | – | yes | – |
| referenceToolUrl | string | yes | – |
| targetRatio | – | yes | – |
No examples provided.
check_safe_area Check an element against a placement safe area ~207
Check whether a rectangle (a caption, logo or button, in px on the placement's own frame, origin top-left) stays inside the placement's published safe area, and by how many px it intrudes past each edge if not. Use this to validate a layout before export; use get_social_media_placement for the raw insets. Returns verdict "inside", "intrudes" or "unknown"; "unknown" means the platform publishes no fixed safe area (TikTok) and comes with the reason instead of a guess. Errors on an unknown placement id or a box with non-positive size.
| Name | Type | Req | Description |
|---|---|---|---|
| height | integer | yes | Element height in px. |
| placementId | string | yes | Placement id, e.g. instagram-reels. |
| width | integer | yes | Element width in px. |
| x | integer | yes | Element's left edge in px from the frame's left edge. |
| y | integer | yes | Element's top edge in px from the frame's top edge. |
| Name | Type | Req | Description |
|---|---|---|---|
| box | object | yes | – |
| firstPartySourceUrl | string|null | yes | – |
| frame | object | yes | – |
| intrusionPx | – | yes | – |
| placementId | string | yes | – |
| referenceToolUrl | string | yes | – |
| safeAreaKind | string | yes | – |
| safeRectPx | – | yes | – |
| unpublishedReason | string|null | yes | – |
| verdict | string | yes | – |
| withinFrame | boolean | yes | – |
No examples provided.
convert_subtitles Convert subtitles between SRT, VTT and ASS ~187
Convert subtitle text between SRT, WebVTT and ASS/SSA, optionally shifting every cue by shiftMs, and return the converted text with the cue count and any warnings. Pass the file contents, not a path. The input format is detected from the content unless fromFormat is given. Malformed blocks are skipped with a warning instead of failing the whole file; converting to ASS rounds timings to 10 ms. Errors when the format cannot be detected or no cue could be parsed.
| Name | Type | Req | Description |
|---|---|---|---|
| fromFormat | string | – | Format of the input. Omit to detect it from the content. |
| input | string | yes | The full subtitle file contents as text. |
| shiftMs | integer | – | Move every cue by this many ms: positive is later, negative earlier. Cues pushed before 0 clamp to 0. |
| toFormat | string | yes | Format to convert to. |
| Name | Type | Req | Description |
|---|---|---|---|
| cueCount | integer | yes | – |
| fromFormat | string | yes | – |
| output | string | yes | – |
| referenceToolUrl | string | yes | – |
| shiftMs | integer | yes | – |
| toFormat | string | yes | – |
| warnings | array | yes | – |
No examples provided.
estimate_tempo Estimate tempo from taps or a BPM ~171
Tempo arithmetic for editing to music: pass tap timestamps (ms) to estimate BPM, with a spread figure that shows how steady the taps were, or pass a known bpm to get the beat and 4/4 bar length in ms for cutting on the beat. It works on numbers you supply and does not analyse audio. Taps more than 2.5 s apart restart the count, and outlier intervals (a missed or doubled tap) are discarded. Errors when neither input is given, fewer than two usable taps remain, or bpm is outside 20-400.
| Name | Type | Req | Description |
|---|---|---|---|
| bpm | number | – | Known tempo in beats per minute. Used instead of the estimate when both are given. |
| timestampsMs | array | – | Tap times in ms from a monotonic clock (performance.now()), in order. |
| Name | Type | Req | Description |
|---|---|---|---|
| barMs4_4 | number | yes | – |
| bpm | number | yes | – |
| estimate | – | yes | – |
| quarterNoteMs | number | yes | – |
| referenceToolUrl | string | yes | – |
No examples provided.
estimate_video_bitrate Estimate video file size and bitrate ~270
Video size and bitrate arithmetic for a clip of durationSec. Pass totalKbps to get the encoded file size (bytes, binary MiB and decimal MB); pass targetBytes to get the highest total bitrate that fits that size; add widthPx, heightPx and fps (with totalKbps) to get bits per pixel, a codec-independent check of whether the bitrate suits the resolution. Kbps is decimal (1 kbps = 1000 bit/s) and covers video plus audio. Use it to plan an export or hit an upload cap; it does not inspect or encode files. Errors when neither totalKbps nor targetBytes is given, or when only some of the bits-per-pixel inputs are.
| Name | Type | Req | Description |
|---|---|---|---|
| durationSec | number | yes | Clip length in seconds. |
| fps | number | – | Frame rate, for bits per pixel. |
| heightPx | integer | – | Frame height in px, for bits per pixel. |
| targetBytes | number | – | File-size cap in bytes (25 MB = 25000000) to solve for the maximum total kbps. |
| totalKbps | number | – | Combined video + audio bitrate in kbps. Needed for file size and bits per pixel. |
| widthPx | integer | – | Frame width in px, for bits per pixel. |
| Name | Type | Req | Description |
|---|---|---|---|
| bitsPerPixel | number|null | yes | – |
| durationSec | number | yes | – |
| estimatedBytes | number|null | yes | – |
| formattedBinary | string|null | yes | – |
| formattedDecimal | string|null | yes | – |
| referenceToolUrl | string | yes | – |
| targetBitrateKbps | number|null | yes | – |
| targetBytes | number|null | yes | – |
| totalKbps | number|null | yes | – |
No examples provided.
get_social_media_placement Get one social media placement spec ~228
Look up one social media placement by id and return its frame size, aspect ratio, first-party safe-area insets in px, usable box, and the official page the figures came from. Pass sourceWidth and sourceHeight together to also get the centre-crop and letterbox plan that fits your footage to this placement. Use this when you know the target placement; use list_social_media_placements to browse or compare placements, check_safe_area to test whether an element is clear of the platform UI, and calculate_aspect_ratio for a ratio that is not a platform placement. For TikTok the insets are null with a reason, because TikTok publishes no fixed safe area. Errors on an unknown id (the message lists valid ids) or on only one source dimension.
| Name | Type | Req | Description |
|---|---|---|---|
| id | string | yes | Placement id, e.g. instagram-reels, tiktok-video or youtube-shorts. |
| sourceHeight | integer | – | Height of your source footage in px. Requires sourceWidth. |
| sourceWidth | integer | – | Width of your source footage in px. Requires sourceHeight. |
| Name | Type | Req | Description |
|---|---|---|---|
| firstPartySourceUrl | string|null | yes | – |
| fit | – | yes | – |
| id | string | yes | – |
| kind | string | yes | – |
| label | string | yes | – |
| platform | string | yes | – |
| ratio | string|null | yes | – |
| referenceToolUrl | string | yes | – |
| safeAreaInsetsPx | – | yes | – |
| safeAreaKind | string | yes | – |
| size | – | yes | – |
| unpublishedReason | string|null | yes | – |
| usableBoxPx | – | yes | – |
| usableSharePct | number|null | yes | – |
No examples provided.
list_social_media_placements List social media placement specs ~122
List every supported social media placement (or one platform's) with frame size, aspect ratio, safe-area insets in px, usable box and first-party source URL, in one response. Use this to browse, compare platforms, or find a placement id; use get_social_media_placement when you already know the id and also need a crop/letterbox plan for your footage. The list is a fixed built-in dataset returned whole, with no paging.
| Name | Type | Req | Description |
|---|---|---|---|
| platform | string | – | Only return placements for this platform. Omit for all platforms. |
| Name | Type | Req | Description |
|---|---|---|---|
| canonicalDatasetUrl | string | yes | – |
| count | integer | yes | – |
| placements | array | yes | – |
| platform | string|null | yes | – |
No examples provided.
How do I install the PrismPoster Creator Tools MCP server?
PrismPoster Creator Tools runs locally as an npm package, launched with npx -y @prismposter/creator-tools. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
npm · @prismposter/creator-tools
claude mcp add com-prismposter-creator-tools -- npx -y @prismposter/creator-tools
What is the PrismPoster Creator Tools MCP server?
PrismPoster Creator Tools is an MCP server listed in the public MCP registry as com.prismposter/creator-tools. Social media frame sizes with sourced safe areas, plus aspect-ratio, bitrate and subtitle tools. This page covers its npm package (@prismposter/creator-tools).
Is the PrismPoster Creator Tools MCP server safe to use?
PrismPoster Creator Tools scores 53 out of 100 on VerifyMCP. It declares no install or post-install scripts. Its build provenance is signed and verified. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the PrismPoster Creator Tools MCP server expose?
PrismPoster Creator Tools exposes 7 tools: get_social_media_placement, list_social_media_placements, check_safe_area, calculate_aspect_ratio, estimate_video_bitrate, and 2 more. Their descriptions and schemas cost roughly 1,475 tokens of context every time the server is loaded.
Is the PrismPoster Creator Tools MCP server still maintained?
PrismPoster Creator Tools is still listed as active in the MCP registry. We last reached this channel on 23 October 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.
What licence is the PrismPoster Creator Tools MCP server under?
PrismPoster Creator Tools declares the MIT licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.