CCM
/MCP
SkillsMCPMarketplacesDigestToolsAdvertise

This week in Claude

Every Monday: Claude Code, Agent SDK, MCP, and the Anthropic platform moves worth your time.

Skills by Category
Frontend DevelopmentBackend & APIsTesting & QASecurityDevOps & CI/CDGit & Pull RequestsDocumentationCode Review & QualityAI & Agent BuildingSkill Development
MCP Servers by Category
Sales & MarketingWeb & Browser AutomationDatabasesAI & LLM ToolsCloud & InfrastructureCommunication & MessagingDeveloper ToolsDesign & CreativeDocuments & KnowledgeSearch & Web Crawling
Marketplaces by Category
AI Agents & OrchestrationLLM IntegrationDevelopment ToolsFrontend & UIBackend & APIsDatabasesTesting & Code QualityDevOps & CloudSecurity & ComplianceGit & Version Control

Claude Code Marketplaces

Discover Claude Code plugins, extensions, and tools. Automatically updated directory of Anthropic Claude AI marketplaces with development tools, productivity plugins, and integrations.

Resources

  • Browse Skills
  • Browse MCP Servers
  • Browse Marketplaces
  • Skill index
  • MCP index
  • Marketplace index
  • Plugins Reference

Community

  • About
  • Tools
  • Feedback
  • Privacy Policy
  • Advertise

Built for the Claude Code community with Claude Code by mertbuilds.com

Independent project, not affiliated with Anthropic
goodbarber avatar

Goodbarber Public Mcp

goodbarber/goodbarber-skills
80 toolsSSEregistry active
Summary

GoodBarber is a no-code app builder, and this server turns your published eCommerce, Community, or Membership app into something Claude can manage through conversation. It uses OAuth against GoodBarber's Public API and exposes tools for catalog management, order processing, customer segmentation, promo campaigns, subscription audits, and push notifications. The real value is in the 41 included skills, markdown files that chain these tools into workflows like RFM segmentation, reorder planning based on sales velocity, or identifying orphaned products not in any collection. If you run a GoodBarber storefront or membership site and want to pull reports, spot inventory gaps, or broadcast a promo without opening the backoffice, this gives you a natural language interface over the whole operation.

CodeRabbit
CodeRabbit
AI writes the code. CodeRabbit catches the slop.
Try For Free →
ego lite browserego lite browser
ego lite browser
Fastest browser for AI agents to run web automation tasks, always free.
Download Free life-time →
Granola, the best AI meeting recorder
Granola, the best AI meeting recorder
Notes, actions and memory. Without a meeting bot. First month 100% off.
Download for free →
CodeHealth MCP ServerCodeHealth MCP Server
CodeHealth MCP Server
Protect your code quality, stop the AI slop.
Try For Free →
belt - the only tool your agent needs
belt - the only tool your agent needs
belt cli automatically finds the best tools and skills for your agent. image, video, music, tts...
one prompt install →
AppSignal
AppSignal
Monitor with ease. Code with confidence.
Start Free Trial →
Agent, connect blockchain
Agent, connect blockchain
Connect your Claude agent to live crypto prices and trading routes via 1inch
Get the MCP →
Block distraction from your iPhone for freeBlock distraction from your iPhone for free
Block distraction from your iPhone for free
Block distracting apps from your iPhone permanently without a 3rd party app. Free and open source.
Block now (100% free) →
CodeRabbit
CodeRabbit
AI writes the code. CodeRabbit catches the slop.
Try For Free →
ego lite browserego lite browser
ego lite browser
Fastest browser for AI agents to run web automation tasks, always free.
Download Free life-time →
Granola, the best AI meeting recorder
Granola, the best AI meeting recorder
Notes, actions and memory. Without a meeting bot. First month 100% off.
Download for free →
CodeHealth MCP ServerCodeHealth MCP Server
CodeHealth MCP Server
Protect your code quality, stop the AI slop.
Try For Free →
belt - the only tool your agent needs
belt - the only tool your agent needs
belt cli automatically finds the best tools and skills for your agent. image, video, music, tts...
one prompt install →
AppSignal
AppSignal
Monitor with ease. Code with confidence.
Start Free Trial →
Agent, connect blockchain
Agent, connect blockchain
Connect your Claude agent to live crypto prices and trading routes via 1inch
Get the MCP →
Block distraction from your iPhone for freeBlock distraction from your iPhone for free
Block distraction from your iPhone for free
Block distracting apps from your iPhone permanently without a 3rd party app. Free and open source.
Block now (100% free) →

Tools

Public tool metadata for what this MCP can expose to an agent.

80 tools
meta_get_tool_planRetrieve full guidance for one tool name, including the recommended discover/call/verify sequence and failure policy.1 params

Retrieve full guidance for one tool name, including the recommended discover/call/verify sequence and failure policy.

Parameters* required
tool_namestring
shop_list_collectionsList shop collections (paginated). Returns count/previous/next/collections.4 params

List shop collections (paginated). Returns count/previous/next/collections.

Parameters* required
keywordstring
Filter by collection name, supports comma-separated OR terms.
pageinteger
Page number (default 1)
per_pageinteger
Items per page
sortstring
one of alpha · alpha_desc · first_added · last_added
shop_get_collectionRetrieve one collection by id. Returns collection object.1 params

Retrieve one collection by id. Returns collection object.

Parameters* required
collection_idinteger
Collection identifier
shop_list_optionsList variant options (paginated). Returns count/previous/next/options.3 params

List variant options (paginated). Returns count/previous/next/options.

Parameters* required
pageinteger
per_pageinteger
searchstring
Filter by option name substring
shop_create_optionCreate a new variant option for product variants.1 params

Create a new variant option for product variants.

Parameters* required
namestring
Option name (e.g. 'Color', 'Size')
shop_update_optionUpdate the name of a variant option.2 params

Update the name of a variant option.

Parameters* required
namestring
option_idinteger
shop_delete_optionDelete a specific variant option.1 params

Delete a specific variant option.

Parameters* required
option_idinteger
shop_list_productsList products (paginated). Returns count/previous/next/products.5 params

List products (paginated). Returns count/previous/next/products.

Parameters* required
collectionarray
List of collection ids. Use [id] for a single collection, [id1, id2, ...] for OR filtering across multiple collections. Always pass an array, even for one collection. Do NOT make multiple calls to...
keywordstring
pageinteger
per_pageinteger
statusstring
one of DEMO · DRAFT · INVISIBLE · PUBLISHED
shop_create_productCreate a product. Returns created product object.16 params

Create a product. Returns created product object.

