Rastro MCP (Rastro-AI/rastro-mcp) is an MCP server listed on the M8ven Trust Index. It scores 74 out of 100, grade C. It declares 34 tools. No publisher has claimed this listing.

C
Emerging
74/100

Rastro MCP

MCP server for Rastro catalog operations, exposing catalog, service, execution, and local visualization tools for use with Claude, Codex, or any MCP-compatible client.

Emerging. No concerning findings. Grades remain capped until the project builds reputation through adoption. Grades reflect the full trust pyramid: code, verification depth, and reputation. New projects cap at C until adoption is earned.

How we verified

⚡ Live Monitored: not connected

Verified is a snapshot. Live keeps it current, and builds your track record.

⚡ Connect GitHub → continuous verification on every pushwhy connect →

Who stands behind it

Rastro-AI

Source: Glama

Is this your MCP?

Claim it to get a verified publisher badge, a free copy of our full audit findings, and direct contact for any high-priority issues we find. Or connect your repo for our deepest verification, Live Monitored: read-only, revoke anytime. What we access →

Install from

The grade above is for the source repository. Registries can serve a different version, so we mark the ones we were not able to read.

// key findings
No credential exfiltration, no sensitive file access, no obfuscation
Static analysis found nothing flowing your secrets to unexpected places.
Open source with a license and README
Anyone can audit the code, the license is declared, and the publisher documents what it does.
🔐
You'll be asked for 3 credentials: RASTRO_AUTH_TOKEN, RASTRO_USER_TOKEN, RASTRO_API_KEY
These are read from process.env at runtime. Make sure you trust where they’ll be sent.
// tools this server exposes34 tools

These names and descriptions are the publisher's own, read from the source code. We print them as written. Our assessment is the findings above, not this list.

catalog_list

List all catalogs for the authenticated organization.

catalog_get

Get a single catalog by ID, including metadata and item counts.

catalog_delete

Delete a catalog (irreversible). Requires explicit confirmation phrase.

catalog_schema_get

Get catalog schema definition with field types, descriptions, scopes, and workflow metadata.

catalog_taxonomy_get

Get catalog taxonomy with hierarchy, attributes, and inheritance.

catalog_update_quality_prompt

Set the catalog's quality prompt (used by the judge tool and readiness checks). Pass the full prompt text to replace the current one.

catalog_update_md

Set the catalog's markdown context (catalog_md). This text is auto-injected into enrichment and mapping prompts. Pass the full markdown to replace.

catalog_get_md

Get the catalog's markdown context (catalog_md).

catalog_items_query

Query raw catalog rows with pagination, text search, sorting, and product/variant awareness.

catalog_items_bulk_update

Bulk upsert catalog items. Each item dict should include __catalog_item_id (database UUID) for updates, plus the fields to set/update. Returns summary with items_processed/created/updated/failed counts.

catalog_item_get

Get a single catalog item by ID with full data, entity type, and taxonomy attributes.

catalog_item_update

Update a single catalog item's data directly. Use for small, targeted edits (1-5 items). For bulk changes, use the snapshot-diff-stage pipeline instead.

catalog_activity_list

List activities for a catalog with optional status/type filters.

catalog_activity_get

Get a single activity by ID with full metadata.

catalog_activity_get_staged_changes

Get staged changes for a pending activity. Returns paginated list of before/after data pairs.

catalog_visualize_local

Build a local HTML artifact for visually inspecting a catalog, an activity's staged changes, or arbitrary rows, then optionally open it in the browser. Pass 'rows' for quick previews without a catalog.

catalog_snapshot_list

List catalog snapshots for rollback/history.

catalog_snapshot_create

Create a manual snapshot for rollback safety.

catalog_snapshot_restore

Restore a catalog to a specific snapshot.

catalog_validate_content

