docs: description required for "Add Extension" in cli - phase 2 (#5635)
This commit is contained in:
@@ -1,16 +1,17 @@
|
||||
---
|
||||
title: Cloudinary Asset Management Extension
|
||||
description: Add Cloudinary Asset Management MCP Server as a Goose Extension
|
||||
description: Add Cloudinary Asset Management MCP Server as a goose Extension
|
||||
---
|
||||
|
||||
import Tabs from '@theme/Tabs';
|
||||
import TabItem from '@theme/TabItem';
|
||||
import GooseDesktopInstaller from '@site/src/components/GooseDesktopInstaller';
|
||||
import CLIExtensionInstructions from '@site/src/components/CLIExtensionInstructions';
|
||||
import YouTubeShortEmbed from '@site/src/components/YouTubeShortEmbed';
|
||||
|
||||
<YouTubeShortEmbed videoUrl="https://www.youtube.com/embed/4diEvoRFVrQ" />
|
||||
|
||||
This tutorial covers how to add the [Cloudinary Asset Management MCP Server](https://github.com/cloudinary/asset-management-js) as a Goose extension to automate complex image processing workflows that would typically require specialized design software or manual editing.
|
||||
This tutorial covers how to add the [Cloudinary Asset Management MCP Server](https://github.com/cloudinary/asset-management-js) as a goose extension to automate complex image processing workflows that would typically require specialized design software or manual editing.
|
||||
|
||||
:::tip TLDR
|
||||
|
||||
@@ -47,164 +48,29 @@ Note that you'll need [Node.js](https://nodejs.org/) installed on your system to
|
||||
args={["-y", "--package", "@cloudinary/asset-management", "--", "mcp", "start"]}
|
||||
envVars={[{ name: "CLOUDINARY_URL", label: "Cloudinary URL (cloudinary://api_key:api_secret@cloud_name)" }]}
|
||||
apiKeyLink="https://console.cloudinary.com/settings/api-keys"
|
||||
apiKeyLinkText="Get your Cloudinary URL"
|
||||
apiKeyLinkText="Cloudinary URL"
|
||||
/>
|
||||
</TabItem>
|
||||
<TabItem value="cli" label="goose CLI">
|
||||
1. Run the `configure` command:
|
||||
```sh
|
||||
goose configure
|
||||
```
|
||||
|
||||
2. Choose to add a `Command-line Extension`
|
||||
```sh
|
||||
┌ goose-configure
|
||||
│
|
||||
◇ What would you like to configure?
|
||||
│ Add Extension (Connect to a new extension)
|
||||
│
|
||||
◆ What type of extension would you like to add?
|
||||
│ ○ Built-in Extension
|
||||
// highlight-start
|
||||
│ ● Command-line Extension (Run a local command or script)
|
||||
// highlight-end
|
||||
│ ○ Remote Extension (SSE)
|
||||
│ ○ Remote Extension (Streaming HTTP)
|
||||
└
|
||||
```
|
||||
|
||||
3. Give your extension a name
|
||||
```sh
|
||||
┌ goose-configure
|
||||
│
|
||||
◇ What would you like to configure?
|
||||
│ Add Extension (Connect to a new extension)
|
||||
│
|
||||
◇ What type of extension would you like to add?
|
||||
│ Command-line Extension
|
||||
│
|
||||
// highlight-start
|
||||
◆ What would you like to call this extension?
|
||||
│ cloudinary
|
||||
// highlight-end
|
||||
└
|
||||
```
|
||||
|
||||
4. Enter the command
|
||||
```sh
|
||||
┌ goose-configure
|
||||
│
|
||||
◇ What would you like to configure?
|
||||
│ Add Extension (Connect to a new extension)
|
||||
│
|
||||
◇ What type of extension would you like to add?
|
||||
│ Command-line Extension
|
||||
│
|
||||
◇ What would you like to call this extension?
|
||||
│ cloudinary
|
||||
│
|
||||
// highlight-start
|
||||
◆ What command should be run?
|
||||
│ npx -y --package @cloudinary/asset-management -- mcp start
|
||||
// highlight-end
|
||||
└
|
||||
```
|
||||
|
||||
5. Enter the number of seconds Goose should wait for actions to complete before timing out. Default is 300s
|
||||
```sh
|
||||
┌ goose-configure
|
||||
│
|
||||
◇ What would you like to configure?
|
||||
│ Add Extension (Connect to a new extension)
|
||||
│
|
||||
◇ What type of extension would you like to add?
|
||||
│ Command-line Extension
|
||||
│
|
||||
◇ What would you like to call this extension?
|
||||
│ cloudinary
|
||||
│
|
||||
◇ What command should be run?
|
||||
│ npx -y --package @cloudinary/asset-management -- mcp start
|
||||
│
|
||||
// highlight-start
|
||||
◆ Please set the timeout for this tool (in secs):
|
||||
│ 300
|
||||
// highlight-end
|
||||
└
|
||||
```
|
||||
|
||||
6. Choose to add a description. If you select "Yes" here, you will be prompted to enter a description for the extension.
|
||||
```sh
|
||||
┌ goose-configure
|
||||
│
|
||||
◇ What would you like to configure?
|
||||
│ Add Extension (Connect to a new extension)
|
||||
│
|
||||
◇ What type of extension would you like to add?
|
||||
│ Command-line Extension
|
||||
│
|
||||
◇ What would you like to call this extension?
|
||||
│ cloudinary
|
||||
│
|
||||
◇ What command should be run?
|
||||
│ npx -y --package @cloudinary/asset-management -- mcp start
|
||||
│
|
||||
◆ Please set the timeout for this tool (in secs):
|
||||
│ 300
|
||||
│
|
||||
// highlight-start
|
||||
◇ Would you like to add a description?
|
||||
│ No
|
||||
// highlight-end
|
||||
│
|
||||
└
|
||||
```
|
||||
|
||||
7. Obtain your [Cloudinary URL](https://console.cloudinary.com/settings/api-keys) from your dashboard and paste it in.
|
||||
|
||||
```sh
|
||||
┌ goose-configure
|
||||
│
|
||||
◇ What would you like to configure?
|
||||
│ Add Extension (Connect to a new extension)
|
||||
│
|
||||
◇ What type of extension would you like to add?
|
||||
│ Command-line Extension
|
||||
│
|
||||
◇ What would you like to call this extension?
|
||||
│ cloudinary
|
||||
│
|
||||
◇ What command should be run?
|
||||
│ npx -y --package @cloudinary/asset-management -- mcp start
|
||||
│
|
||||
◇ Please set the timeout for this tool (in secs):
|
||||
│ 300
|
||||
│
|
||||
◇ Would you like to add a description?
|
||||
│ No
|
||||
│
|
||||
// highlight-start
|
||||
◆ Would you like to add environment variables?
|
||||
│ Yes
|
||||
│
|
||||
◇ Environment variable name:
|
||||
│ CLOUDINARY_URL
|
||||
│
|
||||
◇ Environment variable value:
|
||||
│ cloudinary://<your_api_key>:<your_api_secret>@<your_cloud_name>
|
||||
│
|
||||
◇ Add another environment variable?
|
||||
│ No
|
||||
// highlight-end
|
||||
└ Added cloudinary extension
|
||||
```
|
||||
|
||||
<CLIExtensionInstructions
|
||||
name="Cloudinary"
|
||||
description="Powerful media processing and transformation"
|
||||
command="npx -y --package @cloudinary/asset-management -- mcp start"
|
||||
envVars={[
|
||||
{ key: "CLOUDINARY_URL", value: "▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪" }
|
||||
]}
|
||||
infoNote={
|
||||
<>
|
||||
Obtain your <a href="https://console.cloudinary.com/settings/api-keys" target="_blank" rel="noopener noreferrer">Cloudinary URL</a> from your dashboard and paste it in. For example: <code>cloudinary://<your_api_key>:<your_api_secret>@<your_cloud_name></code>
|
||||
</>
|
||||
}
|
||||
/>
|
||||
</TabItem>
|
||||
</Tabs>
|
||||
|
||||
## Example Usage
|
||||
|
||||
Let's use the Cloudinary extension to find and transform product images with advanced visual effects. In this example, we'll demonstrate how Goose can help you:
|
||||
Let's use the Cloudinary extension to find and transform product images with advanced visual effects. In this example, we'll demonstrate how goose can help you:
|
||||
|
||||
1. Search for specific images in your media library
|
||||
2. Apply complex transformations including background removal
|
||||
@@ -214,7 +80,7 @@ Let's use the Cloudinary extension to find and transform product images with adv
|
||||
Anthropic's Claude 4 Sonnet was used for this task.
|
||||
:::
|
||||
|
||||
### Goose Prompt
|
||||
### goose Prompt
|
||||
```
|
||||
1. find shoe images in my Cloudinary samples that have 'shoe' in the filename or public ID.
|
||||
2. Let's transform the first result and only extract just the shoes
|
||||
@@ -222,7 +88,7 @@ Anthropic's Claude 4 Sonnet was used for this task.
|
||||
4. Add a background to the image. It should be black
|
||||
```
|
||||
|
||||
### Goose Output
|
||||
### goose Output
|
||||
```
|
||||
I'll help you find shoe images in your Cloudinary samples and apply the transformations you've requested. Let me start by searching for images with 'shoe' in the filename or public ID.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user