Spark - AI Assets Marketplace

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

我该使用它吗

质量与安全性

A
描述质量
100%
模式完整度
81%
命名质量
97%
投毒风险
100%
权限匹配度
100%
协议合规性
100%

基于对工具定义和协议合规性的自动分析。

上下文开销

~1,722token 数(工具定义)
~1.9 KB典型响应大小
对注意力有中等影响(占 128k 上下文窗口的 1.35%)

这是每次将服务器的工具加载到模型上下文窗口时所消耗的大致 token 数。数值越高,可用于其他任务的注意力就越少。

安装

一键安装

将以下内容添加到你的 `claude_desktop_config.json` 文件中:

{
  "mcpServers": {
    "spark": {
      "url": "https://spark.entire.vc/mcp/"
    }
  }
}

远程端点

https://spark.entire.vc/mcp/streamable-http

它能做什么

工具清单

工具(6)

🟢 只读🟡 写入🔴 删除⚪ 未知
🟢search_assets(query, job, type, domain, sort, ...)

Search the Spark AI assets marketplace for agents, skills, prompts, prompt chains, MCP connectors and bundles. Finds assets by text query, for when the slug is not known. Returns a numbered list of short summaries: title, type, downloads, outcome summary, price, tags and the asset's URL on spark.entire.vc.

输入模式

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "Search text (matches title and description)"
    },
    "job": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Job/task the agent is trying to accomplish. Enables job-based relevance ranking (e.g. 'review Python code', 'generate marketing copy', 'analyze data')."
    },
    "type": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Filter by asset type (agent, skill, prompt, prompt_chain, mcp_connector, bundle)"
    },
    "domain": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Filter by domain slug (e.g. 'development', 'marketing')"
    },
    "sort": {
      "default": "combo",
      "type": "string",
      "description": "Sort order: combo, popular, newest, rating. 'combo' = combined quality+ratings+agent outcomes score (default)."
    },
    "limit": {
      "default": 10,
      "type": "integer",
      "description": "Number of results (1-50, default 10)"
    }
  },
  "required": [
    "query"
  ],
  "additionalProperties": false
}

输出模式

{
  "type": "object",
  "properties": {
    "result": {
      "type": "string"
    }
  },
  "required": [
    "result"
  ],
  "x-fastmcp-wrap-result": true
}
🟢get_asset(slug)

Get full details of a Spark asset by its slug — description, metadata, outcome reports, bundled files and the URL on spark.entire.vc. Takes a slug, for example from a search result, a popular list or a link. Returns the full picture of the asset. It does not return the prompt/skill/agent text itself; get_asset_content returns that.

输入模式

{
  "type": "object",
  "properties": {
    "slug": {
      "type": "string",
      "description": "Asset slug (e.g. 'vb-seo-expert', 'vb-python-expert')"
    }
  },
  "required": [
    "slug"
  ],
  "additionalProperties": false
}

输出模式

{
  "type": "object",
  "properties": {
    "result": {
      "type": "string"
    }
  },
  "required": [
    "result"
  ],
  "x-fastmcp-wrap-result": true
}
🟢get_asset_content(slug)

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. Takes a slug. Unlike search_assets and get_asset, this counts as a download/acquisition event, and each call may return different content if the asset was updated. Paid assets require authentication: a Spark API key (X-API-Key header) or a Bearer token in the MCP client configuration. The response ends with an `application_id` line that identifies this fetch; report_outcome takes it as its `application_id` argument.

输入模式

{
  "type": "object",
  "properties": {
    "slug": {
      "type": "string",
      "description": "Asset slug"
    }
  },
  "required": [
    "slug"
  ],
  "additionalProperties": false
}

输出模式

{
  "type": "object",
  "properties": {
    "result": {
      "type": "string"
    }
  },
  "required": [
    "result"
  ],
  "x-fastmcp-wrap-result": true
}
🟢report_outcome(application_id, result, task, changed_what, failed_at, ...)

Records the result of applying an asset that was fetched with get_asset_content: applied as is, applied with changes, broke, or not applicable. The report is tied to the application_id that get_asset_content returned; submitting the same application_id again updates the report. Reports made with an API key are counted; anonymous ones are stored as unverified. 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='<from get_asset_content>', result='applied_with_changes', task='add a rate limiter to the API', changed_what='swapped the fixed window for a token bucket').

输入模式

{
  "type": "object",
  "properties": {
    "application_id": {
      "description": "The application_id at the end of the get_asset_content response.",
      "type": "string"
    },
    "result": {
      "description": "applied_as_is: applied without edits, task solved. applied_with_changes: had to edit it, then solved (requires changed_what). broke: tried to apply and it failed (requires failed_at). not_applicable: read it and did not apply, it does something else (requires expected and got).",
      "enum": [
        "applied_as_is",
        "applied_with_changes",
        "broke",
        "not_applicable"
      ],
      "type": "string"
    },
    "task": {
      "description": "What you were trying to do, one phrase (≤ 200).",
      "type": "string"
    },
    "changed_what": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "applied_with_changes: what you changed (≤ 200)."
    },
    "failed_at": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "broke: the step, tool or command that failed, and the error class (≤ 200)."
    },
    "expected": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "not_applicable: what you were looking for (≤ 200)."
    },
    "got": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "not_applicable: what it actually does (≤ 200)."
    },
    "note": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Anything else worth knowing (≤ 300)."
    },
    "model": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "The model you run on, if you know it. Shown, never ranked."
    }
  },
  "required": [
    "application_id",
    "result",
    "task"
  ],
  "additionalProperties": false
}

输出模式

{
  "type": "object",
  "properties": {
    "result": {
      "type": "string"
    }
  },
  "required": [
    "result"
  ],
  "x-fastmcp-wrap-result": true
}
🟢list_popular(type, limit)

List the most popular Spark assets by download count, optionally filtered by type. Takes no search text; it returns the current top of the catalog by downloads.

输入模式

{
  "type": "object",
  "properties": {
    "type": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Filter by asset type (agent, skill, prompt, prompt_chain, mcp_connector, bundle)"
    },
    "limit": {
      "default": 10,
      "type": "integer",
      "description": "Number of results (1-20, default 10)"
    }
  },
  "additionalProperties": false
}

输出模式

{
  "type": "object",
  "properties": {
    "result": {
      "type": "string"
    }
  },
  "required": [
    "result"
  ],
  "x-fastmcp-wrap-result": true
}
🟢list_categories

List available categories (domains and AI tags) in the Spark marketplace. Returns the domain slugs that search_assets accepts as its `domain` filter, and the AI tags, as a taxonomy of the catalog. Example: list_categories()

输入模式

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}

输出模式

{
  "type": "object",
  "properties": {
    "result": {
      "type": "string"
    }
  },
  "required": [
    "result"
  ],
  "x-fastmcp-wrap-result": true
}

社区

评价此服务器

证据

最近观测

已验证未记录版本6 个工具