Run regex content checks across all items in a catalog. Pass `rules=[{name, pattern, fields, mode?, case_insensitive?}]` for custom checks, or `use_preset='sunco_corona'` for a ready-made ruleset (no Corona, no CL-codes, no MR-dash, no 'in' as a unit

catalog_duplicate

Duplicate a catalog schema and optionally copy source items.

catalog_activity_save_workflow

Save an activity as a reusable workflow template (csv_importer -> custom_code).

catalog_activity_create_transform

Create a custom transform activity with staged changes, script provenance, and audit metadata. Validates the bundle, stages all changes into a single pending-review activity (chunked internally if needed), and opens the dashboard review URL.

service_map_to_catalog_schema

Map source items to a target catalog schema using AI enrichment. Forces web_search=false.

service_judge_catalog_rows

Judge catalog rows for data quality. Supports multimodal: pass explicit image URLs via 'images' to evaluate whether images match row data. Uses the catalog's schema and quality_prompt automatically when catalog_id is provided.

service_image_host

Download an external image and host it on Supabase Storage. Returns the hosted URL.

service_image_run

Submit an image editing job. Supports: generate, edit, inpaint, bg_remove, relight, upscale.

service_image_status

Get status/progress/result of an image editing run.

service_image_list

List image editing runs with optional filters.

service_image_review

Open a local browser UI to review image generation results. Pass run IDs from service_image_run and optional context per run (product title, finish, etc.). Supports reviewing many runs in parallel.

execution_catalog_snapshot_pull

Export catalog rows + schema to local files (parquet/csv) for Python transforms. Uses fast parallel pagination with retries and safe fallback.

execution_catalog_stage_dataset

One-command staging: compute diff from before/after datasets and create one pending-review activity. For product_grouped catalogs, validates that every variant's product_id has a matching product parent row.

execution_local_diff_compute

Compute row/field diff between before/after local datasets. Outputs staged_changes.jsonl for activity creation.

execution_bundle_validate

Validate a transform bundle before activity creation. Checks files, schema compatibility, row counts, and policy rules.

// environment variables
To run this server yourself, you supply these values. They go in your own MCP client configuration and stay on your machine. The secret label means the value is sensitive, not that the server mishandles it.
configRASTRO_MCP_PARENT_WATCHDOG_INTERVAL_SECONDS
configRASTRO_MCP_ENABLE_DIRECT_ITEM_UPDATEEnable with =true (break-glass only).
configRASTRO_MCP_STAGE_BATCH_SIZEChunk size for staging large activities
configRASTRO_MCP_STAGE_RETRIESRetry count for staging chunks
configRASTRO_MCP_PULL_MAX_CONCURRENCY
configRASTRO_MCP_PULL_PAGE_TIMEOUT_SECONDS
🔐 secretRASTRO_AUTH_TOKENPreferred bearer token env var. Supports user JWTs and API keys.
configRASTRO_ORGANIZATION_IDOrganization UUID override. Recommended when using a user token.
configRASTRO_BASE_URLAPI base URL
🔐 secretRASTRO_USER_TOKENUser JWT alias for RASTRO_AUTH_TOKEN.
🔐 secretRASTRO_API_KEYAPI key alias for RASTRO_AUTH_TOKEN.
configRASTRO_MCP_WORKSPACE_ROOT
configRASTRO_MCP_EXTRA_WORKSPACE_ROOTS
configCATALOG_AGENT_WORKSPACE_ROOT
// quality suggestions

Tool annotations

No tools have read-only/destructive annotations

Add readOnlyHint or destructiveHint annotations to every tool so hosts can warn users before invoking.

All four hints declared on every tool

34/34 tools missing one or more hints — catalog_list (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint); catalog_get (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint); catalog_delete (missing: readOnlyHint, destructiveHint, idempotentHint, openWorldHint), +31 more. OpenAI's directory rejects tools where any of the four hints are missing or non-boolean.

For every tool, set all four hints (readOnlyHint, destructiveHint, idempotentHint, openWorldHint) to explicit true/false values that match the handler’s actual behaviour.

Tests exist

No test files found

Add tests that exercise each declared tool.

Claim the listing to review these findings one by one and send us a correction where you disagree, straight to the team. Claiming also means we tell you when the grade moves, and reach you first if we find anything urgent.

// full audit trail
The findings above are the summary. The full trail, every check we ran, each deduction, the network hosts observed and the dependency advisories, goes to verified publishers, along with an alert whenever a new one lands. Verified publishers can also review each finding and dispute it in one click. Publisher corrections have sharpened several of our checks this month, because the maintainer knows the codebase better than any scanner.
// improvement guidance — verified publishers only
We have 3 concrete improvements we can share with the publisher of this MCP. Each comes with specific guidance to raise the trust score.
// embed badge in your README
[![M8ven Score](https://m8ven.ai/badge/mcp/rastro-ai/rastro-mcp)](https://m8ven.ai/mcp/rastro-ai/rastro-mcp)
Shows your grade and updates automatically. Prefer no grade? Append ?variant=verified to the badge URL.
commit: 3d92502eae06c8d8737a4940e2860dabb37846f8
code hash: 3bef81c3c5b01a7ed63cf0e84a13d8120076bde8a7659b959fdcec76455aed7b
view raw JSON →
Check MCPs from inside your assistant
Tool Check · MCP

Vetting this one by hand? Tool Check is an MCP that scores other MCPs. Add it once and ask Claude, ChatGPT, or any MCP client to grade a server, surface CVEs, check the publisher, and suggest safer alternatives — before you install.

https://m8ven.ai/api/mcp/tool-check
check_toolsearch_toolscompare_toolsrecommend_alternativescheck_publisherreport_concern
How to add it →Free · no account needed · works in any MCP client