Parameters* required
brandstring
collectionsarray
highlightboolean
mediainteger
Slide id used as product thumbnail
meta_descriptionstring
meta_titlestring
product_refstring
set_custom_similar_productsarray
show_similar_productsboolean
slugstring
statusstring
one of DRAFT · PUBLISHED · INVISIBLE
summarystring
tagsarray
titlestring
visibility_endstring
ISO datetime
visibility_startstring
ISO datetime
shop_get_productRetrieve one product by id. Returns product object with variants/slides.1 params

Retrieve one product by id. Returns product object with variants/slides.

Parameters* required
product_idinteger
shop_update_productUpdate a product in the shop.17 params

Update a product in the shop.

Parameters* required
brandstring
collectionsarray
highlightboolean
mediainteger
meta_descriptionstring
meta_titlestring
product_idinteger
product_refstring
set_custom_similar_productsarray
show_similar_productsboolean
slugstring
statusstring
one of DRAFT · PUBLISHED · INVISIBLE
summarystring
tagsarray
titlestring
visibility_endstring
ISO datetime
visibility_startstring
ISO datetime
shop_delete_productDelete a specific product from the shop.1 params

Delete a specific product from the shop.

Parameters* required
product_idinteger
shop_list_paragraphsList product description paragraphs sorted by position.1 params

List product description paragraphs sorted by position.

Parameters* required
product_idinteger
shop_create_paragraphAdd a description paragraph to a product.5 params

Add a description paragraph to a product.

Parameters* required
contentstring
htmlboolean
paragraph_typestring
one of TEXT · QUOTE · PHOTO · EMBED
positioninteger
Order index
product_idinteger
shop_update_paragraphUpdate a product description paragraph.7 params

Update a product description paragraph.

Parameters* required
contentstring
htmlboolean
media_idinteger
paragraph_idstring
paragraph_typestring
one of TEXT · QUOTE · PHOTO · EMBED
positioninteger
product_idinteger
shop_delete_paragraphDelete a specific product description paragraph.2 params

Delete a specific product description paragraph.

Parameters* required
paragraph_idstring
product_idinteger
shop_create_paragraph_mediaCreate a media object for a paragraph. For PHOTO: pass media_type=PHOTO and image_file. For EMBED: pass media_type=EMBED and content.6 params

Create a media object for a paragraph. For PHOTO: pass media_type=PHOTO and image_file. For EMBED: pass media_type=EMBED and content.

Parameters* required
contentstring
Required for EMBED. Embed content.
focal_pointstring
Image crop focal point, format 40x50.
image_filestring
Required for PHOTO. Image payload. Accepts: (1) a data URI 'data:image/png;base64,...', (2) a raw base64-encoded string of the image bytes, or (3) a public http(s) URL. Do NOT pass a local filesyst...
media_typestring
Required. PHOTO or EMBED.one of PHOTO · EMBED
paragraph_idstring
product_idinteger
shop_get_paragraph_mediaRetrieve the details of a paragraph media object.3 params

Retrieve the details of a paragraph media object.

Parameters* required
media_idinteger
paragraph_idstring
product_idinteger
shop_update_paragraph_mediaUpdate a paragraph media object (content, type, focal point, and/or image_file).7 params

Update a paragraph media object (content, type, focal point, and/or image_file).

Parameters* required
contentstring
focal_pointstring
image_filestring
Image payload. Accepts: (1) a data URI 'data:image/png;base64,...', (2) a raw base64-encoded string of the image bytes, or (3) a public http(s) URL. Do NOT pass a local filesystem path — the server...
media_idinteger
media_typestring
one of PHOTO · EMBED
paragraph_idstring
product_idinteger
shop_delete_paragraph_mediaDelete a paragraph media object.3 params

Delete a paragraph media object.

Parameters* required
media_idinteger
paragraph_idstring
product_idinteger
shop_upload_product_pdfDownload a PDF from a URL and attach it to a product (multipart upload).3 params

Download a PDF from a URL and attach it to a product (multipart upload).

Parameters* required
pdfstring
Public URL of the PDF to download and upload
pdf_namestring
Display name (default: filename from URL)
product_idinteger
shop_delete_product_pdfDelete the PDF file associated with a product.1 params

Delete the PDF file associated with a product.

Parameters* required
product_idinteger
shop_upload_product_slideUpload an image file as a product slide (multipart form-data).4 params

Upload an image file as a product slide (multipart form-data).

Parameters* required
focal_pointstring
image_filestring
Image payload. Accepts: (1) a data URI 'data:image/png;base64,...', (2) a raw base64-encoded string of the image bytes, or (3) a public http(s) URL. Do NOT pass a local filesystem path — the server...
positioninteger
product_idinteger
shop_update_product_slideUpdate a slide (position, focal_point and/or replacement image via image_file).5 params

Update a slide (position, focal_point and/or replacement image via image_file).

Parameters* required
focal_pointstring
image_filestring
Image payload. Accepts: (1) a data URI 'data:image/png;base64,...', (2) a raw base64-encoded string of the image bytes, or (3) a public http(s) URL. Do NOT pass a local filesystem path — the server...
positioninteger
product_idinteger
slide_idinteger
shop_delete_product_slideDelete a specific product slide.2 params

Delete a specific product slide.

Parameters* required
product_idinteger
slide_idinteger
shop_create_variantCreate a new variant for a product. IMPORTANT: all variants of the same product MUST share the exact same set of option_ids. When you introduce a new option on one variant, you must also add that option (with an appropriate value) to every other existing variant via shop_updat...9 params

Create a new variant for a product. IMPORTANT: all variants of the same product MUST share the exact same set of option_ids. When you introduce a new option on one variant, you must also add that option (with an appropriate value) to every other existing variant via shop_updat...

Parameters* required
compare_atstring
mediainteger
option_valuesarray
List of option/value pairs. Each object has one key: the option_id mapping to the value string. Example: [{"1": "Red"}, {"2": "M"}]
positioninteger
pricestring
Decimal as string, e.g. '10.50000'
product_idinteger
skustring
stockinteger
weightstring
shop_get_variantRetrieve the details of a product variant.2 params

Retrieve the details of a product variant.

Parameters* required
product_idinteger
variant_idinteger
shop_update_variantUpdate the details of a product variant.10 params

Update the details of a product variant.

Parameters* required
compare_atstring
mediainteger
option_valuesarray
List of option/value pairs. Each object has one key: the option_id mapping to the value string. Example: [{"1": "Red"}, {"2": "M"}]
positioninteger
pricestring
product_idinteger
skustring
stockinteger
variant_idinteger
weightstring
shop_delete_variantDelete a specific product variant.2 params

Delete a specific product variant.

