langchain-ai/deepagents · error · MarketplaceError
Unsupported marketplace source type: {source.source_type}
Error message
Unsupported marketplace source type: {source.source_type} What it means
materialize_marketplace_source dispatches on source.source_type and supports "url", "github", "git", and local directory types. Any other source_type value falls through all branches and triggers this final error listing the unknown type.
Source
Thrown at libs/code/deepagents_code/plugins/marketplace.py:437
marketplace = _load_marketplace_file(path)
_reject_url_marketplace_with_local_plugins(marketplace, source.value)
return marketplace, path
if source.source_type == "github":
if not isinstance(source, RepositoryMarketplaceSource):
msg = "GitHub marketplace source is missing repository metadata"
raise MarketplaceError(msg)
root = _materialize_marketplace_repository(
source, f"https://github.com/{source.value}.git"
)
return load_marketplace(root), root
if source.source_type == "git":
if not isinstance(source, RepositoryMarketplaceSource):
msg = "Git marketplace source is missing repository metadata"
raise MarketplaceError(msg)
root = _materialize_marketplace_repository(source, source.value)
return load_marketplace(root), root
msg = f"Unsupported marketplace source type: {source.source_type}"
raise MarketplaceError(msg)
def _reject_url_marketplace_with_local_plugins(
marketplace: PluginMarketplace, url: str
) -> None:
"""Reject URL marketplaces whose plugins need a sibling filesystem tree.
Direct marketplace JSON URLs only cache the catalog file. Relative plugin
sources such as `./plugins/foo` cannot be resolved from that cache alone.
Raises:
MarketplaceError: If any plugin entry uses a local relative source.
"""
local_plugins = [
plugin.name
for plugin in marketplace.plugins
if _source_path(plugin.source) is not None
]View on GitHub (pinned to a1af029e6e)
Solutions
- Correct the source_type in the config to one of the supported values (url, github, git, or a local path)
- Upgrade the library if the source type was added in a newer release
- Validate/normalize source_type before constructing the source object
Example fix
// before source = RepositoryMarketplaceSource(source_type="Github", value="org/repo") // after source = RepositoryMarketplaceSource(source_type="github", value="org/repo")
Defensive patterns
Strategy: validation
Validate before calling
SUPPORTED = {"url", "github", "git", "local", "directory"}
if source.source_type not in SUPPORTED:
raise ValueError(f"unsupported marketplace source_type: {source.source_type!r}") Try / catch
try:
marketplace, path = materialize_marketplace_source(source)
except MarketplaceError as exc:
if "Unsupported marketplace source type" in str(exc):
log.error("Check source_type spelling and library version: %s", exc)
raise Prevention
- Use only documented source_type values, lowercase
- Keep library versions in sync across environments that read the same config
- Add config validation at load time
When it happens
Trigger: Passing a source object whose source_type is a typo (e.g. "Github", "https"), a newer type unsupported by the installed library version, or a corrupted/empty value.
Common situations: Typo in a marketplace config file; a config written against a newer library version being read by an older one; programmatic construction with an invalid type string.
Related errors
- Marketplace URL {_redact_url_credentials(url)} contains plug
- {what} must be absolute: {path}
- Home directory is not absolute: {launch_home}. Set $HOME to
- Invalid {SERVER_ENV_PREFIX}ALLOW_FS_TOOLS value: unknown fil
- Invalid {SERVER_ENV_PREFIX}ALLOW_FS_TOOLS value: {raw!r}; ex
AI-assisted analysis of langchain-ai/deepagents@a1af029e6e (2026-08-29).
Data as JSON: /api/errors/249109dd0a7d2073.
Report an issue: GitHub.