MCP Registry

pomerado

0387d321-e94c-5716-a49c-d76cbc6dfc6d | v0.4.0-canary.399
100/ 100
CRITICAL risk
No change since v0.4.0-canary.390
Analyst verdict
Do not install

The AI review rates the findings as likely false positive, but the risk score (100/100) still counts them.

Analysis record

Analysed
Today
Version
v0.4.0-canary.399
Artifact
SHA256 7EA…050
Source
Findings (non-IoC)

Is pomerado safe?

Pomerado is an MCP server that runs inside an AI agent session. It mints integrations between services and runs a Guardian layer with local compute and Playwright browser automation, so an agent using it can drive a real browser. The package declares no special permissions, and the host names listed for it, things like control.page and address.city, read like strings lifted out of JavaScript objects rather than servers it contacts.

The finding worth naming is MCP-TRANSPORT-HARDCODED-TOKEN in dist/typescript/src/destinations/autofill-page-code.js. If a working credential were baked into shipped code, anyone who installed the package could read it and use it, and the file handles autofilling pages, which puts it close to login forms. That is the scenario the finding describes.

Six more hardcoded-token hits land in test material, including dist/typescript/tests/support/credential-masking-corpus.js and dist/typescript/tests/browser/shop-fixture.js. Those files exist to hold fake credentials and a fake storefront, so tokens there are the test data itself. The scanner also flagged fetch calls in example code at dist/typescript/authoring/examples/kernel-page-fetch.js and in a helper at dist/typescript/src/runtime/http-operation.js, which is what an HTTP layer looks like.

Nothing in the package reads SSH keys, AWS credentials, or kube config, and no finding shows data going to a host unrelated to Pomerado's job. The long lists of flagged strings and style matches come from bundled build output, which trips pattern rules by its nature. What's left is one unexplained string in a canary build, worth a look if you plan to run it.

Evidence ledger

Ranked by severity · findings with a source location link to the code viewer

1000 detail rows

YARA Rule Matches

15 rules
SeverityRuleHitsFilesMetadata
LOWpostinstall file download 69
dist/typescript/src/mint/file-readback.jsdist/typescript/src/mint/secret-handle-guards.jsdist/typescript/src/capabilities/intake-contracts.js +66 more
-
LOWNoUseWeakRandom 4
dist/typescript/src/browser/pagination.jsdist/typescript/src/browser/picker.jsdist/typescript/src/browser/wait.js +1 more
-
LOWLocalStorageShouldNotBeUsed 1
dist/typescript/src/runtime/start-state.js
-
LOWUsingCommandLineArguments 2
dist/typescript/src/standalone/mcp-package.jsdist/typescript/src/standalone/mcp-cli.js
-
LOWRedirectToUnknownPath 1
dist/typescript/tests/browser/shop-store.js
-
LOWcredential env files 5
dist/typescript/src/guardian/execution-policy.jsdist/typescript/src/execution/local-operation.jsdist/typescript/src/mint/workspace.js +2 more
-
LOWpostinstall persistence mechanism 18
dist/typescript/src/runtime/same-site.d.tsdist/typescript/src/mint/openai.d.tsdist/typescript/src/runtime/failure-detail.d.ts +15 more
-
LOWpostinstall crypto operations 65
dist/typescript/tests/support/job-store-contract.jsdist/typescript/tests/support/canary.jsdist/typescript/src/browser/dialogs/expected.js +62 more
-
LOWpostinstall registry modification 17
dist/typescript/src/mint/publication-review.jsdist/typescript/src/mint/contracts.jsdist/typescript/src/standalone/mcp-server.js +14 more
-
LOWpostinstall environment access 206
dist/typescript/src/mint/sign-in-recorder.d.tsdist/typescript/src/guardian/review-layout.jsdist/typescript/src/destinations/autofill-fill.d.ts +203 more
-
LOWpostinstall obfuscation 195
dist/typescript/src/mint/contracts.d.tsdist/typescript/src/standalone/cli.jsdist/typescript/src/browser/picker.js +192 more
-
LOWpostinstall file manipulation 110
dist/typescript/src/capabilities/intake-contracts.jsdist/typescript/src/mint/openai.jsdist/typescript/authoring/examples/native-dialog.d.ts +107 more
-
LOWpostinstall system command 266
dist/typescript/src/execution/playwright-execute.jsdist/typescript/src/mint/recovery-contracts.d.tsdist/typescript/src/execution/local-runtime-assets.js +263 more
-
LOWUsingShellInterpreterWhenExecutingOSCommands 1
dist/typescript/src/execution/local-process.js
-
LOWpostinstall network communication 21
dist/typescript/src/runtime/script-card-fill.d.tsdist/typescript/src/standalone/authentication.d.tsdist/typescript/src/runtime/operation.js +18 more
-

Network Indicators

Concrete URLs, domains, IPs, emails, and hashes extracted from the analyzed artifact.

201 total

Loading network indicators