Parameters* required
product_idinteger
variant_idinteger
shop_list_tagsList all tags used in the shop catalog.3 params

List all tags used in the shop catalog.

Parameters* required
pageinteger
per_pageinteger
sortstring
one of alpha · last_created · most_tagged
shop_validate_jwtValidate a front-end JWT for a shop customer.2 params

Validate a front-end JWT for a shop customer.

Parameters* required
jwtstring
The JWT to validate
user_idstring
Target user id for token validation
shop_list_customersList customers of the shop.2 params

List customers of the shop.

Parameters* required
pageinteger
per_pageinteger
shop_get_customerRetrieve the details of a specific shop customer.1 params

Retrieve the details of a specific shop customer.

Parameters* required
customer_idinteger
shop_list_prospectsList prospects (newsletter subscribers) of the shop.2 params

List prospects (newsletter subscribers) of the shop.

Parameters* required
pageinteger
per_pageinteger
shop_get_prospectRetrieve the details of a specific shop prospect.1 params

Retrieve the details of a specific shop prospect.

Parameters* required
user_idstring
Unique ID of the user
shop_create_push_broadcastSend a push notification broadcast to all shop app users.3 params

Send a push notification broadcast to all shop app users.

Parameters* required
actionobject
Action performed when the user opens the notification.
messagestring
Content of the push notification (max 255 characters).
scheduleobject
Sending time. Defaults to immediate send.
shop_create_push_notificationSend a shop push notification with optional user targeting, scheduling, and tap action.4 params

Send a shop push notification with optional user targeting, scheduling, and tap action.

Parameters* required
actionobject
Action performed when the user opens the notification.
messagestring
Content of the push notification (max 255 characters).
scheduleobject
Sending time. Defaults to immediate send.
targetingobject
Optional user targeting. If omitted, sends to all eligible push recipients.
shop_list_ordersList orders of the shop. Supports filtering by status and date range.7 params

List orders of the shop. Supports filtering by status and date range.

Parameters* required
creation_date_fromstring
Filter orders created after this datetime (yyyy-mm-ddThh:MM, UTC)
creation_date_tostring
Filter orders created before this datetime (yyyy-mm-ddThh:MM, UTC)
delivery_date_fromstring
Filter by delivery slot start after this datetime
delivery_date_tostring
Filter by delivery slot end before this datetime
pageinteger
per_pageinteger
statusvalue
One status or a list of statuses to OR-filter.
shop_get_orderRetrieve the details of a specific order.1 params

Retrieve the details of a specific order.

Parameters* required
order_idinteger
Unique ID of the order
shop_get_order_shippingGet the shipping information (status, tracking number, tracking URL) of an order.1 params

Get the shipping information (status, tracking number, tracking URL) of an order.

Parameters* required
order_idinteger
shop_update_order_shippingUpdate the shipping information of an order. Status can only go PENDING → FULFILLED → DELIVERED.4 params

Update the shipping information of an order. Status can only go PENDING → FULFILLED → DELIVERED.

Parameters* required
order_idinteger
shipping_tracking_numstring
shipping_tracking_urlstring
statusstring
New order statusone of FULFILLED · DELIVERED
shop_get_loyaltyRetrieve the loyalty points details of a shop user.1 params

Retrieve the loyalty points details of a shop user.

Parameters* required
user_idinteger
shop_update_loyaltyUpdate the loyalty points of a shop user.2 params

Update the loyalty points of a shop user.

Parameters* required
points_countinteger
New points total
user_idinteger
shop_get_promocodeRetrieve the details of a specific promocode.1 params

Retrieve the details of a specific promocode.

Parameters* required
promocode_idinteger
shop_list_promocodes_amountList promocodes based on order amount.2 params

List promocodes based on order amount.

Parameters* required
pageinteger
per_pageinteger
shop_create_promocode_amountCreate a promocode based on order amount.16 params

Create a promocode based on order amount.

Parameters* required
codestring
conditionsstring
one of NONE · PRICE_RANGE · NUMBER_OF_PRODUCTS
discount_typestring
one of PERCENT · ABSOLUTE
end_atstring
ISO datetime. Use end_date='none' for no expiration.
end_datestring
Alias for end_at. Set to 'none' for no expiration.
max_pricenumber
max_usesinteger
min_pricenumber
min_quantityinteger
namestring
one_use_by_userboolean
registered_onlyboolean
specific_registered_idsarray
List of specific user IDs
specific_registered_onlyboolean
start_atstring
ISO datetime
valuenumber
shop_list_promocodes_collectionsList promocodes based on dedicated collections.2 params

List promocodes based on dedicated collections.

Parameters* required
pageinteger
per_pageinteger
shop_create_promocode_collectionsCreate a promocode based on dedicated collections.17 params

Create a promocode based on dedicated collections.

Parameters* required
codestring
collection_idsarray
List of collection IDs this promocode applies to
conditionsstring
one of NONE · PRICE_RANGE · NUMBER_OF_PRODUCTS
discount_typestring
one of PERCENT · ABSOLUTE
end_atstring
ISO datetime. Use end_date='none' for no expiration.
end_datestring
Alias for end_at. Set to 'none' for no expiration.
max_pricenumber
max_usesinteger
min_pricenumber
min_quantityinteger
namestring
one_use_by_userboolean
registered_onlyboolean
specific_registered_idsarray
specific_registered_onlyboolean
start_atstring
valuenumber
shop_list_promocodes_productList promocodes based on a dedicated product.2 params

List promocodes based on a dedicated product.

Parameters* required
pageinteger
per_pageinteger
shop_create_promocode_productCreate a promocode based on a dedicated product.17 params

Create a promocode based on a dedicated product.

Parameters* required
codestring
conditionsstring
one of NONE · PRICE_RANGE · NUMBER_OF_PRODUCTS
discount_typestring
one of PERCENT · ABSOLUTE
end_atstring
ISO datetime. Use end_date='none' for no expiration.
end_datestring
Alias for end_at. Set to 'none' for no expiration.
max_pricenumber
max_usesinteger
min_pricenumber
min_quantityinteger
namestring
one_use_by_userboolean
product_idinteger
Product this promocode applies to
registered_onlyboolean
specific_registered_idsarray
specific_registered_onlyboolean
start_atstring
valuenumber
shop_list_promocodes_tagsList promocodes based on dedicated tags.2 params

List promocodes based on dedicated tags.

Parameters* required
pageinteger
per_pageinteger
shop_create_promocode_tagsCreate a promocode based on dedicated tags.17 params

Create a promocode based on dedicated tags.

