[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill-strapi-strapi-docs-mcp":3,"mdc--eu8yc8-key":34,"related-org-strapi-strapi-docs-mcp":601,"related-repo-strapi-strapi-docs-mcp":638},{"slug":4,"name":4,"fn":5,"description":6,"org":7,"tags":11,"stars":23,"repoUrl":24,"updatedAt":25,"license":26,"forks":27,"topics":28,"repo":29,"sourceUrl":32,"mdContent":33},"strapi-docs-mcp","search Strapi documentation","Query the official Strapi documentation through the strapi-docs MCP server (powered by Kapa). Use for any Strapi question — API syntax, configuration, features, plugins, upgrades, CLI. If the server is missing, instruct the user how to install it.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},"strapi","Strapi","https:\u002F\u002Fpexgzepcugksgbtrxkhf.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Forg-logos\u002Fstrapi.png",[12,16,19,20],{"name":13,"slug":14,"type":15},"Documentation","documentation","tag",{"name":17,"slug":18,"type":15},"Reference","reference",{"name":9,"slug":8,"type":15},{"name":21,"slug":22,"type":15},"CMS","cms",2,"https:\u002F\u002Fgithub.com\u002Fstrapi\u002Fskills","2026-07-16T06:00:16.355045",null,1,[],{"repoUrl":24,"stars":23,"forks":27,"topics":30,"description":31},[],"AI Agent Skills A collection of skills for AI coding agents. Skills are packaged instructions and scripts that extend agent capabilities.","https:\u002F\u002Fgithub.com\u002Fstrapi\u002Fskills\u002Ftree\u002FHEAD\u002Fskills\u002Fcms\u002Fstrapi-docs-mcp","---\nname: strapi-docs-mcp\ndescription: Query the official Strapi documentation through the strapi-docs MCP server (powered by Kapa). Use for any Strapi question — API syntax, configuration, features, plugins, upgrades, CLI. If the server is missing, instruct the user how to install it.\n---\n\n# Strapi docs MCP server\n\nThe `strapi-docs` MCP server (URL: `https:\u002F\u002Fstrapi-docs.mcp.kapa.ai`) exposes the full Strapi documentation (guides, API references, code examples). Prefer it over training data for Strapi answers, which may be outdated.\n\nCanonical source: https:\u002F\u002Fdocs.strapi.io\u002Fcms\u002Fai\u002Fdocs-mcp-server\n\n## Step 1 — Detect availability\n\nCheck whether a `strapi-docs` MCP server \u002F tool is connected in the current environment.\n\n- **Available** → go to *Use it*.\n- **Not available** → go to *Install it*.\n\n## Available: Use it\n\nCall the `strapi-docs` MCP tools to answer Strapi questions. Pass the user's question directly; quote exact API names, config keys, and versions returned. Cite doc links in the answer.\n\n## Not available: Install it\n\nAdd a remote HTTP MCP server named: `strapi-docs` (URL `https:\u002F\u002Fstrapi-docs.mcp.kapa.ai`) to the host tool's MCP config, using its standard format. The server uses **OAuth** — the user completes an auth flow on first connection. Then have them reload\u002Frestart so it connects.\n\nPer-tool config formats: https:\u002F\u002Fdocs.strapi.io\u002Fcms\u002Fai\u002Fdocs-mcp-server#connection-details\n\n## Last resort: Query the docs content directly\n\nIf the MCP server is unavailable **and** can't be installed, fall back to the public documentation content. No authentication is required for any of these. Prefer them in this order.\n\n### 1. Per-page Markdown (simplest — add `.md` to any page URL)\n\nAny documentation page is available as flat Markdown by appending `.md` to its URL. All layout components (tabs, accordions, API blocks) are resolved to plain text, so nothing is hidden.\n\n- Page URL:     `https:\u002F\u002Fdocs.strapi.io\u002Fcms\u002Fbackend-customization\u002Fcontrollers`\n- Markdown URL: `https:\u002F\u002Fdocs.strapi.io\u002Fcms\u002Fbackend-customization\u002Fcontrollers.md`\n- Pattern: append `.md` to any `https:\u002F\u002Fdocs.strapi.io\u002F\u003Cpage-path>`\n\nThis is the same content the docs site's **Copy Markdown** button uses.\n\n### 2. LLMs text files (best when you need many pages at once — flat, nothing hidden)\n\nThese follow the [llms.txt convention](https:\u002F\u002Fllmstxt.org\u002F) and are the most agent-friendly source: content is flattened to plain Markdown, so nothing is hidden inside tabs or accordions.\n\n| File | URL | Use for |\n|------|-----|---------|\n| Index | `https:\u002F\u002Fdocs.strapi.io\u002Fllms.txt` | Discover every page: a link-rich list of all pages with one-line summaries. |\n| Full content | `https:\u002F\u002Fdocs.strapi.io\u002Fllms-full.txt` | The entire documentation in a single file. Fetch once, then search\u002Fgrep in it. |\n| Code only | `https:\u002F\u002Fdocs.strapi.io\u002Fllms-code.txt` | All code examples, grouped by page. |\n\n  **Constructing a page URL from `llms.txt`:** entries are protocol-relative paths like `\u002F\u002Fcms\u002Fbackend-customization\u002Fcontrollers`. Prepend the docs origin to get the live page as follows:\n\n`\u002F\u002Fcms\u002Fbackend-customization\u002Fcontrollers` becomes `https:\u002F\u002Fdocs.strapi.io\u002Fcms\u002Fbackend-customization\u002Fcontrollers`\n\n### 3. Raw Markdown source on GitHub (per-page, authoritative)\n\nEach page is a `.md`\u002F`.mdx` file in [`strapi\u002Fdocumentation`](https:\u002F\u002Fgithub.com\u002Fstrapi\u002Fdocumentation). Use this only if `docs.strapi.io` itself is unreachable. Build the raw URL from the page path:\n\n- Page path:   `\u002Fcms\u002Fbackend-customization\u002Fcontrollers`\n- Raw URL: `https:\u002F\u002Fraw.githubusercontent.com\u002Fstrapi\u002Fdocumentation\u002Fmain\u002Fdocusaurus\u002Fdocs\u002Fcms\u002Fbackend-customization\u002Fcontrollers.md`\n- Pattern:\n  `https:\u002F\u002Fraw.githubusercontent.com\u002Fstrapi\u002Fdocumentation\u002Fmain\u002Fdocusaurus\u002Fdocs\u002F\u003Cpage-path>.md`\n  where `\u003Cpage-path>` is the page URL path (drop the leading `\u002F`). Some pages use `.mdx` — if `.md` returns 404, retry with `.mdx`.\n\n### 4. Live HTML page (last resort)\n\nFetch the page directly, e.g. `https:\u002F\u002Fdocs.strapi.io\u002Fcms\u002Fbackend-customization\u002Fcontrollers`, and extract the content. Least reliable: some content lives in tabs\u002Faccordions and may be missed. Prefer sources 1 to 3 whenever possible.\n",{"data":35,"body":36},{"name":4,"description":6},{"type":37,"children":38},"root",[39,48,71,84,91,103,142,148,160,166,192,203,209,221,236,248,291,303,309,323,422,448,463,469,510,583,589],{"type":40,"tag":41,"props":42,"children":44},"element","h1",{"id":43},"strapi-docs-mcp-server",[45],{"type":46,"value":47},"text","Strapi docs MCP server",{"type":40,"tag":49,"props":50,"children":51},"p",{},[52,54,61,63,69],{"type":46,"value":53},"The ",{"type":40,"tag":55,"props":56,"children":58},"code",{"className":57},[],[59],{"type":46,"value":60},"strapi-docs",{"type":46,"value":62}," MCP server (URL: ",{"type":40,"tag":55,"props":64,"children":66},{"className":65},[],[67],{"type":46,"value":68},"https:\u002F\u002Fstrapi-docs.mcp.kapa.ai",{"type":46,"value":70},") exposes the full Strapi documentation (guides, API references, code examples). Prefer it over training data for Strapi answers, which may be outdated.",{"type":40,"tag":49,"props":72,"children":73},{},[74,76],{"type":46,"value":75},"Canonical source: ",{"type":40,"tag":77,"props":78,"children":82},"a",{"href":79,"rel":80},"https:\u002F\u002Fdocs.strapi.io\u002Fcms\u002Fai\u002Fdocs-mcp-server",[81],"nofollow",[83],{"type":46,"value":79},{"type":40,"tag":85,"props":86,"children":88},"h2",{"id":87},"step-1-detect-availability",[89],{"type":46,"value":90},"Step 1 — Detect availability",{"type":40,"tag":49,"props":92,"children":93},{},[94,96,101],{"type":46,"value":95},"Check whether a ",{"type":40,"tag":55,"props":97,"children":99},{"className":98},[],[100],{"type":46,"value":60},{"type":46,"value":102}," MCP server \u002F tool is connected in the current environment.",{"type":40,"tag":104,"props":105,"children":106},"ul",{},[107,127],{"type":40,"tag":108,"props":109,"children":110},"li",{},[111,117,119,125],{"type":40,"tag":112,"props":113,"children":114},"strong",{},[115],{"type":46,"value":116},"Available",{"type":46,"value":118}," → go to ",{"type":40,"tag":120,"props":121,"children":122},"em",{},[123],{"type":46,"value":124},"Use it",{"type":46,"value":126},".",{"type":40,"tag":108,"props":128,"children":129},{},[130,135,136,141],{"type":40,"tag":112,"props":131,"children":132},{},[133],{"type":46,"value":134},"Not available",{"type":46,"value":118},{"type":40,"tag":120,"props":137,"children":138},{},[139],{"type":46,"value":140},"Install it",{"type":46,"value":126},{"type":40,"tag":85,"props":143,"children":145},{"id":144},"available-use-it",[146],{"type":46,"value":147},"Available: Use it",{"type":40,"tag":49,"props":149,"children":150},{},[151,153,158],{"type":46,"value":152},"Call the ",{"type":40,"tag":55,"props":154,"children":156},{"className":155},[],[157],{"type":46,"value":60},{"type":46,"value":159}," MCP tools to answer Strapi questions. Pass the user's question directly; quote exact API names, config keys, and versions returned. Cite doc links in the answer.",{"type":40,"tag":85,"props":161,"children":163},{"id":162},"not-available-install-it",[164],{"type":46,"value":165},"Not available: Install it",{"type":40,"tag":49,"props":167,"children":168},{},[169,171,176,178,183,185,190],{"type":46,"value":170},"Add a remote HTTP MCP server named: ",{"type":40,"tag":55,"props":172,"children":174},{"className":173},[],[175],{"type":46,"value":60},{"type":46,"value":177}," (URL ",{"type":40,"tag":55,"props":179,"children":181},{"className":180},[],[182],{"type":46,"value":68},{"type":46,"value":184},") to the host tool's MCP config, using its standard format. The server uses ",{"type":40,"tag":112,"props":186,"children":187},{},[188],{"type":46,"value":189},"OAuth",{"type":46,"value":191}," — the user completes an auth flow on first connection. Then have them reload\u002Frestart so it connects.",{"type":40,"tag":49,"props":193,"children":194},{},[195,197],{"type":46,"value":196},"Per-tool config formats: ",{"type":40,"tag":77,"props":198,"children":201},{"href":199,"rel":200},"https:\u002F\u002Fdocs.strapi.io\u002Fcms\u002Fai\u002Fdocs-mcp-server#connection-details",[81],[202],{"type":46,"value":199},{"type":40,"tag":85,"props":204,"children":206},{"id":205},"last-resort-query-the-docs-content-directly",[207],{"type":46,"value":208},"Last resort: Query the docs content directly",{"type":40,"tag":49,"props":210,"children":211},{},[212,214,219],{"type":46,"value":213},"If the MCP server is unavailable ",{"type":40,"tag":112,"props":215,"children":216},{},[217],{"type":46,"value":218},"and",{"type":46,"value":220}," can't be installed, fall back to the public documentation content. No authentication is required for any of these. Prefer them in this order.",{"type":40,"tag":222,"props":223,"children":225},"h3",{"id":224},"_1-per-page-markdown-simplest-add-md-to-any-page-url",[226,228,234],{"type":46,"value":227},"1. Per-page Markdown (simplest — add ",{"type":40,"tag":55,"props":229,"children":231},{"className":230},[],[232],{"type":46,"value":233},".md",{"type":46,"value":235}," to any page URL)",{"type":40,"tag":49,"props":237,"children":238},{},[239,241,246],{"type":46,"value":240},"Any documentation page is available as flat Markdown by appending ",{"type":40,"tag":55,"props":242,"children":244},{"className":243},[],[245],{"type":46,"value":233},{"type":46,"value":247}," to its URL. All layout components (tabs, accordions, API blocks) are resolved to plain text, so nothing is hidden.",{"type":40,"tag":104,"props":249,"children":250},{},[251,262,273],{"type":40,"tag":108,"props":252,"children":253},{},[254,256],{"type":46,"value":255},"Page URL:     ",{"type":40,"tag":55,"props":257,"children":259},{"className":258},[],[260],{"type":46,"value":261},"https:\u002F\u002Fdocs.strapi.io\u002Fcms\u002Fbackend-customization\u002Fcontrollers",{"type":40,"tag":108,"props":263,"children":264},{},[265,267],{"type":46,"value":266},"Markdown URL: ",{"type":40,"tag":55,"props":268,"children":270},{"className":269},[],[271],{"type":46,"value":272},"https:\u002F\u002Fdocs.strapi.io\u002Fcms\u002Fbackend-customization\u002Fcontrollers.md",{"type":40,"tag":108,"props":274,"children":275},{},[276,278,283,285],{"type":46,"value":277},"Pattern: append ",{"type":40,"tag":55,"props":279,"children":281},{"className":280},[],[282],{"type":46,"value":233},{"type":46,"value":284}," to any ",{"type":40,"tag":55,"props":286,"children":288},{"className":287},[],[289],{"type":46,"value":290},"https:\u002F\u002Fdocs.strapi.io\u002F\u003Cpage-path>",{"type":40,"tag":49,"props":292,"children":293},{},[294,296,301],{"type":46,"value":295},"This is the same content the docs site's ",{"type":40,"tag":112,"props":297,"children":298},{},[299],{"type":46,"value":300},"Copy Markdown",{"type":46,"value":302}," button uses.",{"type":40,"tag":222,"props":304,"children":306},{"id":305},"_2-llms-text-files-best-when-you-need-many-pages-at-once-flat-nothing-hidden",[307],{"type":46,"value":308},"2. LLMs text files (best when you need many pages at once — flat, nothing hidden)",{"type":40,"tag":49,"props":310,"children":311},{},[312,314,321],{"type":46,"value":313},"These follow the ",{"type":40,"tag":77,"props":315,"children":318},{"href":316,"rel":317},"https:\u002F\u002Fllmstxt.org\u002F",[81],[319],{"type":46,"value":320},"llms.txt convention",{"type":46,"value":322}," and are the most agent-friendly source: content is flattened to plain Markdown, so nothing is hidden inside tabs or accordions.",{"type":40,"tag":324,"props":325,"children":326},"table",{},[327,351],{"type":40,"tag":328,"props":329,"children":330},"thead",{},[331],{"type":40,"tag":332,"props":333,"children":334},"tr",{},[335,341,346],{"type":40,"tag":336,"props":337,"children":338},"th",{},[339],{"type":46,"value":340},"File",{"type":40,"tag":336,"props":342,"children":343},{},[344],{"type":46,"value":345},"URL",{"type":40,"tag":336,"props":347,"children":348},{},[349],{"type":46,"value":350},"Use for",{"type":40,"tag":352,"props":353,"children":354},"tbody",{},[355,378,400],{"type":40,"tag":332,"props":356,"children":357},{},[358,364,373],{"type":40,"tag":359,"props":360,"children":361},"td",{},[362],{"type":46,"value":363},"Index",{"type":40,"tag":359,"props":365,"children":366},{},[367],{"type":40,"tag":55,"props":368,"children":370},{"className":369},[],[371],{"type":46,"value":372},"https:\u002F\u002Fdocs.strapi.io\u002Fllms.txt",{"type":40,"tag":359,"props":374,"children":375},{},[376],{"type":46,"value":377},"Discover every page: a link-rich list of all pages with one-line summaries.",{"type":40,"tag":332,"props":379,"children":380},{},[381,386,395],{"type":40,"tag":359,"props":382,"children":383},{},[384],{"type":46,"value":385},"Full content",{"type":40,"tag":359,"props":387,"children":388},{},[389],{"type":40,"tag":55,"props":390,"children":392},{"className":391},[],[393],{"type":46,"value":394},"https:\u002F\u002Fdocs.strapi.io\u002Fllms-full.txt",{"type":40,"tag":359,"props":396,"children":397},{},[398],{"type":46,"value":399},"The entire documentation in a single file. Fetch once, then search\u002Fgrep in it.",{"type":40,"tag":332,"props":401,"children":402},{},[403,408,417],{"type":40,"tag":359,"props":404,"children":405},{},[406],{"type":46,"value":407},"Code only",{"type":40,"tag":359,"props":409,"children":410},{},[411],{"type":40,"tag":55,"props":412,"children":414},{"className":413},[],[415],{"type":46,"value":416},"https:\u002F\u002Fdocs.strapi.io\u002Fllms-code.txt",{"type":40,"tag":359,"props":418,"children":419},{},[420],{"type":46,"value":421},"All code examples, grouped by page.",{"type":40,"tag":49,"props":423,"children":424},{},[425,438,440,446],{"type":40,"tag":112,"props":426,"children":427},{},[428,430,436],{"type":46,"value":429},"Constructing a page URL from ",{"type":40,"tag":55,"props":431,"children":433},{"className":432},[],[434],{"type":46,"value":435},"llms.txt",{"type":46,"value":437},":",{"type":46,"value":439}," entries are protocol-relative paths like ",{"type":40,"tag":55,"props":441,"children":443},{"className":442},[],[444],{"type":46,"value":445},"\u002F\u002Fcms\u002Fbackend-customization\u002Fcontrollers",{"type":46,"value":447},". Prepend the docs origin to get the live page as follows:",{"type":40,"tag":49,"props":449,"children":450},{},[451,456,458],{"type":40,"tag":55,"props":452,"children":454},{"className":453},[],[455],{"type":46,"value":445},{"type":46,"value":457}," becomes ",{"type":40,"tag":55,"props":459,"children":461},{"className":460},[],[462],{"type":46,"value":261},{"type":40,"tag":222,"props":464,"children":466},{"id":465},"_3-raw-markdown-source-on-github-per-page-authoritative",[467],{"type":46,"value":468},"3. Raw Markdown source on GitHub (per-page, authoritative)",{"type":40,"tag":49,"props":470,"children":471},{},[472,474,479,481,487,489,500,502,508],{"type":46,"value":473},"Each page is a ",{"type":40,"tag":55,"props":475,"children":477},{"className":476},[],[478],{"type":46,"value":233},{"type":46,"value":480},"\u002F",{"type":40,"tag":55,"props":482,"children":484},{"className":483},[],[485],{"type":46,"value":486},".mdx",{"type":46,"value":488}," file in ",{"type":40,"tag":77,"props":490,"children":493},{"href":491,"rel":492},"https:\u002F\u002Fgithub.com\u002Fstrapi\u002Fdocumentation",[81],[494],{"type":40,"tag":55,"props":495,"children":497},{"className":496},[],[498],{"type":46,"value":499},"strapi\u002Fdocumentation",{"type":46,"value":501},". Use this only if ",{"type":40,"tag":55,"props":503,"children":505},{"className":504},[],[506],{"type":46,"value":507},"docs.strapi.io",{"type":46,"value":509}," itself is unreachable. Build the raw URL from the page path:",{"type":40,"tag":104,"props":511,"children":512},{},[513,524,535],{"type":40,"tag":108,"props":514,"children":515},{},[516,518],{"type":46,"value":517},"Page path:   ",{"type":40,"tag":55,"props":519,"children":521},{"className":520},[],[522],{"type":46,"value":523},"\u002Fcms\u002Fbackend-customization\u002Fcontrollers",{"type":40,"tag":108,"props":525,"children":526},{},[527,529],{"type":46,"value":528},"Raw URL: ",{"type":40,"tag":55,"props":530,"children":532},{"className":531},[],[533],{"type":46,"value":534},"https:\u002F\u002Fraw.githubusercontent.com\u002Fstrapi\u002Fdocumentation\u002Fmain\u002Fdocusaurus\u002Fdocs\u002Fcms\u002Fbackend-customization\u002Fcontrollers.md",{"type":40,"tag":108,"props":536,"children":537},{},[538,540,546,548,554,556,561,563,568,570,575,577,582],{"type":46,"value":539},"Pattern:\n",{"type":40,"tag":55,"props":541,"children":543},{"className":542},[],[544],{"type":46,"value":545},"https:\u002F\u002Fraw.githubusercontent.com\u002Fstrapi\u002Fdocumentation\u002Fmain\u002Fdocusaurus\u002Fdocs\u002F\u003Cpage-path>.md",{"type":46,"value":547},"\nwhere ",{"type":40,"tag":55,"props":549,"children":551},{"className":550},[],[552],{"type":46,"value":553},"\u003Cpage-path>",{"type":46,"value":555}," is the page URL path (drop the leading ",{"type":40,"tag":55,"props":557,"children":559},{"className":558},[],[560],{"type":46,"value":480},{"type":46,"value":562},"). Some pages use ",{"type":40,"tag":55,"props":564,"children":566},{"className":565},[],[567],{"type":46,"value":486},{"type":46,"value":569}," — if ",{"type":40,"tag":55,"props":571,"children":573},{"className":572},[],[574],{"type":46,"value":233},{"type":46,"value":576}," returns 404, retry with ",{"type":40,"tag":55,"props":578,"children":580},{"className":579},[],[581],{"type":46,"value":486},{"type":46,"value":126},{"type":40,"tag":222,"props":584,"children":586},{"id":585},"_4-live-html-page-last-resort",[587],{"type":46,"value":588},"4. Live HTML page (last resort)",{"type":40,"tag":49,"props":590,"children":591},{},[592,594,599],{"type":46,"value":593},"Fetch the page directly, e.g. ",{"type":40,"tag":55,"props":595,"children":597},{"className":596},[],[598],{"type":46,"value":261},{"type":46,"value":600},", and extract the content. Least reliable: some content lives in tabs\u002Faccordions and may be missed. Prefer sources 1 to 3 whenever possible.",{"items":602,"total":637},[603,610,625],{"slug":4,"name":4,"fn":5,"description":6,"org":604,"tags":605,"stars":23,"repoUrl":24,"updatedAt":25},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[606,607,608,609],{"name":21,"slug":22,"type":15},{"name":13,"slug":14,"type":15},{"name":17,"slug":18,"type":15},{"name":9,"slug":8,"type":15},{"slug":611,"name":611,"fn":612,"description":613,"org":614,"tags":615,"stars":23,"repoUrl":24,"updatedAt":624},"strapi-mcp-capabilities","create custom MCP capabilities for Strapi","Create custom MCP capabilities (tools, prompts, resources) in a Strapi 5 plugin via the strapi.ai.mcp service. Use when adding a custom MCP tool\u002Fprompt\u002Fresource to Strapi, extending the Strapi MCP server.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[616,617,620,623],{"name":21,"slug":22,"type":15},{"name":618,"slug":619,"type":15},"MCP","mcp",{"name":621,"slug":622,"type":15},"Plugin Development","plugin-development",{"name":9,"slug":8,"type":15},"2026-07-16T06:03:02.629114",{"slug":626,"name":626,"fn":627,"description":628,"org":629,"tags":630,"stars":23,"repoUrl":24,"updatedAt":636},"strapi-version-upgrade","upgrade Strapi applications to new versions","Upgrade a Strapi application to a new version. ALWAYS reviews the relevant breaking changes first (via the strapi-docs MCP server, or by fetching the docs directly if the MCP is unavailable), then performs the upgrade using the official @strapi\u002Fupgrade tool. Use whenever the user wants to upgrade, update, or bump their Strapi version.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[631,632,635],{"name":21,"slug":22,"type":15},{"name":633,"slug":634,"type":15},"Migration","migration",{"name":9,"slug":8,"type":15},"2026-07-19T06:03:45.306446",3,{"items":639,"total":637},[640,647,654],{"slug":4,"name":4,"fn":5,"description":6,"org":641,"tags":642,"stars":23,"repoUrl":24,"updatedAt":25},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[643,644,645,646],{"name":21,"slug":22,"type":15},{"name":13,"slug":14,"type":15},{"name":17,"slug":18,"type":15},{"name":9,"slug":8,"type":15},{"slug":611,"name":611,"fn":612,"description":613,"org":648,"tags":649,"stars":23,"repoUrl":24,"updatedAt":624},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[650,651,652,653],{"name":21,"slug":22,"type":15},{"name":618,"slug":619,"type":15},{"name":621,"slug":622,"type":15},{"name":9,"slug":8,"type":15},{"slug":626,"name":626,"fn":627,"description":628,"org":655,"tags":656,"stars":23,"repoUrl":24,"updatedAt":636},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[657,658,659],{"name":21,"slug":22,"type":15},{"name":633,"slug":634,"type":15},{"name":9,"slug":8,"type":15}]