IoC detail rows are loaded outside the initial page render.

Finding Categories

9
Secrets
10
Network
201
IoC Indicators

YARA Rules Matched

15 rules(981 hits)
postinstall file download NoUseWeakRandom LocalStorageShouldNotBeUsed UsingCommandLineArguments RedirectToUnknownPath credential env files postinstall persistence mechanism postinstall crypto operations postinstall registry modification postinstall environment access postinstall obfuscation postinstall file manipulation postinstall system command UsingShellInterpreterWhenExecutingOSCommands postinstall network communication

MCP Server Analysis

MCP servers expose tools and resources to AI assistants. Unlike browser extensions, they run as standalone processes with direct system access. Tool definitions are analyzed for prompt injection, data exfiltration, and tool poisoning patterns.

AI Security Report

AI Security Review

Evidence context: threat category none; evidence quality moderate.

No tool-poisoning findings matched anywhere in this package. That matters, because Pomerado is the shape of package that usually produces them: it mints integrations and runs a Guardian layer over an agent session, so its dist/typescript tree is full of tool registration metadata. None of that metadata carries directives aimed at a model. There are no strings telling an agent to stay quiet, skip confirmation, or reroute a call. The tool descriptions, where they exist, describe tools to a developer.

The credential findings are seven MCP-TRANSPORT-HARDCODED-TOKEN hits, and six sit in test material: dist/typescript/tests/browser/shop-fixture.js (four hits), dist/typescript/tests/support/credential-masking-corpus.js, and dist/typescript/tests/support/session-sign-in-contract.js. A file called credential-masking-corpus is a list of fake secrets used to prove a masking routine works, and a shop fixture is a pretend storefront for browser tests. Those are the last places anyone hides live credentials. The seventh hit is in dist/typescript/src/destinations/autofill-page-code.js, production code rather than a fixture, and that one cannot be verified from what we have. Nothing in this package reads ~/.ssh, ~/.aws/credentials, ~/.kube/config, or application_default_credentials.json. The credential-access rules produced no hits against those paths, and that is the pattern that would turn a token-shaped string into theft.

The network findings are ten NET-FETCH hits across dist/typescript/authoring/examples/kernel-page-fetch.js, dist/typescript/src/runtime/http-operation.js, dist/typescript/src/mint/secret-handle-guards.js, and dist/typescript/tests/browser/shop-fixture.js. Example code, an HTTP helper, a file whose name says it guards secret handles, and browser test scaffolding. The endpoint list tells the same story: address.city, button.click, control.page, co.uk and arg.as are property access chains and TLD fragments the extractor read as hosts, not servers the code calls. The code-smell bucket is similarly uninformative, since those rules fire on any bundled JavaScript, and nothing here needed string obfuscation or carried a malware signature.

The strongest counterargument is the production hit in autofill-page-code.js, paired with a publisher name, GitHub Actions, that says nothing about who wrote the package, and a 0.4.0-canary version. A credential autofill destination with a baked-in token deserves a look. It does not change the conclusion. One unexplained string in build output, with no exfiltration target behind it and no sensitive-path reads in the same tree, is a code-review task. The combination that defines theft, harvest plus a send to a host unrelated to the tool's job, is absent from every finding we have.

Key Reasons

  • Zero tool-poisoning findings: no directives aimed at an AI agent appear in any tool metadata
  • Six of seven hardcoded-token hits are in test fixtures and a credential-masking corpus, files that hold fake secrets by design
  • No credential-access hits against .ssh, .aws/credentials, .kube/config or application_default_credentials.json
  • Every NET-FETCH finding sits in example code, an HTTP runtime helper, a secret-handle guard, or browser test fixtures
  • The endpoint list is property-chain and TLD-fragment noise (address.city, button.click, co.uk) rather than real hosts

False Positive Considerations

  • IoC extractor read property access chains and TLD fragments (address.city, button.click, co.uk) as domains
  • Code-smell rules fire on bundled dist/typescript output
  • credential-masking-corpus.js and shop-fixture.js contain deliberate fake tokens as test data
  • NET-FETCH matches are in examples/ and tests/, not in shipped request paths

Reviewed 2026-10-17; recommended action: monitor; model confidence 68%.

MCP version history

Risk trend by version

25 analyzed versions. Each point is the latest successful scan for that version; failed zero-score scans are hidden. Dates are based on first seen by risky plugins.

Selected
100
Change since first
+4
Change from previous
No change
Versions:
First analyzed version
0.4.0-canary.87
Oct 10, 2026
Risk range
96 to 100
Across analyzed versions
Latest analyzed version
0.4.0-canary.399
Oct 26, 2026
Selected version
critical
Version
v0.4.0-canary.399
Today
Risk score
100
Findings
1383
Change vs previous
No change

Pick any point on the chart to explore that version's code below.

About This Extension

Pomerado's integration minter and Guardian with local compute and native Playwright

Frequently Asked Questions