Spark - AI Assets Marketplace

io.github.entire-vcPublished by GitHub account entire-vcv4.0.4Updated Oct 24, 2026

Search and fetch AI agents, skills, prompts and MCP connectors from the Spark marketplace.

VerifiedStreamable HTTPWeb executableKnowledge & MemoryAI & ML

Overview

AI-generated overview

Lets an assistant search and fetch AI agents, skills, prompts, bundles and MCP connectors from the Spark marketplace catalog.

What you can do
Provides tools to search the Spark catalog by query, type and domain, fetch full asset details by slug, and retrieve raw prompt or skill content. It also lists popular assets by download count, lists available domains and AI tags for filtering, checks API key status and daily usage, and reports whether fetched content applied cleanly. Two resources expose asset content as markdown and asset lists by type.
When to use it
Useful when you want an assistant to discover and pull ready-made prompts, skills, agents or MCP connectors from a public marketplace instead of writing them from scratch. Best for browsing and retrieving catalog content rather than managing your own files or workflows.
Requirements
Runs as a remote endpoint at spark.entire.vc over streamable HTTP, or locally via npx evc-spark-mcp with Node.js. No API key is required; an optional Spark API key can be supplied in the X-API-Key header. Optional environment variables SPARK_API_URL and SPARK_SITE_URL override the API and site URLs. Network access to the Spark service is needed.
Before you install
The optional X-API-Key header carries a credential; treat it as a secret. The report_outcome tool sends feedback about how fetched content performed back to the Spark service, so consider what that reveals about your usage. Fetched prompts, skills and agent configurations come from a third-party marketplace and should be reviewed before being applied or executed.

Installation

In SourceWeft

  1. Open Spark - AI Assets Marketplace in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/io.github.entire-vc%2Fspark/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "spark-ai-assets-marketplace": {
      "type": "http",
      "url": "https://spark.entire.vc/mcp/"
    }
  }
}

README

Spark MCP

[npm version] [License: MIT] [MCP] [Install via Spark] [Smithery]

MCP server for Spark — your AI toolbox for real work. Search and discover agents, skills, prompts, bundles, and MCP connectors.


Quick Start

bash
npx evc-spark-mcp

That's it. No API key needed.


Setup

Claude Code

bash
claude mcp add spark -- npx -y evc-spark-mcp

Claude Desktop

Add to claude_desktop_config.json:

json
{  "mcpServers": {    "spark": {      "command": "npx",      "args": ["-y", "evc-spark-mcp"]    }  }}

Install in Cursor

This repository includes a Cursor plugin with a remote Spark MCP server and the use-spark skill. No Node.js process or API key is needed for anonymous access.

To test a local install:

bash
git clone https://github.com/entire-vc/evc-spark-mcp.gitmkdir -p ~/.cursor/plugins/local/sparkcp -R evc-spark-mcp/.cursor-plugin evc-spark-mcp/mcp.json \  evc-spark-mcp/server.json evc-spark-mcp/skills ~/.cursor/plugins/local/spark/

Restart Cursor or run Developer: Reload Window, then open Customize and confirm the use-spark skill and Spark MCP server. Enable the server if prompted; its tools include search_assets, get_asset, get_asset_content, and report_outcome. Try: “Find a Spark skill for reviewing Python code.” Local plugin imports must be allowed by your team administrator. Copy the files: Cursor skips symlinks whose target is outside ~/.cursor/plugins/local. See Cursor's local plugin instructions.

For optional authenticated access, set SPARK_API_KEY in the environment used to launch Cursor and restart it. mcp.json uses Cursor's ${env:SPARK_API_KEY} interpolation for X-API-Key; leave it unset or empty for anonymous access. Never put a key in the repository. Get a key from your Spark profile.

Plugin contents:

PathPurpose
.cursor-plugin/plugin.jsonCursor manifest with explicit relative component paths
mcp.jsonStreamable HTTP connection to https://spark.entire.vc/mcp/
skills/use-spark/SKILL.mdSearch, inspect, fetch, apply, and report outcomes
server.jsonRemote server metadata; its version matches the plugin version

The plugin follows the hosted server version (4.0.4), independently of the npm stdio package version. When updating the hosted version, update server.json and the plugin manifest together; npm test checks that they match.

OpenClaw

json
{  "mcpServers": {    "spark": {      "command": "npx",      "args": ["-y", "evc-spark-mcp"]    }  }}

ChatGPT (via MCP bridge)

Any MCP-compatible client works — just point it at npx evc-spark-mcp.


Tools

ToolDescription
search_assetsSearch the Spark catalog by query, type, and domain
get_assetGet full details of an asset by slug
get_asset_contentGet raw prompt/skill content (best for prompts and skills)
list_popularList most popular assets by download count
list_categoriesList available domains and AI tags for filtering
get_api_key_infoCheck your API key status and daily usage
report_outcomeReport what happened when you applied fetched content: applied as is, applied with changes, broke, or not applicable

