MCP server · trust report

app.railway.up.engine-production-3bdc/vhgengine

2 checks that ran failed — credential hygiene and transport config — so this release can’t be trusted as-is.

Publisher
app.railway.up.engine-production-3bdc
Repository
Install
remote only
Versions
4
MCP revision
2025-11-25 · superseded
Inspected
5 of 6 checks · 85%
Scored
2026-09-04 · rubric 1.0.0

What we checked

Six static checks, weighted by risk. Every result reflects only what could be observed in the published package and repository — never intent.

6 checks0 clean5 flagged1 not inspected
  • Injection surface

    warn25% of grade

    Tool descriptions/manifest scanned for instruction-injection patterns (imperatives at the model, hidden text, 'ignore previous', data-exfil URLs).

    server instructions: cross-tool redirection ('instead of call…').

  • Supply chain

    warn25% of grade

    Package provenance: namespace verification, repo linkage, maintainer count, account age, postinstall scripts, typosquat distance.

    no resolvable repository linked to the package (provenance unverifiable)

  • Credential hygiene

    fail15% of grade

    How the server takes secrets (env vs plaintext config vs hardcoded); secrets appearing in tool schemas.

    tool "get_account" has a secret-shaped input parameter "api_key" — secrets must never be tool parameters (the model would supply/handle the credential). tool "get_usage" has a secret-shaped input parameter "api_key" — secrets must never be tool parameters (the model would supply/handle the credential). tool "export_usage" has a secret-shaped input parameter "api_key" — secrets must never be tool parameters (the model would supply/handle the credential). tool "list_runs" has a secret-shaped input parameter "api_key" — secrets must never be tool parameters (the model would supply/handle the credential). tool "quote" has a secret-shaped input parameter "api_key" — secrets must never be tool parameters (the model would supply/handle the credential). tool "add_credits" has a secret-shaped input parameter "api_key" — secrets must never be tool parameters (the model would supply/handle the credential). tool "list_billing_events" has a secret-shaped input parameter "api_key" — secrets must never be tool parameters (the model would supply/handle the credential). tool "create_checkout" has a secret-shaped input parameter "api_key" — secrets must never be tool parameters (the model would supply/handle the credential). tool "create_creator_profile" has a secret-shaped input parameter "api_key" — secrets must never be tool parameters (the model would supply/handle the credential). tool "list_creator_profiles" has a secret-shaped input parameter "api_key" — secrets must never be tool parameters (the model would supply/handle the credential). tool "get_creator_profile" has a secret-shaped input parameter "api_key" — secrets must never be tool parameters (the model would supply/handle the credential). tool "update_creator_profile" has a secret-shaped input parameter "api_key" — secrets must never be tool parameters (the model would supply/handle the credential). tool "delete_creator_profile" has a secret-shaped input parameter "api_key" — secrets must never be tool parameters (the model would supply/handle the credential). tool "create_key" has a secret-shaped input parameter "api_key" — secrets must never be tool parameters (the model would supply/handle the credential). tool "list_keys" has a secret-shaped input parameter "api_key" — secrets must never be tool parameters (the model would supply/handle the credential). tool "revoke_key" has a secret-shaped input parameter "api_key" — secrets must never be tool parameters (the model would supply/handle the credential). tool "delete_account" has a secret-shaped input parameter "api_key" — secrets must never be tool parameters (the model would supply/handle the credential). tool "research_hook_evidence" has a secret-shaped input parameter "api_key" — secrets must never be tool parameters (the model would supply/handle the credential). tool "synthesize_hooks" has a secret-shaped input parameter "api_key" — secrets must never be tool parameters (the model would supply/handle the credential). tool "generate_hooks" has a secret-shaped input parameter "api_key" — secrets must never be tool parameters (the model would supply/handle the credential). tool "generate_hooks_batch" has a secret-shaped input parameter "api_key" — secrets must never be tool parameters (the model would supply/handle the credential). tool "score_hook" has a secret-shaped input parameter "api_key" — secrets must never be tool parameters (the model would supply/handle the credential). tool "score_hooks_batch" has a secret-shaped input parameter "api_key" — secrets must never be tool parameters (the model would supply/handle the credential). tool "remix_hook" has a secret-shaped input parameter "api_key" — secrets must never be tool parameters (the model would supply/handle the credential). tool "list_hooks" has a secret-shaped input parameter "api_key" — secrets must never be tool parameters (the model would supply/handle the credential). tool "get_hook" has a secret-shaped input parameter "api_key" — secrets must never be tool parameters (the model would supply/handle the credential). tool "list_outcomes" has a secret-shaped input parameter "api_key" — secrets must never be tool parameters (the model would supply/handle the credential). tool "report_outcome" has a secret-shaped input parameter "api_key" — secrets must never be tool parameters (the model would supply/handle the credential). tool "start_generate_job" has a secret-shaped input parameter "api_key" — secrets must never be tool parameters (the model would supply/handle the credential). tool "get_job" has a secret-shaped input parameter "api_key" — secrets must never be tool parameters (the model would supply/handle the credential). tool "wait_for_job" has a secret-shaped input parameter "api_key" — secrets must never be tool parameters (the model would supply/handle the credential). tool "cancel_job" has a secret-shaped input parameter "api_key" — secrets must never be tool parameters (the model would supply/handle the credential). tool "list_jobs" has a secret-shaped input parameter "api_key" — secrets must never be tool parameters (the model would supply/handle the credential). tool "set_webhook" has a secret-shaped input parameter "api_key" — secrets must never be tool parameters (the model would supply/handle the credential). tool "get_webhook" has a secret-shaped input parameter "api_key" — secrets must never be tool parameters (the model would supply/handle the credential). tool "delete_webhook" has a secret-shaped input parameter "api_key" — secrets must never be tool parameters (the model would supply/handle the credential). tool "list_webhook_deliveries" has a secret-shaped input parameter "api_key" — secrets must never be tool parameters (the model would supply/handle the credential). tool "redrive_webhook_delivery" has a secret-shaped input parameter "api_key" — secrets must never be tool parameters (the model would supply/handle the credential). tool "get_activity" has a secret-shaped input parameter "api_key" — secrets must never be tool parameters (the model would supply/handle the credential).

  • Permission scope

    unscannable15% of grade

    Declared tools vs. breadth (filesystem, network, exec); flags shell-exec and unbounded filesystem access.

    No source files, package.json, or pyproject were fetched; cannot infer capability scope.

  • Version behavior

    warn10% of grade

    Diff of tool definitions between versions; new permissions or changed descriptions in a patch release (the postmark-mcp class).

    vs prior 2.2.0 (minor bump): tool "signup" description changed (wording only, no injection pattern); tool "signup" gained input property(ies): beta_access_code; tool "pricing" description changed (wording only, no injection pattern); tool "health" description changed (wording only, no injection pattern); tool "get_account" description changed (wording only, no injection pattern); tool "get_usage" description changed (wording only, no injection pattern); tool "get_usage" gained input property(ies): offset; tool "add_credits" description changed (wording only, no injection pattern); tool "create_checkout" description changed (wording only, no injection pattern); tool "create_checkout" gained input property(ies): idempotency_key; tool "delete_account" description changed (wording only, no injection pattern); tool "generate_hooks" description changed (wording only, no injection pattern); tool "generate_hooks" gained input property(ies): creator, audience, stance, first_person_facts, creator_profile_id, creator_profile_version, clarify, language, desired_viewer_action, desired_audience_feeling, requested_market, requested_dialect, requested_content_format, delivery_constraints, hook_length_constraints, footage_constraints, caller_confirmed_constraints; tool "generate_hooks_batch" description changed (wording only, no injection pattern); tool "generate_hooks_batch" gained input property(ies): creator, audience, stance, first_person_facts, creator_profile_id, creator_profile_version, clarify, language, desired_viewer_action, desired_audience_feeling, requested_market, requested_dialect, requested_content_format, delivery_constraints, hook_length_constraints, footage_constraints, caller_confirmed_constraints; tool "score_hook" description changed (wording only, no injection pattern); tool "score_hook" gained input property(ies): topic; tool "score_hooks_batch" description changed (wording only, no injection pattern); tool "score_hooks_batch" gained input property(ies): topic; tool "remix_hook" description changed (wording only, no injection pattern); tool "remix_hook" gained input property(ies): hook_id, archetype, platform, topic; tool "list_hooks" description changed (wording only, no injection pattern); tool "list_hooks" gained input property(ies): request_id; tool "list_outcomes" description changed (wording only, no injection pattern); tool "report_outcome" description changed (wording only, no injection pattern); tool "start_generate_job" description changed (wording only, no injection pattern); tool "start_generate_job" gained input property(ies): creator, audience, stance, first_person_facts, creator_profile_id, creator_profile_version, clarify, language, desired_viewer_action, desired_audience_feeling, requested_market, requested_dialect, requested_content_format, delivery_constraints, hook_length_constraints, footage_constraints, caller_confirmed_constraints; tool "set_webhook" description changed (wording only, no injection pattern); new tool "export_usage" touches a sensitive surface (email/exec/net/fs); new tool "list_runs" touches a sensitive surface (email/exec/net/fs); new tool "quote" touches a sensitive surface (email/exec/net/fs); new tool "list_billing_events" appeared; new tool "create_creator_profile" touches a sensitive surface (email/exec/net/fs); new tool "list_creator_profiles" touches a sensitive surface (email/exec/net/fs); new tool "get_creator_profile" touches a sensitive surface (email/exec/net/fs); new tool "update_creator_profile" touches a sensitive surface (email/exec/net/fs); new tool "delete_creator_profile" touches a sensitive surface (email/exec/net/fs); new tool "research_hook_evidence" appeared; new tool "synthesize_hooks" touches a sensitive surface (email/exec/net/fs); new tool "wait_for_job" appeared; new tool "cancel_job" touches a sensitive surface (email/exec/net/fs).

  • Transport config

    fail10% of grade

    Remote servers: TLS and auth mode (none/token/OAuth). Local servers: whether the manifest indicates it phones home.

    remote MCP endpoint declares NO authentication (unauthenticated remote — nginx-ui/CVE-2026-33032 class)

Version history

Each release plotted by grade against the safe line at B. A version that sinks below the line has lost its trusted standing — the shape of a rug-pull.

VersionPublishedGradeScoreInspectedChange
v2.3.0 · current2026-07-22 D455/6 · 85%C→D in v2.3.0
v2.2.02026-07-22 C62.54/6 · 75%D→C in v2.2.0
v2.1.02026-07-20 D57.55/6 · 85%insf→D in v2.1.0
v2.0.02026-07-18 insufficient1/6 · 25%