Parameters* required
codestring
conditionsstring
one of NONE · PRICE_RANGE · NUMBER_OF_PRODUCTS
discount_typestring
one of PERCENT · ABSOLUTE
end_atstring
ISO datetime. Use end_date='none' for no expiration.
end_datestring
Alias for end_at. Set to 'none' for no expiration.
max_pricenumber
max_usesinteger
min_pricenumber
min_quantityinteger
namestring
one_use_by_userboolean
registered_onlyboolean
specific_registered_idsarray
specific_registered_onlyboolean
start_atstring
tagsarray
List of tags this promocode applies to
valuenumber
shop_list_downloadsList app download statistics for the shop.3 params

List app download statistics for the shop.

Parameters* required
end_datestring
End date (YYYY-MM-DD)
platformstring
one of all · android · ipad · iphone
start_datestring
Start date (YYYY-MM-DD)
shop_list_downloads_globalList global (all-time) app download statistics for the shop.1 params

List global (all-time) app download statistics for the shop.

Parameters* required
platformstring
one of all · android · ipad · iphone
shop_list_launchesList app launch statistics for the shop.3 params

List app launch statistics for the shop.

Parameters* required
end_datestring
YYYY-MM-DD
platformstring
one of all · android · html5 · ipad · iphone
start_datestring
YYYY-MM-DD
shop_list_unique_launchesList unique app launch statistics for the shop.3 params

List unique app launch statistics for the shop.

Parameters* required
end_datestring
YYYY-MM-DD
platformstring
one of all · android · html5 · ipad · iphone
start_datestring
YYYY-MM-DD
shop_list_page_viewsList page view statistics for the shop.3 params

List page view statistics for the shop.

Parameters* required
end_datestring
YYYY-MM-DD
platformstring
one of all · android · html5 · ipad · iphone
start_datestring
YYYY-MM-DD
shop_list_page_views_per_weekdayList page views broken down by day of the week for the shop.2 params

List page views broken down by day of the week for the shop.

Parameters* required
end_datestring
YYYY-MM-DD
start_datestring
YYYY-MM-DD
shop_list_session_timesList session time statistics for the shop.2 params

List session time statistics for the shop.

Parameters* required
end_datestring
YYYY-MM-DD
start_datestring
YYYY-MM-DD
cms_list_sectionsList app sections for the current app by section type. This generic section catalog can return CMS content sections, content sections powered by other providers, and non-content sections. Use type='commerce' for eCommerce sections because commerce sections are not MCMS section...1 params

List app sections for the current app by section type. This generic section catalog can return CMS content sections, content sections powered by other providers, and non-content sections. Use type='commerce' for eCommerce sections because commerce sections are not MCMS section...

Parameters* required
typestring
Section type to discover. The generic section catalog can return any matching app section, including content and non-content sections. Use 'commerce' for eCommerce sections.
cms_list_cms_sectionsList CMS content sections for the current app by CMS content type. Use this to discover CMS-created article, maps, video, photo, agenda, or sound sections before listing CMS content that requires category ids. The response includes each section's id and title and its categorie...1 params

List CMS content sections for the current app by CMS content type. Use this to discover CMS-created article, maps, video, photo, agenda, or sound sections before listing CMS content that requires category ids. The response includes each section's id and title and its categorie...

Parameters* required
typestring
CMS content type to discover.one of article · maps · video · photo · agenda · sound
cms_list_articlesList CMS articles for the current app. Optionally filter by one or more category ids (use cms_list_cms_sections first to discover them); omit category to list across every article category. Also filter by publication status, article title search terms, article ids, pagination,...8 params

List CMS articles for the current app. Optionally filter by one or more category ids (use cms_list_cms_sections first to discover them); omit category to list across every article category. Also filter by publication status, article title search terms, article ids, pagination,...

Parameters* required
categoryarray
Optional article category ids returned by cms_list_cms_sections. Omit to list across all categories.
idarray
Optional article ids to filter the list.
orderstring
Sort order for the article list.one of ASC · DESC
pageinteger
Page index.
per_pageinteger
Number of articles per page.
searcharray
Optional title search terms.
sortstring
Sort field for the article list.one of recent · alpha
statusstring
Optional publication status filter. Omit to list every non-deleted item in scope.one of draft · published · stock · scheduled
cms_get_articleRetrieve one CMS article for the current app by article id. Use cms_list_articles first when the article id is unknown. The response fields accessTier and maxFreeParagraphs apply only to in-app-purchase items: maxFreeParagraphs is the number of body paragraphs shown as a free...1 params

Retrieve one CMS article for the current app by article id. Use cms_list_articles first when the article id is unknown. The response fields accessTier and maxFreeParagraphs apply only to in-app-purchase items: maxFreeParagraphs is the number of body paragraphs shown as a free...

Parameters* required
idinteger
Article id returned by cms_list_articles.
cms_create_articleCreate one CMS article for the current app. Use cms_list_cms_sections first to discover article category ids.15 params

Create one CMS article for the current app. Use cms_list_cms_sections first to discover article category ids.

Parameters* required
accessTierstring
Paywall tier. 'premium' locks the article behind an in-app purchase; 'free' leaves it open. Applies only to apps that sell in-app purchases.one of free · premium
authorstring
Optional byline or author display name. If omitted, the app account holder's name is used.
categoriesarray
Article category ids returned by cms_list_cms_sections.
commentsEnabledboolean
Whether end-user comments are enabled for this article.
datestring
Optional editorial date in RFC 3339 format.
displaySummaryInListboolean
Whether the article summary is shown in list views. Writable only when maxFreeParagraphs is 0.
leadinstring
Optional article deck HTML.
maxFreeParagraphsinteger
Number of body paragraphs shown as a free preview before purchase, 0 to 5. Applies only to premium in-app-purchase articles.
metaobject
Optional SEO metadata.
pinnedboolean
Whether the article is pinned in its category listing.
publicationEndDatestring
Optional future unpublication date in RFC 3339 format.
publishedDatestring
Optional future publication date. Requires status='stock' when provided.
slugstring
Optional URL slug; the server may normalize it.
statusstring
Publication status. Omit to default to published.one of published · draft · stock
titlestring
Article headline shown in feeds and on the item page.
cms_update_articleUpdate one CMS article for the current app by article id. Provide at least one field to change.16 params

Update one CMS article for the current app by article id. Provide at least one field to change.

