Cherry Studio Setup Guide for the Claude, GPT and DeepSeek APIs
As of 2026-10-07, connecting Cherry Studio to the Claude API works like this: in Settings → Model Services, add a provider, choose the Anthropic type and enter only the root address https://api.qcode.cc/api, without /v1. For GPT and Chinese models such as DeepSeek, choose the OpenAI type with https://api.qcode.cc/openai, and use the same cr_ key for both. This page walks through the steps, model IDs and common errors point by point, based on the QCode docs and the official Cherry Studio docs.
Updated 2026-10-07
Four things to know before you start
Provider type for Claude
Set the API address to https://api.qcode.cc/api. The QCode docs state that Claude cannot go through the OpenAI type, and Cherry Agent also needs an Anthropic-protocol endpoint.
Type for GPT and Chinese models
Set the API address to https://api.qcode.cc/openai; Cherry appends the rest automatically to form /openai/v1/chat/completions.
How to fill in the API address
Enter the root address only, without /v1 or any path; typing /v1 yourself turns it into /v1/v1. If you really need to switch off the automatic path, end the address with #.
One key for both types
Both types take the same cr_ key, created in the console. Cherry can also rotate several keys on one provider, separated by plain ASCII commas.
How Cherry Studio connects to a custom API
As of 2026-10-07, connecting Claude, GPT or DeepSeek in Cherry Studio always means adding a custom provider under Settings → Model Services: Claude uses the Anthropic type with https://api.qcode.cc/api, while GPT and Chinese models use the OpenAI type with https://api.qcode.cc/openai. Cherry Studio is an open-source desktop client (the Community Edition is licensed under AGPL-3.0) for Windows, Mac and Linux. Its official docs list 60+ built-in providers, and a service that is not on the list can still be added as a custom provider as long as it offers a protocol such as OpenAI-compatible or Anthropic-compatible. The QCode docs note that it has no account system and is configured purely locally: you need neither a Cherry Studio account nor an account with any model vendor.
Recent Cherry Studio releases (as of 2026-10-07)
As of 2026-10-07, the newest stable release on GitHub Releases is v2.1.4, published on 2026-09-30 (UTC). Its release notes read "Add Claude Sonnet 5.5 and Opus 5.5 with thinking controls and native web-tool eligibility," and it also adds GPT-6.1 Sol support for OpenAI and OpenAI Codex. v2.1.3 (2026-09-24) says providers are verified and enabled automatically after you add models, and v2.1.0 (2026-09-18) added DeepSeek V4.1 Flash. These are updates to Cherry's built-in model catalog; when you connect QCode, you still enter model IDs as the QCode docs describe and check them against /models. The QCode Cherry Studio doc was verified against the official docs for v2.0.14, so interface labels may differ between versions.
Release and documentation timeline
Cherry Studio v2.0.14 ships; the QCode Cherry Studio doc was verified against the official docs for this version. From this release on, errors show the provider's actual details instead of generic messages such as "400 null".
The QCode Cherry Studio doc is updated and last verified; Cherry Studio v2.1.0 ships the same day, adding DeepSeek V4.1 Flash to the built-in catalog.
Cherry Studio v2.1.4 ships (UTC), adding Claude Sonnet 5.5 and Opus 5.5 to the built-in catalog; as of 2026-10-07 it is the newest stable release on GitHub.
Confirmed vs not documented
Confirmed (verbatim in the docs)
Each of the following can be checked word for word in the QCode docs, the official Cherry Studio docs or the GitHub release notes: Claude uses the Anthropic type at https://api.qcode.cc/api; GPT and Chinese models use the OpenAI type at https://api.qcode.cc/openai; both types take the same cr_ key; the API address is the root URL only, and only a trailing # turns off path appending; Claude placed under the OpenAI type is rejected with model_not_available_on_endpoint; on QCode the OpenAI Responses endpoint serves only the GPT family; Cherry Agent needs an Anthropic-protocol endpoint (stated in both the QCode and the Cherry docs); a provider must be switched on with its enable toggle, and only models added to its list appear in the model pickers; v2.1.4 was released on 2026-09-30.
Not documented or not verified
This page draws no conclusion on three points. First, the QCode doc was verified on v2.0.14 and itself warns that the settings page is labelled either Model Services or Model Provider, and that the button for fetching the model list may read as syncing models in some versions; this page has not tested the v2.1.4 interface, so go by your own client. Second, the QCode Cherry Studio doc gives only one setup for Chinese models, the OpenAI type; other combinations are not documented there, and this page does not describe them either. Third, image generation and image editing have their own Base URL fields, and the QCode doc states that Cherry's behavior there was not verified on that page.
Which provider type to choose
Anthropic vs OpenAI
It depends on the model family. Claude only works through the Anthropic type (https://api.qcode.cc/api), and QCode's OpenAI endpoint rejects Claude outright; GPT and the Chinese models GLM, Kimi, DeepSeek and Qwen go through the OpenAI type (https://api.qcode.cc/openai). The other dividing line is Agent: both the QCode and the Cherry docs state that Cherry Agent needs an Anthropic-protocol endpoint, so if you want Agent inside the app, set up the Anthropic type.
OpenAI vs OpenAI Responses
Both take https://api.qcode.cc/openai as the API address; the difference is which models they reach. The QCode doc states that the Responses endpoint serves only the GPT family, with Claude and Chinese models unavailable there. If you only need GPT, either works; if you also want DeepSeek or another Chinese model, choose the OpenAI type.
Six steps to connect Claude (then GPT and DeepSeek)
① Open Settings → Model Services, click the add-provider button below the list, and give the provider a name in the custom-provider dialog. ② Choose the Anthropic type, set the API address to https://api.qcode.cc/api, and paste the cr_ key you created in the console. ③ Fetch the model list, or click + to add a model ID by hand, for example claude-sonnet-5; only models added to the list appear in the model pickers. ④ Switch on the enable toggle at the top right of the provider, then use the check button and pick a model to test the connection. ⑤ For GPT and Chinese models: choose the OpenAI type, set the API address to https://api.qcode.cc/openai, use the same cr_ key, and add model IDs such as gpt-6-sol, deepseek-v4.1-flash or glm-5.3. ⑥ Select the new model in any chat window and send a message; if no reply comes back, first check that the type matches the address.
On QCode
On QCode, one cr_ key (created in the console) works across protocols, and the request path decides which protocol is used: claude-sonnet-5, claude-sonnet-5-5 and claude-opus-5-5 go through the Anthropic type at https://api.qcode.cc/api; gpt-6-sol, gpt-5.6-terra, deepseek-v4.1-flash, glm-5.3, kimi-k3 and qwen3.8-max go through the OpenAI type at https://api.qcode.cc/openai. The three access domains offer the same features and accept the same key: us.qcode.cc (Los Angeles) serves North America and Europe, and for networks in mainland China the docs suggest asia.qcode.cc, with the paths unchanged. Usage is billed per token; see /models for each model's rate. Every request can be looked up on probe.qcode.cc by entering your key.
Frequently asked questions
Which provider type should I choose for Claude in Cherry Studio?
The Anthropic type. Set the API address to https://api.qcode.cc/api, enter your cr_ key, then add a model ID (such as claude-sonnet-5) or fetch the model list. The QCode docs state that Claude models can only use the Anthropic endpoint, not the OpenAI type. Cherry's built-in Anthropic provider defaults to https://api.anthropic.com; the approach the QCode docs give is to add a separate custom provider.
What does model_not_available_on_endpoint mean?
It means the protocol is wrong, not the key. Put a Claude model under the OpenAI type and QCode returns an error like Model 'claude-sonnet-5' is not available on this endpoint. The docs state that this check runs before authentication, so it appears even when the key is invalid; a wrong key, by contrast, returns Invalid API key. The fix: move Claude to the Anthropic type at https://api.qcode.cc/api.
Should the API address include /v1 or a trailing slash?
Neither. Enter the root address only and Cherry Studio appends the path for the type you chose; typing /v1 yourself turns it into /v1/v1. The QCode endpoints doc also says, as a general rule for BASE_URL, not to add a trailing slash, since that produces //v1/messages and a 404. If you really need a full address, end it with #: Cherry then stops appending and uses exactly what you typed.
I entered the key but still can't chat, or the model doesn't show up. What now?
Check three things: whether the provider's enable toggle at the top right is on (if not, its models stay out of the selection list); whether the model has been added to the list (only listed models appear in the model pickers); and whether the type matches the address. The official Cherry FAQ also suggests confirming that the default model is one actually available under that provider, and testing with the check button; if the check fails, look for a mistyped ID in the model list. Don't judge by curling https://api.qcode.cc/api directly: that returns an HTML intro page (HTTP 200), which is neither an error nor proof that the path works. Your request log is on probe.qcode.cc once you enter your key.
Can Cherry Agent use Claude through QCode?
Yes, set it up with the Anthropic type. The QCode docs state that Cherry Agent needs an endpoint that supports the Anthropic protocol, so to use Agent inside the app, configure the Anthropic type with https://api.qcode.cc/api; Cherry's official Anthropic page also says Agent needs an Anthropic-protocol endpoint. If Agent says the API Gateway must be enabled, enable and start it straight from that prompt, or start it manually under Settings → API Gateway.
Which type and model IDs do I use for GPT and DeepSeek?
The OpenAI type, with https://api.qcode.cc/openai as the API address and the same cr_ key. For model IDs you can use gpt-6-sol, gpt-5.6-terra, deepseek-v4.1-flash, glm-5.3, kimi-k3 or qwen3.8-max; check /models for what is currently offered. The OpenAI Responses type also works with the same address, but on QCode that endpoint serves only the GPT family, so DeepSeek, other Chinese models and Claude are unavailable there.
Sources
Setup steps, provider types and addresses: the QCode docs page on Cherry Studio (updated 2026-09-18) and the page on endpoints and API formats (updated 2026-09-25; which model families use which endpoint, the exact error text and the three access domains), both crawled on 2026-10-07. Cherry Studio's own interface and rules: the official Cherry Studio docs at docs.cherryai.com.cn (the old domain docs.cherry-ai.com now redirects there with a 301), namely the pages on custom providers, model service settings, Anthropic, the provider quick reference and the FAQ, crawled the same day. Versions and platforms: the README and Releases of the Cherry Studio GitHub repository (release notes from v2.0.14 to v2.1.4), crawled the same day.
Connect Cherry Studio to QCode
One cr_ key: Claude through the Anthropic type, GPT and Chinese models through the OpenAI type. Billed per token; see /models for each model's rate.
Related reading
Claude Code custom endpoint setup
The two environment variables, the settings.json form and apiKeyHelper.
Cline OpenAI-Compatible API Guide
Three fields in Cline to connect it to QCode.
How to judge whether an AI API relay is worth using
Four checks you can run yourself.
The steps and quotes on this page were checked on 2026-10-07 against the QCode docs, the official Cherry Studio docs and the GitHub release notes; upstream changes may happen without notice. Interface labels change between client versions, so go by the version you have; model availability is whatever /models shows.