BerriAI/litellm · error · ValueError

GET skill is not supported for {custom_llm_provider}

Error message

GET skill is not supported for {custom_llm_provider}

What it means

Provider-support check in get_skill: routing fell through the litellm_proxy branch and no GET-skill handler exists for the resolved custom_llm_provider, so single-skill retrieval is unsupported for that provider.

Source

Thrown at litellm/skills/main.py:552

            custom_llm_provider = "anthropic"

        # Route to LiteLLM DB if custom_llm_provider="litellm_proxy"
        if custom_llm_provider == LlmProviders.LITELLM_PROXY.value:
            return _get_litellm_skills_handler().get_skill_handler(
                skill_id=skill_id,
                user_api_key_dict=_get_user_api_key_auth_from_kwargs(kwargs),
                _is_async=_is_async,
                logging_obj=litellm_logging_obj,
                litellm_call_id=litellm_call_id,
            )

        # Get provider config for external providers (Anthropic, etc.)
        skills_api_provider_config: BaseSkillsAPIConfig | None = ProviderConfigManager.get_provider_skills_api_config(
            provider=litellm.LlmProviders(custom_llm_provider),
        )

        if skills_api_provider_config is None:
            raise ValueError(f"GET skill is not supported for {custom_llm_provider}")

        # Validate environment and get headers
        headers = extra_headers or {}
        headers = skills_api_provider_config.validate_environment(headers=headers, litellm_params=litellm_params)

        # Get API base
        from litellm.llms.anthropic.common_utils import AnthropicModelInfo

        api_base: Final = AnthropicModelInfo.get_api_base(litellm_params.api_base)

        # Transform request
        url, headers = skills_api_provider_config.transform_get_skill_request(
            skill_id=skill_id,
            api_base=api_base or DEFAULT_ANTHROPIC_API_BASE,
            litellm_params=litellm_params,
            headers=headers,
        )

View on GitHub (pinned to 77b7c6c40c)

Solutions

  1. Use a provider that supports retrieving skills, or implement it in a custom provider wrapper for {custom_llm_provider}.
Defensive patterns

Strategy: validation

When it happens

Trigger: Thrown at litellm/skills/main.py:552 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of BerriAI/litellm@77b7c6c40c (2026-08-18). Data as JSON: /api/errors/1b1e9a4c494bb3ab. Report an issue: GitHub.