Parameters* required
accessTierstring
Replacement paywall tier. 'premium' locks the article behind an in-app purchase; 'free' leaves it open. Applies only to apps that sell in-app purchases.one of free · premium
authorstring
Replacement byline or author display name.
categoriesarray
Replacement article category ids returned by cms_list_cms_sections.
commentsEnabledboolean
Whether end-user comments are enabled for this article.
datestring
Replacement editorial date in RFC 3339 format.
displaySummaryInListboolean
Whether the article summary is shown in list views. Writable only when maxFreeParagraphs is 0.
idinteger
Article id returned by cms_list_articles.
leadinstring
Replacement article deck HTML.
maxFreeParagraphsinteger
Number of body paragraphs shown as a free preview before purchase, 0 to 5. Applies only to premium in-app-purchase articles.
metaobject
Replacement SEO metadata.
pinnedboolean
Whether the article is pinned in its category listing.
publicationEndDatestring
Optional future unpublication date. Send an empty string to clear an existing scheduled unpublication.
publishedDatestring
Optional future publication date. Requires status='stock' when provided.
slugstring
Replacement URL slug; the server may normalize it.
statusstring
Replacement publication status.one of published · draft · stock
titlestring
Replacement article headline shown in feeds and on the item page.
cms_delete_articleDelete one CMS article for the current app by article id. Use cms_get_article or cms_list_articles first to confirm the target.1 params

Delete one CMS article for the current app by article id. Use cms_get_article or cms_list_articles first to confirm the target.

Parameters* required
idinteger
Article id returned by cms_list_articles.
cms_list_article_paragraphsList body paragraphs for one CMS article, sorted by paragraph position.1 params

List body paragraphs for one CMS article, sorted by paragraph position.

Parameters* required
idinteger
Article id returned by cms_list_articles.
cms_create_article_paragraphCreate one body paragraph under a CMS article. Paragraph type must be text, photo, quote, or embed. Required fields depend on the paragraph type.8 params

Create one body paragraph under a CMS article. Paragraph type must be text, photo, quote, or embed. Required fields depend on the paragraph type.

Parameters* required
captionstring
Optional caption for photo paragraphs.
contentstring
Required for text and quote paragraphs.
embedUrlstring
Required embed HTML for embed paragraphs. Set an explicit iframe width and height (for example 100%) so the block renders at a visible size.
idinteger
Article id returned by cms_list_articles.
isThumbnailboolean
Whether a photo paragraph should be used as the article thumbnail.
originalThumbnailstring
Required image URL, data URI, or base64 source for photo paragraphs.
positioninteger
Optional 1-based insert position; omit to append.
typestring
Paragraph body-block kind.one of text · photo · quote · embed
cms_get_article_paragraphRetrieve one body paragraph by article id and paragraph id.2 params

Retrieve one body paragraph by article id and paragraph id.

Parameters* required
idinteger
Article id returned by cms_list_articles.
paragraph_idinteger
Paragraph id returned by cms_list_article_paragraphs.
cms_update_article_paragraphUpdate one body paragraph under a CMS article. Provide at least one paragraph field to change.7 params

Update one body paragraph under a CMS article. Provide at least one paragraph field to change.

Parameters* required
captionstring
Replacement caption for photo paragraphs.
contentstring
Replacement text HTML or quote body, depending on paragraph type.
embedUrlstring
Replacement embed HTML for embed paragraphs. Set an explicit iframe width and height (for example 100%) so the block renders at a visible size.
idinteger
Article id returned by cms_list_articles.
isThumbnailboolean
Whether a photo paragraph should be used as the article thumbnail.
originalThumbnailstring
Replacement image URL, data URI, or base64 source for photo paragraphs.
paragraph_idinteger
Paragraph id returned by cms_list_article_paragraphs.
cms_delete_article_paragraphDelete one body paragraph from a CMS article by article id and paragraph id.2 params

Delete one body paragraph from a CMS article by article id and paragraph id.

Parameters* required
idinteger
Article id returned by cms_list_articles.
paragraph_idinteger
Paragraph id returned by cms_list_article_paragraphs.
cms_reorder_article_paragraphsReorder all body paragraphs for one CMS article. Pass a full ordered list of paragraph ids.2 params

Reorder all body paragraphs for one CMS article. Pass a full ordered list of paragraph ids.

Parameters* required
idinteger
Article id returned by cms_list_articles.
paragraph_idsarray
Full ordered list of paragraph ids for this article.
cms_list_mapsList CMS map (point of interest) items for the current app. Optionally filter by one or more category ids (use cms_list_cms_sections with type='maps' first to discover them); omit category to list across every map category. Also filter by publication status.8 params

List CMS map (point of interest) items for the current app. Optionally filter by one or more category ids (use cms_list_cms_sections with type='maps' first to discover them); omit category to list across every map category. Also filter by publication status.

Parameters* required
categoryarray
Optional map category ids returned by cms_list_cms_sections. Omit to list across all categories.
idarray
Optional map item ids to filter the list.
orderstring
Sort order for the map list.one of ASC · DESC
pageinteger
Page index.
per_pageinteger
Number of map items per page.
searcharray
Optional title search terms.
sortstring
Sort field for the map list.one of recent · alpha
statusstring
Optional publication status filter. Omit to list every non-deleted item in scope.one of draft · published · stock · scheduled
cms_get_mapRetrieve one CMS map item for the current app by map item id. Use cms_list_maps first when the map item id is unknown. The response fields accessTier and maxFreeParagraphs apply only to in-app-purchase items: maxFreeParagraphs is the number of body paragraphs shown as a free p...1 params

Retrieve one CMS map item for the current app by map item id. Use cms_list_maps first when the map item id is unknown. The response fields accessTier and maxFreeParagraphs apply only to in-app-purchase items: maxFreeParagraphs is the number of body paragraphs shown as a free p...

Parameters* required
idinteger
Map item id returned by cms_list_maps.
cms_create_mapCreate one CMS map (point of interest) item for the current app. Use cms_list_cms_sections with type='maps' first to discover map category ids.17 params

Create one CMS map (point of interest) item for the current app. Use cms_list_cms_sections with type='maps' first to discover map category ids.

Parameters* required
accessTierstring
Paywall tier. 'premium' locks the item behind an in-app purchase; 'free' leaves it open. Applies only to apps that sell in-app purchases.one of free · premium
addressstring
Street or place address of the point of interest.
categoriesarray
Map category ids returned by cms_list_cms_sections.
commentsEnabledboolean
Whether end-user comments are enabled for this map item.
emailstring
Optional contact email for the map point.
latitudenumber
Latitude of the point in decimal degrees.
leadinstring
Optional map point deck HTML.
longitudenumber
Longitude of the point in decimal degrees.
metaobject
Optional SEO metadata.
phoneNumberstring
Optional contact phone number for the map point.
publicationEndDatestring
Optional future unpublication date in RFC 3339 format.
publishedDatestring
Optional future publication date. Requires status='stock' when provided.
slugstring
Optional URL slug; the server may normalize it.
statusstring
Publication status. Omit to default to published.one of published · draft · stock
titlestring
Map point name shown in feeds and on the item page.
useThumbAsPinIconboolean
Whether the map item thumbnail is used as the map pin icon. On create the server stores this as off; set a thumbnail via a photo paragraph first, then update this flag.
websitestring
Optional website URL for the map point.
cms_update_mapUpdate one CMS map item for the current app by map item id. Provide at least one field to change.18 params

Update one CMS map item for the current app by map item id. Provide at least one field to change.

Parameters* required
accessTierstring
Replacement paywall tier. 'premium' locks the item behind an in-app purchase; 'free' leaves it open. Applies only to apps that sell in-app purchases.one of free · premium
addressstring
Replacement street or place address; cannot be cleared.
categoriesarray
Replacement map category ids returned by cms_list_cms_sections.
commentsEnabledboolean
Whether end-user comments are enabled for this map item.
emailstring
Replacement contact email for the map point.
idinteger
Map item id returned by cms_list_maps.
latitudenumber
Replacement latitude in decimal degrees.
leadinstring
Replacement map point deck HTML.
longitudenumber
Replacement longitude in decimal degrees.
metaobject
Replacement SEO metadata.
phoneNumberstring
Replacement contact phone number for the map point.
publicationEndDatestring
Optional future unpublication date. Send an empty string to clear an existing scheduled unpublication.
publishedDatestring
Optional future publication date. Requires status='stock' when provided.
slugstring
Replacement URL slug; the server may normalize it.
statusstring
Replacement publication status.one of published · draft · stock
titlestring
Replacement map point name.
useThumbAsPinIconboolean
Whether the map item thumbnail is used as the map pin icon.
websitestring
Replacement website URL for the map point.
cms_delete_mapDelete one CMS map item for the current app by map item id. Use cms_get_map or cms_list_maps first to confirm the target.1 params

Delete one CMS map item for the current app by map item id. Use cms_get_map or cms_list_maps first to confirm the target.

Parameters* required
idinteger
Map item id returned by cms_list_maps.
cms_list_map_paragraphsList body paragraphs for one CMS map item, sorted by paragraph position.1 params

List body paragraphs for one CMS map item, sorted by paragraph position.

Parameters* required
idinteger
Map item id returned by cms_list_maps.
cms_create_map_paragraphCreate one body paragraph under a CMS map item. Paragraph type must be text, photo, quote, or embed. Required fields depend on the paragraph type.8 params

Create one body paragraph under a CMS map item. Paragraph type must be text, photo, quote, or embed. Required fields depend on the paragraph type.

Parameters* required
captionstring
Optional caption for photo paragraphs.
contentstring
Required for text and quote paragraphs.
embedUrlstring
Required embed HTML for embed paragraphs. Set an explicit iframe width and height (for example 100%) so the block renders at a visible size.
idinteger
Map item id returned by cms_list_maps.
isThumbnailboolean
Whether a photo paragraph should be used as the map item thumbnail.
originalThumbnailstring
Required image URL, data URI, or base64 source for photo paragraphs.
positioninteger
Optional 1-based insert position; omit to append.
typestring
Paragraph body-block kind.one of text · photo · quote · embed
cms_get_map_paragraphRetrieve one body paragraph by map item id and paragraph id.2 params

Retrieve one body paragraph by map item id and paragraph id.

Parameters* required
idinteger
Map item id returned by cms_list_maps.
paragraph_idinteger
Paragraph id returned by cms_list_map_paragraphs.

GoodBarber Skills

44 AI-powered skills to manage your GoodBarber app with any MCP-compatible client — eCommerce, Community, Membership, and CMS.

Listed on Smithery.

These skills connect to the GoodBarber MCP server and give your AI assistant structured workflows to manage your products, orders, customers, promotions, subscriptions, content, analytics, and more — all from a conversational interface.


What are Skills?

Skills are instruction files (.md) that teach an AI assistant how to perform specific tasks using your GoodBarber app's API via MCP (Model Context Protocol). Instead of manually calling API tools one by one, a skill orchestrates the full workflow — from data retrieval to formatted report — in a single natural-language request.

For example, asking "Show me my best sellers this month" triggers the shop-best-sellers skill, which automatically fetches your orders and catalog, computes rankings, and returns a formatted report.


Quick Start

Option A — Install as a Claude Code plugin

The repo is a Claude Code plugin: it ships the GoodBarber MCP server (.mcp.json) and the 44 skills in one package.

git clone https://github.com/goodbarber/goodbarber-skills.git
claude --plugin-dir ./goodbarber-skills

Once the plugin is listed in the community marketplace, install it from any session instead:

/plugin marketplace add anthropics/claude-plugins-community
/plugin install goodbarber@claude-community

On the first GoodBarber tool call, Claude Code opens the authorization page: paste your Public API key and validate. Details in SETUP.md.

Option B — Manual setup (any MCP client)

1. Connect the GoodBarber MCP

You need to add the GoodBarber MCP server as a custom connector in your client. The server implements the MCP 2026-07-28 protocol over Streamable HTTP (earlier handshake-era clients still connect). The /mcp/sse path name is historical and kept only for backward compatibility.

MCP Server URLs:

SetupURL
Single apphttps://mcp.goodbarber.dev/mcp/sse
Multiple appshttps://mcp.goodbarber.dev/<app_id>/mcp/sse

Replace <app_id> with your GoodBarber app ID if you manage multiple apps.

Authentication: the GoodBarber MCP server uses a browser-based OAuth flow.

When your MCP client connects to the MCP endpoint, it may open an authorization page on mcp.goodbarber.dev. On that page, you will be asked to paste your GoodBarber Public API key and validate the authorization. Generate your Public API key from your app's GoodBarber backoffice, on the Public API / MCP server page.

Important:

  • Do not open the /authorize URL manually in your browser.
  • Start from the MCP client by connecting to the MCP endpoint.
  • The client generates the full authorization request parameters automatically (redirect_uri, client_id, state, code_challenge, etc.).

If you open the authorization page manually without those parameters, the authentication will fail.

Claude Desktop (Cowork):

  1. Open Settings > Connectors
  2. Click Add custom connector
  3. Enter the MCP server URL above
  4. The connector opens the GoodBarber authorization page — paste your Public API key there and validate

Claude Code (CLI):

# Single app
claude mcp add goodbarber --transport http https://mcp.goodbarber.dev/mcp/sse

# Multiple apps
claude mcp add goodbarber --transport http https://mcp.goodbarber.dev/<app_id>/mcp/sse

Then start a Claude Code session — on the first GoodBarber tool call, the CLI will open the GoodBarber authorization page in your browser. Paste your Public API key there and validate to complete the OAuth flow.

Cursor / VS Code / Windsurf:

Add to your MCP configuration file (.cursor/mcp.json, .vscode/mcp.json, etc.):

{
  "mcpServers": {
    "goodbarber": {
      "url": "https://mcp.goodbarber.dev/mcp/sse"
    }
  }
}

The first connection from your client triggers the OAuth flow in your browser — paste your Public API key on the GoodBarber authorization page and validate.

Cline:

Open MCP Servers in Cline, choose "Remote server", transport Streamable HTTP, URL https://mcp.goodbarber.dev/mcp/sse, or add this to cline_mcp_settings.json:

{
  "mcpServers": {
    "goodbarber": {
      "type": "streamableHttp",
      "url": "https://mcp.goodbarber.dev/mcp/sse",
      "disabled": false,
      "autoApprove": []
    }
  }
}

On the first connection Cline opens the GoodBarber authorization page in your browser — paste your Public API token there and validate. No API key in the config, no environment variable. Agents can also follow llms-install.md.

Any other MCP-compatible client:

Point your client to the MCP endpoint above (Streamable HTTP). The GoodBarber MCP server follows the standard MCP protocol and works with any compliant client.

2. Install the skills

Clone this repo and copy only the skills for your app type:

git clone https://github.com/goodbarber/goodbarber-skills.git

Note: the examples below use Claude's local skills directory (~/.claude/skills/). If you use another client, copy the skill folders to the directory expected by that client.

eCommerce app:

cp -r goodbarber-skills/skills/ecommerce/* ~/.claude/skills/

Community app:

cp -r goodbarber-skills/skills/community/* ~/.claude/skills/

Membership app:

cp -r goodbarber-skills/skills/membership/* ~/.claude/skills/

CMS / Content (any app with content sections):

cp -r goodbarber-skills/skills/cms/* ~/.claude/skills/

Tip: CMS skills are cross-cutting — install them alongside any app type that has content sections (articles, agenda, maps, galleries, videos, sounds).

Tip: If your GoodBarber app combines multiple types (e.g. eCommerce + Membership), install skills from both directories.

Note: skill directory names carry their family prefix (shop-, community-, membership-, cms-) and are unique, so skills from several families can live in the same destination without collisions.

3. Verify

Ask your AI assistant: "What skills do you have?" — it should list the installed GoodBarber skills.

Option C — Install in Grok Build

The same package is a Grok Build plugin: .grok-plugin/plugin.json lists the 44 skills and .mcp.json declares the GoodBarber MCP server.

grok plugin install goodbarber/goodbarber-skills --trust

Once the plugin is listed in the xAI plugin marketplace, install it by name instead (grok plugin install goodbarber --trust) or pick it in /marketplace.

On the first GoodBarber tool call, Grok opens the authorization page in your browser: paste your Public API key and validate. Use /mcps to check the connection and /skills to list the 44 skills. Details in SETUP.md.


Skills by App Type

eCommerce (18 skills)

Catalog & Products
SkillDescription
shop-best-sellersRank products by sales volume and revenue over a given period
shop-catalog-auditDetect incomplete product sheets (missing images, descriptions, variants)
shop-low-performersIdentify products with zero or very low sales
shop-orphan-productsFind products not assigned to any collection
shop-product-launchGuided creation of a full product with variants, images, and SEO
shop-stock-checkAudit stock levels — flag out-of-stock and low-stock items
shop-reorder-plannerGenerate a supplier-ready replenishment queue based on sales velocity
Orders & Customers
SkillDescription
shop-order-followupTo-do list of orders to process (pending, to ship, to deliver)
shop-customer-insightsSegment customers into VIP, loyal, dormant, and one-shot profiles
shop-rfm-segmentationRecency / Frequency / Monetary customer segmentation
shop-prospect-nurturePrioritize prospects and suggest conversion actions
Promotions
SkillDescription
shop-promo-campaignCreate a promo code + send an announcement push in one workflow
shop-promo-performance-reviewAnalyze promo impact: before, during, and after the campaign
Analytics & Communication
SkillDescription
shop-traffic-reportApp-level analytics: page views, launches, sessions, platforms
shop-kpi-monitorThreshold-based daily/weekly KPI health alerts
shop-weekly-digestAutomated weekly business recap
shop-push-broadcastCompose, preview, schedule, and send a push notification to all customers
shop-push-targetedCompose, preview, schedule, and send a push to specific customers or prospects

Community (5 skills)

SkillDescription
community-traffic-reportApp analytics: page views, launches, sessions by platform
community-push-broadcastSend a push to everyone or to specific community groups
community-push-targetedSend a push to specific community users
community-device-landscapePlatform distribution, top devices, OS versions
community-weekly-digestWeekly community activity recap

Membership (10 skills)

Subscriptions
SkillDescription
membership-subscription-auditActive vs expired, churn rate, at-risk subscribers, winback opportunities
membership-expiration-calendarUpcoming subscription expirations timeline
membership-longest-subscribersIdentify your most loyal long-term subscribers
membership-internal-subscription-grantCreate, update, or revoke internal subscriptions
Users & Analytics
SkillDescription
membership-prospect-followupPrioritize membership prospects for conversion
membership-traffic-reportApp analytics: page views, launches, sessions by platform
membership-push-broadcastSend a push notification to all eligible users
membership-push-targetedSend a push to specific users or subscription-status audiences
membership-device-landscapePlatform distribution, top devices, OS versions
membership-weekly-digestWeekly membership business recap

CMS / Content (11 skills)

Skills for managing editorial content — articles, agenda events, map points of interest, photo galleries, videos, and sounds. Work with any GoodBarber app that has CMS content sections.

Authoring & Publishing
SkillDescription
cms-article-publishGuided creation of a full article: body paragraphs, category, slug, scheduling, paywall
cms-event-publishCreate an agenda event with start/end datetime, location, and body content
cms-place-publishCreate a map point of interest (address + coordinates) with description
cms-gallery-builderBatch-upload images into a photo gallery and set titles/status
cms-article-restructureReorder, clean, and fix the body paragraphs of an existing article
Quality & Governance
SkillDescription
cms-content-auditDetect incomplete content across all types (no cover, empty body, missing dates/coords)
cms-draft-reviewSurface stale drafts and unfinished content with a recommended next step
cms-paywall-auditIAP apps: check premium content has a coherent free preview (accessTier, maxFreeParagraphs)
cms-stale-content-refreshRank aging articles as refresh, re-promote, or retire candidates
Planning & Recap
SkillDescription
cms-editorial-calendarForward view: scheduled publications, upcoming events, expiring content
cms-weekly-digestWhat published this week + what's scheduled next week, by content type

Note: weekly-digest, traffic-report, push-broadcast, and push-targeted names recur across app types. The CMS skills are namespaced by a cms- prefix in their frontmatter (e.g. cms-weekly-digest) to avoid collisions — keep them in a separate folder if you install skills from multiple directories.


Usage Examples

"Show me my best sellers this month"
→ best-sellers

"Any products running low on stock?"
→ stock-check

"Create a 20% promo code for summer and notify everyone"
→ promo-campaign

"How's my churn rate looking?"
→ subscription-audit

"Send a push to the Paris group: meetup Friday at 7pm"
→ push-broadcast (community)

"Send a push to Marie and Alex: your item is back in stock"
→ push-targeted (eCommerce)

"Notify expired subscribers about the renewal offer tomorrow at 9am"
→ push-targeted (membership)

"Give me my weekly digest"
→ weekly-digest

"Write and publish an article about our new opening hours"
→ article-publish (cms)

"What content is scheduled to go live next week?"
→ editorial-calendar (cms)

"Audit my content for missing covers and empty posts"
→ content-audit (cms)

Design Principles

All skills follow these rules:

  • Pagination-aware — Large datasets are filtered server-side, not blindly paginated
  • Fuzzy matching — Mention a product or collection by name; the skill resolves it
  • Workflow chaining — Every skill suggests 2–3 related skills to run next
  • No destructive actions without confirmation — Mutations always require explicit user validation
  • Structured output — Every skill returns a formatted report, not a one-liner

Compatibility

These skills work with any MCP-compatible AI client, including:

  • Claude Desktop (Cowork)
  • Claude Code (CLI)
  • Cursor
  • VS Code (Copilot, Claude, Cline, etc.)
  • Windsurf
  • Codex CLI
  • Gemini CLI
  • Grok Build (CLI)
  • Any client supporting the Model Context Protocol

Repo Structure

goodbarber-skills/
├── .claude-plugin/plugin.json
├── .grok-plugin/plugin.json   # Grok Build manifest (lists the 44 skills)
├── .mcp.json
├── README.md
├── SETUP.md
├── server.json        # manifest published to the official MCP registry (dev.goodbarber/goodbarber-public-mcp)
└── skills/
    ├── ecommerce/
    │   ├── shop-best-sellers/SKILL.md
    │   ├── shop-catalog-audit/SKILL.md
    │   ├── shop-customer-insights/SKILL.md
    │   ├── shop-kpi-monitor/SKILL.md
    │   ├── shop-low-performers/SKILL.md
    │   ├── shop-order-followup/SKILL.md
    │   ├── shop-orphan-products/SKILL.md
    │   ├── shop-product-launch/SKILL.md
    │   ├── shop-promo-campaign/SKILL.md
    │   ├── shop-promo-performance-review/SKILL.md
    │   ├── shop-prospect-nurture/SKILL.md
    │   ├── shop-push-broadcast/SKILL.md
    │   ├── shop-push-targeted/SKILL.md
    │   ├── shop-reorder-planner/SKILL.md
    │   ├── shop-rfm-segmentation/SKILL.md
    │   ├── shop-stock-check/SKILL.md
    │   ├── shop-traffic-report/SKILL.md
    │   └── shop-weekly-digest/SKILL.md
    ├── community/
    │   ├── community-device-landscape/SKILL.md
    │   ├── community-push-broadcast/SKILL.md
    │   ├── community-push-targeted/SKILL.md
    │   ├── community-traffic-report/SKILL.md
    │   └── community-weekly-digest/SKILL.md
    ├── membership/
    │   ├── membership-device-landscape/SKILL.md
    │   ├── membership-expiration-calendar/SKILL.md
    │   ├── membership-internal-subscription-grant/SKILL.md
    │   ├── membership-longest-subscribers/SKILL.md
    │   ├── membership-prospect-followup/SKILL.md
    │   ├── membership-push-broadcast/SKILL.md
    │   ├── membership-push-targeted/SKILL.md
    │   ├── membership-subscription-audit/SKILL.md
    │   ├── membership-traffic-report/SKILL.md
    │   └── membership-weekly-digest/SKILL.md
    └── cms/
        ├── cms-article-publish/SKILL.md
        ├── cms-article-restructure/SKILL.md
        ├── cms-content-audit/SKILL.md
        ├── cms-draft-review/SKILL.md
        ├── cms-editorial-calendar/SKILL.md
        ├── cms-event-publish/SKILL.md
        ├── cms-gallery-builder/SKILL.md
        ├── cms-paywall-audit/SKILL.md
        ├── cms-place-publish/SKILL.md
        ├── cms-stale-content-refresh/SKILL.md
        └── cms-weekly-digest/SKILL.md

Install with the skills CLI

skills.sh

The skills CLI installs these skills into any supported agent (Claude Code, Cursor, Codex, GitHub Copilot, Windsurf, Gemini CLI, Antigravity, Cline and more) in one command:

npx skills add goodbarber/goodbarber-skills

Pick the skills you need from the list, or install all 44 with --all. The skills call the GoodBarber MCP server, so connect it first (see "Install the MCP server" above).

Contributing

Want to add a skill? Create a folder in skills/<app-type>/ with a SKILL.md file. Follow the existing format: YAML frontmatter (name, description, compatibility) + markdown instructions with tool workflow, input/output contracts, and guardrails.

License

The Unlicense — public domain, no restrictions.

Featured
CodeRabbit
CodeRabbit
AI writes the code. CodeRabbit catches the slop.
Try For Free →
ego lite browserego lite browser
ego lite browser
Fastest browser for AI agents to run web automation tasks, always free.
Download Free life-time →
Granola, the best AI meeting recorder
Granola, the best AI meeting recorder
Notes, actions and memory. Without a meeting bot. First month 100% off.
Download for free →
CodeHealth MCP ServerCodeHealth MCP Server
CodeHealth MCP Server
Protect your code quality, stop the AI slop.
Try For Free →
belt - the only tool your agent needs
belt - the only tool your agent needs
belt cli automatically finds the best tools and skills for your agent. image, video, music, tts...
one prompt install →
AppSignal
AppSignal
Monitor with ease. Code with confidence.
Start Free Trial →
Agent, connect blockchain
Agent, connect blockchain
Connect your Claude agent to live crypto prices and trading routes via 1inch
Get the MCP →
Block distraction from your iPhone for freeBlock distraction from your iPhone for free
Block distraction from your iPhone for free
Block distracting apps from your iPhone permanently without a 3rd party app. Free and open source.
Block now (100% free) →
Registryactive
TransportSSE
UpdatedJun 1, 2026
View on GitHub