Resources

URI PatternDescription
spark://assets/{slug}Asset content as markdown
spark://catalog/{type}Asset list by type (agent, skill, prompt, etc.)

What's in the Catalog

Spark is a marketplace of AI workflow assets:

  • Agents — ready-to-use AI agent configurations
  • Skills — capabilities you can add to your agent (like this MCP server)
  • Prompts — tested prompt templates for specific tasks
  • Bundles — curated sets of tools that work together
  • MCP Connectors — integrations with external services

Find, share, and monetize AI tools — all in one place.


Configuration

Environment VariableDefaultDescription
SPARK_API_URLhttps://spark.entire.vc/api/v1Spark API base URL
SPARK_SITE_URLhttps://spark.entire.vcSpark website URL (for links)

Development

bash
# Install dependenciesnpm install
# Run in development modenpm run dev
# Buildnpm run build
# Test with MCP Inspectornpm run inspect

Part of the Entire VC Toolbox

ProductWhat it doesLink
Local SyncVault ↔ AI dev tools syncrepo
Team RelaySelf-hosted collaboration serverrepo
Team Relay SyncObsidian plugin for Team Relayinstall · repo
OpenClaw SkillAI agent ↔ vault accessrepo
Spark MCP ← you are hereMCP server for Spark catalogthis repo
[evc-spark-mcp MCP server]

Community

Find us in other directories

[MCP Badge] [Glama] [Smithery]

License

MIT — Copyright (c) 2026 Entire VC

Source: README.md at commit 572772b

Tools

6

search_assets

Search assets

Search the Spark AI assets marketplace for agents, skills, prompts, prompt chains, MCP connectors and bundles. For when a text query is available but the slug is not known; get_asset describes a known slug. Returns numbered summaries with type, downloads, outcomes, price, tags and URL, or a no-results message. No login required; no acquisition is made. Unmatched nonempty queries may be recorded as unmet catalog needs. A nonempty job ranks text matches by task fit, even with a non-combo sort. For example, search_assets(query='rate limiting', job='add a rate limiter', limit=5).

Parametersjobsorttypelimitqueryrequireddomain

get_asset

Get asset details

Get full details of a Spark asset by its slug — description, metadata, outcome reports, bundled files and the URL on spark.entire.vc. For when a known slug needs inspection before acquisition. Returns Markdown details, which may include embedded content; get_asset_content obtains the raw content and a receipt. Public catalog lookup, no login or download recorded. Missing or unavailable slugs return a not-found message. For example, get_asset(slug='vb-seo-expert').

Parametersslugrequired

get_asset_content

Get asset content

Get the raw content of a Spark asset (prompt text, skill instructions, agent config) — the actual text to apply, not just a description of it. For when a known asset's content is needed for application; get_asset provides details without acquisition. Each successful fetch records a download/acquisition; repeated calls create new receipts and content may change after updates. Free content needs no login. Paid content requires a Spark API key (X-API-Key) or Bearer token and prior purchase or ownership; this tool makes no purchase. Returns content and an application_id for report_outcome, or a not-found/access message. Content may be a source link rather than embedded text. For example, get_asset_content(slug='vb-seo-expert').

Parametersslugrequired

report_outcome

Report outcome

Records the result of applying a fetched Spark asset: applied as is, changed, broke, or not applicable. For when the outcome is known and an application_id from get_asset_content is available, rather than a star rating. Mismatched user/session receipts are rejected; asset owners cannot report on their own assets. Submitting the same application_id updates the report. Authenticated reports count, but team reports do not affect rankings; anonymous reports are unverified. Returns a saved/updated confirmation, or a validation/receipt error. Fields `task`, `note`, `changed_what`, `failed_at`, `expected`, `got` are published on the asset's public page on spark.entire.vc, visible to any visitor. Do not include client data, private paths, keys, emails or URLs with tokens. Your identity is never shown on that page. Example: report_outcome(application_id='<receipt>', result='applied_as_is', task='add a rate limiter').

Parametersgotnotetaskrequiredmodelresultrequiredexpectedfailed_atchanged_whatapplication_idrequired

list_categories

List categories

List available categories (domains and AI tags) in the Spark marketplace. For when domain filter values or taxonomy are needed; search_assets returns assets rather than categories. Takes no parameters. Returns Markdown lists of AI tag names/slugs and domain names/slugs grouped by parent category; domain slugs are accepted by search_assets' domain filter. AI tags are not a search_assets filter. Public catalog lookup, no login or download recorded. For example, list_categories().

Takes no parameters.

Version history

2
  1. v4.0.4LatestOct 6, 2026
  2. v4.0.3Sep 23, 2026

Score

100% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts