Use when the user asks to publish to the store, publish to the registry, publish to studio, set up publishing, configure deco.json/app.json for publishing, troubleshoot publish errors, or understand how the deco store publish flow works.
Installer avec Codex ou Claude Copiez ce prompt, collez-le dans Codex, Claude ou un autre assistant, puis laissez-le vérifier la page du skill et l'installer pour vous.
Une commande directe contourne le prompt de vérification. Examinez la source avant de l'exécuter.
Use when the user asks to publish to the store, publish to the registry, publish to studio, set up publishing, configure deco.json/app.json for publishing, troubleshoot publish errors, or understand how the deco store publish flow works.
Publishing to the Store
Overview
MCP apps publish to the deco studio registry via HTTP POST to a publish-request endpoint. After submitting, the deco team reviews the request and notifies the requester by email whether it was approved, rejected, or needs adjustments.
Get the URL from your org's Studio settings (see below)
Depends on org settings
Org members only
Getting the Publish URL and API Token from Studio
Finding the Publish URL
Go to your org's registry settings in Studio:
https://studio.decocms.com/{org-slug}/settings/store/registry
(replace {org-slug} with your organization slug, e.g. https://studio.decocms.com/deco/settings/store/registry)
Find the Publish Requests card
The card shows a toggle to enable/disable external publish requests
When enabled, the publish URL is displayed in the card — copy it
If the toggle is , external publishing is not available for that org
disabled
Getting an API Token (if required)
In the same Publish Requests card, check if Require API Token is enabled
If enabled, requests without a valid token will be rejected
To generate a token:
The API Keys section appears below the Require API Token toggle
Enter a key name (e.g. "CI/CD Pipeline")
Click + Generate
Copy the key immediately — it is shown only once and cannot be retrieved later
If you lose it, generate a new one
If Require API Token is disabled, no token is needed
Rate Limiting
The Rate Limit section in the same card controls how many publish requests are allowed per time window:
Max requests: default 100
Window: Per hour or per minute
Config File: deco.json / app.json
The publish workflow reads deco.json (preferred) or falls back to app.json. They are the same file with different names — always prefer deco.json.
Full Schema
{"scopeName":"my-org","name":"my-mcp","friendlyName":"My MCP App","description":"Short description of what this MCP does (1-2 sentences).","icon":"https://example.com/icon.png","unlisted":false,"official":false,"connection":{"type":"HTTP","url":"https://my-mcp.decocache.com/api/mcp","configSchema":{}},"requester":{"name":"Your Name or Organization","email":"contact@example.com","repository":"https://github.com/org/repo"},"metadata":{"categories":["Developer Tools"],"tags":["automation","api"],"short_description":"One-line description (max 160 chars).","mesh_description":"Longer description for AI agents (2-3 paragraphs)."},"tools":[{"name":"tool_name","description":"What the tool does"}]}
Field Reference
Field
Required
Description
scopeName
Yes
Namespace/owner of the app (e.g. "deco", "my-org")
name
Yes
Unique identifier (kebab-case, e.g. "my-mcp")
friendlyName
No
Human-readable display name
description
No
Short description (1-2 sentences)
icon
No
URL to the app icon
unlisted
No
If true, the app will NOT be listed in store search/browse even if approved. Still accessible by direct ID. Use for internal or beta apps.
official
No
Marks the app as verified/official in the registry
connection.type
No
"HTTP", "SSE", "Websocket", or "BINDING"
connection.url
No
Production URL of the MCP server
connection.configSchema
No
JSON Schema for OAuth/config (presence marks the app as having OAuth)
requester.name
Recommended
Name of the person or organization submitting. Used for review communication. Falls back to git committer name.
requester.email
Recommended
Contact email. Deco sends approval/rejection notifications here. Falls back to git committer email.
requester.repository
Recommended
Link to the source repository (public or private). Used by the review team as reference.
metadata.categories
No
Category list (only the first is used in the registry)
metadata.tags
No
Tags for search/filtering
metadata.short_description
No
One-liner, max 160 characters
metadata.mesh_description
No
Long description for AI agents (2-3 paragraphs). Used as fallback if no README.md exists.
metadata.mesh_unlisted
No
Same as unlisted — prevents listing even if approved
tools
No
Array of { name, description } for registry metadata
Requester Info
Every publish request includes requester information so the deco team can: