
Cds Docs
- 33 installs
- 493 repo stars
- Updated July 31, 2026
- coinbase/cds
Retrieves Coinbase Design System documentation (setup, theming, tokens, per-component APIs) into the session via the CDS MCP server or curl.
About
Loads the CDS docs route index for the chosen web or mobile platform, then fetches only the pages needed to implement correctly. A developer uses it whenever a task involves CDS components, theming, or tokens.
- Prefers CDS MCP list-cds-routes/get-cds-doc, falls back to curl
- Fetches targeted pages from the route index rather than dumping docs
Cds Docs by the numbers
- 33 all-time installs (skills.sh)
- Ranked #917 of 1,879 Documentation skills by installs in the Skillselion catalog
- Data as of Aug 5, 2026 (Skillselion catalog sync)
npx skills add https://github.com/coinbase/cds --skill cds-docsAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Installs | 33 |
|---|---|
| repo stars | ★ 493 |
| Last updated | July 31, 2026 |
| Repository | coinbase/cds ↗ |
What it does
Retrieves Coinbase Design System documentation (setup, theming, tokens, per-component APIs) into the session via the CDS MCP server or curl.
Files
CDS Documentation Skill
Goal: Pull CDS documentation into the session so your next edits, recommendations, and API usage are grounded in current docs—not to produce a documentation handout for the user.
Treat fetched pages as source material you have read: internalize props, patterns, imports, and setup constraints, then act (code, refactors, answers) from that understanding. Quote or summarize for the user only when it helps. Keep the actual doc page contents to yourself and only share their contents directly to the user if they ask.
Whether you use the CDS MCP server or fetch the pages yourself with curl is an implementation detail. The use does not need to know your methodology unless they indicated they are debugging this skill.
Ambiguous product requests (e.g. “turn this into tabs,” “make it a card”) after you’ve read the index: if several CDS components could be relevant (e.g. underline Tabs vs pill SegmentedTabs vs TabNavigation), it is acceptable and often better to ask one short, concrete question (e.g. which visual pattern matches their spec) while briefly naming the options and how they differ per the docs. Do not pick one arbitrarily just to avoid asking.
1. Choose platform
Decide whether the work targets web (React, @coinbase/cds-web) or mobile (React Native, @coinbase/cds-mobile). If unclear, infer from the repo (e.g. package.json dependencies, apps/* layout) or ask a single clarifying question.
Pass web or mobile to list-cds-routes and when building curl URLs.
2. Tool order (try in sequence)
1. CDS MCP server (packaged mcp-docs in @coinbase/cds-mcp-server / packages/mcp-server):
list-cds-routeswithplatform:"web"|"mobile".get-cds-docwithroute: path including the platform, ending in `.txt` (e.g.
web/getting-started/installation.txt). Paths must come from the index.
2. curl if MCP is not configured, fails, or returns errors:
- Index:
https://cds.coinbase.com/llms/web/routes.txtor
https://cds.coinbase.com/llms/mobile/routes.txt
- Page:
https://cds.coinbase.com/llms/<route>where<route>matches the index (e.g.
web/getting-started/theming.txt).
Use curl -fsSL '<url>'. Prefer targeted fetches (the pages you need for this task) over loading everything; the index is for routing, not for echoing back wholesale.
3. Workflow whenever this skill applies
1. Resolve platform (web or mobile). 2. Load the index once per platform focus (list-cds-routes or routes.txt) and use it as the canonical map of .txt paths. 3. Fetch additional pages only as needed for the work ahead; after each fetch, apply what you learned (imports, props, patterns)—do not stop at regurgitating the file.
4. Practical notes
- Routes are case-sensitive; doc content is `.txt` from MCP or HTTP.
- Web and mobile docs differ; confirm the component or topic exists for that platform’s index.
- Human-readable URLs inside the
.txtfiles are optional to share with the user; your priority is
correct implementation, not reproducing the doc site in the reply.
5. What “done” looks like
- Platform is correct or explicitly chosen.
- Index informed which pages you pulled.
- User-facing output is implementation-focused (components, imports, structure); retrieval steps
stay implicit unless the user needs them.
- If multiple components fit, you either ground the choice in doc differences or **ask one
clarifying question** when the product spec is under-specified.
- Your actions and explanations reflect fetched CDS details (APIs, setup, tokens)—especially
where memory would be risky—not a dump of documentation for its own sake.
{
"skill_name": "cds-docs",
"evals": [
{
"id": 1,
"prompt": "We’re on web React and need to add CDS theming to an existing Vite app that doesn’t have ThemeProvider yet. What do I need to import and wrap, and what’s the minimal setup? Don’t paste the whole doc—just what I need to do in code and any gotchas.",
"expected_output": "Agent treats this as web, loads the routes index (MCP or curl for web), fetches the relevant getting-started/theming (and installation if needed) pages, then gives concise implementation guidance grounded in those docs—not a long documentation quote.",
"files": []
},
{
"id": 2,
"prompt": "For React Native in this repo, I need to use the mobile CDS Button. What’s the import path and the main props I should know about? Double-check the mobile index before answering.",
"expected_output": "Agent chooses mobile, fetches mobile routes index first, then the mobile Button doc (path from index), and answers with imports/API from fetched content. Does not guess web API or skip the index.",
"files": []
},
{
"id": 3,
"prompt": "I’m not sure if my project is web or mobile—`package.json` has both react and react-native-ish deps in a monorepo. I want to add a CDS `Text` component. Figure out which package applies to the subfolder I’ll paste next: `packages/my-app/`. (Assume you can read that path.) Then tell me the right import and how to use `Text` for a headline.",
"expected_output": "Agent inspects the repo to infer web vs mobile for the given path, loads the correct platform index, fetches the Text component doc for that platform, and responds with accurate imports/usage. If ambiguous, asks one clear question or documents the assumption.",
"files": []
},
{
"id": 4,
"prompt": "Change the page layout from vertical sections to tabs.",
"expected_output": "User never mentions CDS or documentation. Agent still infers web vs mobile from the repo (or asks one short question if needed), loads the platform routes index, then fetches only the CDS pages needed for a tabbed layout (e.g. tab/navigation components or patterns from the index—exact names may differ by platform), and proposes or implements changes grounded in those docs. Does not invent component APIs or skip the index because the request was vague.",
"files": []
}
]
}
CDS Docs skill
Loads Coinbase Design System documentation.
This skill can work as a compliement to or a replacement of the CDS MCP server. If the MCP server is available the skill prioritizes it. This guaranttees the version of the docs matches the version of the installed cds packages.
How it works
1. Prefer the CDS MCP tools list-cds-routes and get-cds-doc 2. If MCP is unavailable, use curl against https://cds.coinbase.com/llms/... (see SKILL.md for exact URLs and path rules).
Testing / Tuning
Use the anthropic /skill-creator skill to run evals