diff --git a/documentation/docs/mcp/_template_.mdx b/documentation/docs/mcp/_template_.mdx index f88efb6898d2..f53a4245c991 100644 --- a/documentation/docs/mcp/_template_.mdx +++ b/documentation/docs/mcp/_template_.mdx @@ -56,7 +56,7 @@ This tutorial covers how to add the [{Extension Name} MCP Server](/) as a goose args={["-y", "@package/name"]} timeout={300} envVars={[ - { name: "API_KEY", label: "••••••••••••••••" } + { name: "API_KEY", label: "Description or placeholder value" } ]} apiKeyLink="https://example.com/api-keys" apiKeyLinkText="Service Access Token" @@ -87,7 +87,7 @@ This tutorial covers how to add the [{Extension Name} MCP Server](/) as a goose command="{full command with args}" timeout={300} envVars={[ - { key: "API_KEY", value: "••••••••••••••••" } + { key: "API_KEY", value: "▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪" } ]} infoNote={ <> @@ -107,7 +107,7 @@ This tutorial covers how to add the [{Extension Name} MCP Server](/) as a goose url="https://example-server.com/endpoint" timeout={300} envVars={[ // also used for http request headers - { key: "API_KEY", value: "••••••••••••••••" } + { key: "API_KEY", value: "▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪" } ]} infoNote={ <> diff --git a/documentation/docs/mcp/agentql-mcp.md b/documentation/docs/mcp/agentql-mcp.md index 8dce21b21961..3ec17febf3f7 100644 --- a/documentation/docs/mcp/agentql-mcp.md +++ b/documentation/docs/mcp/agentql-mcp.md @@ -1,15 +1,16 @@ --- title: AgentQL Extension -description: Add AgentQL MCP Server as a Goose Extension +description: Add AgentQL 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'; -This tutorial covers how to add the [AgentQL MCP Server](https://github.com/tinyfish-io/agentql-mcp) as a Goose extension to extract and transform unstructured web content into structured data. +This tutorial covers how to add the [AgentQL MCP Server](https://github.com/tinyfish-io/agentql-mcp) as a goose extension to extract and transform unstructured web content into structured data. :::tip TLDR @@ -52,153 +53,19 @@ Note that you'll need [Node.js](https://nodejs.org/) installed on your system to /> - 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? - │ agentql - // 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? - │ agentql - │ - // highlight-start - ◆ What command should be run? - │ npx -y agentql-mcp - // 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? - │ agentql - │ - ◇ What command should be run? - │ npx -y agentql-mcp - │ - // 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? - │ agentql - │ - ◇ What command should be run? - │ npx -y agentql-mcp - │ - ◆ Please set the timeout for this tool (in secs): - │ 300 - │ - // highlight-start - ◇ Would you like to add a description? - │ No - // highlight-end - │ - └ - ``` - - 7. Obtain an [AgentQL API Key](https://dev.agentql.com/api-keys) 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? - │ agentql - │ - ◇ What command should be run? - │ npx -y agentql-mcp - │ - ◇ 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: - │ AGENTQL_API_KEY - │ - ◇ Environment variable value: - │ ▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪ - │ - ◇ Add another environment variable? - │ No - // highlight-end - └ Added agentql extension - ``` + + Obtain your AgentQL API Key and paste it in. + + } + /> @@ -211,7 +78,7 @@ Let's use the AgentQL extension to gather and structure tech conference data to Anthropic's Claude 4 Sonnet was used for this task. ::: -### Goose Prompt +### goose Prompt ``` I'm a tech conference speaker planning my 2025-2026 submissions. @@ -230,7 +97,7 @@ To identify: Structure results as JSON ``` -### Goose Output +### goose Output ``` I'll help you analyze conference patterns using the web data extraction tool. Let me break this down into a few queries to get comprehensive data. diff --git a/documentation/docs/mcp/alby-mcp.md b/documentation/docs/mcp/alby-mcp.md index dc584277cf17..7347fdfac992 100644 --- a/documentation/docs/mcp/alby-mcp.md +++ b/documentation/docs/mcp/alby-mcp.md @@ -1,7 +1,7 @@ --- title: Alby Bitcoin Payments Extension -description: Connect Goose to your Bitcoin Lightning Wallet +description: Connect goose to your Bitcoin Lightning Wallet --- import Tabs from '@theme/Tabs'; @@ -13,7 +13,7 @@ import { PanelLeft } from 'lucide-react'; -This tutorial covers how to add the [Alby Bitcoin Payments MCP Server](https://github.com/getalby/mcp) as a Goose extension to interact with your lightning wallet, make and receive payments, list transactions, convert fiat amounts to sats, request invoices from lightning addresses, and interact with paid MCP tools (such as ones built with [PaidMCP](https://github.com/getAlby/paidmcp)). +This tutorial covers how to add the [Alby Bitcoin Payments MCP Server](https://github.com/getalby/mcp) as a goose extension to interact with your lightning wallet, make and receive payments, list transactions, convert fiat amounts to sats, request invoices from lightning addresses, and interact with paid MCP tools (such as ones built with [PaidMCP](https://github.com/getAlby/paidmcp)). :::info You'll need a lightning wallet that supports [NWC](https://nwc.dev). If you don't have one yet, consider trying [Alby Hub](https://albyhub.com). @@ -22,7 +22,7 @@ You'll need a lightning wallet that supports [NWC](https://nwc.dev). If you don' :::tip TLDR - [Launch the installer](goose://extension?cmd=npx&arg=-y&arg=%40getalby%2Fmcp&id=alby&name=Alby&description=Connect%20Goose%20to%20your%20Bitcoin%20Lightning%20Wallet&env=NWC_CONNECTION_STRING%3DNWC%20Connection%20Secret) + [Launch the installer](goose://extension?cmd=npx&arg=-y&arg=%40getalby%2Fmcp&id=alby&name=Alby&description=Connect%20goose%20to%20your%20Bitcoin%20Lightning%20Wallet&env=NWC_CONNECTION_STRING%3DNWC%20Connection%20Secret) **Command** @@ -52,7 +52,7 @@ You'll need [Node.js](https://nodejs.org/) installed on your system to run this - 1. [Launch the installer](goose://extension?cmd=npx&arg=-y&arg=%40getalby%2Fmcp&id=alby&name=Alby&description=Connect%20Goose%20to%20your%20Bitcoin%20Lightning%20Wallet) - 2. Press `OK` to confirm the installation - 3. Change the type to "Streamable HTTP" - 4. Change the endpoint to `https://mcp.getalby.com/mcp` - 5. Add a request header with Header name = `Authorization` and Value: -``` -Bearer nostr+walletconnect://... -``` - - 6. Press the `+Add` button to finish adding the request header - 7. Press `Add Extension` - 8. Click the button in the top-left to open the sidebar - 9. Navigate to the chat + - 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 - └ - ``` - - 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? - │ Alby - // 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? - │ Alby - │ - // highlight-start - ◆ What command should be run? - │ npx -y @getalby/mcp - // 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? - │ Alby - │ - ◇ What command should be run? - │ npx -y @getalby/mcp - │ - // 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? - │ Alby - │ - ◇ What command should be run? - │ npx -y @getalby/mcp - │ - ◇ Please set the timeout for this tool (in secs): - │ 300 - │ - // highlight-start - ◇ Would you like to add a description? - │ No - // highlight-end - │ - └ - ``` - - 7. Obtain a NWC connection secret from your lightning wallet 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? - │ Alby - │ - ◇ What command should be run? - │ npx -y @getalby/mcp - │ - ◇ 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: - │ NWC_CONNECTION_STRING - │ - ◇ Environment variable value: - │ ▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪ - │ - ◇ Add another environment variable? - │ No - // highlight-end - └ Added Alby extension - ``` + + Obtain an NWC Connection secret from your lightning wallet (nostr+walletconnect://...) and paste it in. + + } + /> - 8. Run the `configure` command: - ```sh - goose configure - ``` - - 9. Choose to add a `Remote 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 - │ ○ Command-line Extension (Run a local command or script) - │ ○ Remote Extension (SSE) - // highlight-start - │ ● Remote Extension (Streaming HTTP) - // highlight-end - └ - ``` - - 10. 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? - │ Remote Extension - │ - // highlight-start - ◆ What would you like to call this extension? - │ Alby - // highlight-end - └ - ``` - - 11. Enter the Streaming HTTP endpoint URI - - ```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? - │ Remote Extension - │ - ◇ What would you like to call this extension? - │ Alby - │ - // highlight-start - ◆ What is the Streaming HTTP URI? - │ https://mcp.getalby.com/mcp - // highlight-end - └ - ``` - - 12. 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? - │ Remote Extension - │ - ◇ What would you like to call this extension? - │ Alby - │ - ◇ What is the Streaming HTTP endpoint URI? - │ https://mcp.getalby.com/mcp - │ - // highlight-start - ◆ Please set the timeout for this tool (in secs): - │ 300 - // highlight-end - │ - └ - ``` - - 13. 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? - │ Remote Extension - │ - ◇ What would you like to call this extension? - │ Alby - │ - ◇ What is the Streaming HTTP endpoint URI? - │ https://mcp.getalby.com/mcp - │ - ◇ Please set the timeout for this tool (in secs): - │ 300 - │ - // highlight-start - ◆ Would you like to add a description? - │ No - // highlight-end - │ - └ - ``` - - 14. Add a custom header containing `Bearer YOUR_CONNECTIONSECRET`. - ```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? - │ Remote Extension - │ - ◇ What would you like to call this extension? - │ Alby - │ - ◇ What is the Streaming HTTP endpoint URI? - │ https://mcp.getalby.com/mcp - │ - ◇ Please set the timeout for this tool (in secs): - │ 300 - │ - ◇ Would you like to add a description? - │ No - │ - ◆ Would you like to add custom headers? - // highlight-start - │ ● Yes / ○ No - // highlight-end - │ - ◆ Header name: - // highlight-start - │ Authorization - // highlight-end - │ - ◆ Header name: - // highlight-start - │ Bearer nostr+walletconnect://... - // highlight-end - │ - ◆ Add another header? - │ ○ Yes / ● No - └ - ``` + + Obtain an NWC connection secret from your lightning wallet and paste it as the Bearer token. + + } + /> @@ -397,11 +125,11 @@ Claude Sonnet 3.7 was used for this task. A similarly capable model is recommend Use the built-in memory extension to save your contacts. e.g. "My friend Rene's lightning address is reneaaron@getalby.com. Please save it to your memory." ::: -### Goose Prompt +### goose Prompt -> _Pay Rene $1 USD, with message "Hi Rene, it's Roland. I'm making a Goose tutorial!"_ +> _Pay Rene $1 USD, with message "Hi Rene, it's Roland. I'm making a goose tutorial!"_ -### Goose Output +### goose Output :::note CLI @@ -438,13 +166,13 @@ Use the built-in memory extension to save your contacts. e.g. "My friend Rene's ✅ **Payment Successful!** -I've successfully sent $1 USD (935 sats) to Rene at `reneaaron@getalby.com` with your message: "Hi Rene, it's Roland. I'm making a Goose tutorial!" +I've successfully sent $1 USD (935 sats) to Rene at `reneaaron@getalby.com` with your message: "Hi Rene, it's Roland. I'm making a goose tutorial!" **Transaction Details:** - Amount: 935 sats ($1 USD) - Fees: 3 sats - Total cost: 938 sats -- Message: "Hi Rene, it's Roland. I'm making a Goose tutorial!" +- Message: "Hi Rene, it's Roland. I'm making a goose tutorial!" - Payment hash: `cd30642470d81c2e8eb04c9ac95e679c53778537aecdf5554b15288ac42fe129` Rene will receive the message "Thanks, sats received!" as confirmation of the payment. diff --git a/documentation/docs/mcp/asana-mcp.md b/documentation/docs/mcp/asana-mcp.md index 183fbe7db6de..0610d3e92cd3 100644 --- a/documentation/docs/mcp/asana-mcp.md +++ b/documentation/docs/mcp/asana-mcp.md @@ -1,17 +1,18 @@ --- title: Asana Extension -description: Add Asana MCP Server as a Goose Extension +description: Add Asana MCP Server as a goose Extension --- import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; import YouTubeShortEmbed from '@site/src/components/YouTubeShortEmbed'; import GooseDesktopInstaller from '@site/src/components/GooseDesktopInstaller'; +import CLIExtensionInstructions from '@site/src/components/CLIExtensionInstructions'; -This tutorial covers how to add the [Asana MCP Server](https://github.com/roychri/mcp-server-asana) as a Goose extension to enable task automation, project tracking, and team collaboration. +This tutorial covers how to add the [Asana MCP Server](https://github.com/roychri/mcp-server-asana) as a goose extension to enable task automation, project tracking, and team collaboration. :::tip TLDR @@ -43,7 +44,7 @@ Note that you'll need [Node.js](https://nodejs.org/) installed on your system to - 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? - │ Asana - // 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? - │ Asana - │ - // highlight-start - ◆ What command should be run? - │ npx -y @roychri/mcp-server-asana - // 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? - │ Asana - │ - ◇ What command should be run? - │ npx -y @roychri/mcp-server-asana - │ - // 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? - │ Asana - │ - ◇ What command should be run? - │ npx -y @roychri/mcp-server-asana - │ - ◇ Please set the timeout for this tool (in secs): - │ 300 - │ - // highlight-start - ◇ Would you like to add a description? - │ No - // highlight-end - │ - └ - ``` - - 7. Obtain a [Asana Access Token](https://app.asana.com/0/my-apps) and paste it in. - :::info - See [Asana's developer docs](https://developers.asana.com/docs/personal-access-token) if you need detailed instructions on creating an access token. - ::: - - ```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? - │ Asana - │ - ◇ What command should be run? - │ npx -y @roychri/mcp-server-asana - │ - ◇ 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: - │ ASANA_ACCESS_TOKEN - │ - ◇ Environment variable value: - │ ▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪ - │ - ◇ Add another environment variable? - │ No - // highlight-end - └ Added Asana extension - ``` - + + Obtain your Asana Access Token and paste it in. See Asana's developer docs if you need detailed instructions on creating an access token. + + } + /> @@ -218,12 +80,12 @@ Note that you'll need [Node.js](https://nodejs.org/) installed on your system to OpenAI's GPT-4o was used for this task. There's an [open bug](https://github.com/block/goose/issues/1804) for Amazon Bedrock models. ::: -### Goose Prompt +### goose Prompt -> _Goose, I have one hour. Look through uncompleted tasks assigned to me in Asana and show me ones that you estimate will take an hour or less. Order them by deadline._ +> _goose, I have one hour. Look through uncompleted tasks assigned to me in Asana and show me ones that you estimate will take an hour or less. Order them by deadline._ -### Goose Output +### goose Output Note that IDs have been changed to generic ones diff --git a/documentation/docs/mcp/autovisualiser-mcp.md b/documentation/docs/mcp/autovisualiser-mcp.md index beef4f2a9f0f..6c22bf44bb5a 100644 --- a/documentation/docs/mcp/autovisualiser-mcp.md +++ b/documentation/docs/mcp/autovisualiser-mcp.md @@ -1,6 +1,6 @@ --- title: Auto Visualiser Extension -description: Add automatic data visualization to Goose +description: Add automatic data visualization to goose --- import Tabs from '@theme/Tabs'; @@ -11,7 +11,7 @@ import ImageCarousel from '@site/src/components/ImageCarousel'; -The Auto Visualiser extension enables Goose to automatically generate interactive data visualizations directly in your conversation. This built-in extension leverages MCP-UI to create charts, graphs, maps, and other visual representations of your data without requiring manual requests. +The Auto Visualiser extension enables goose to automatically generate interactive data visualizations directly in your conversation. This built-in extension leverages MCP-UI to create charts, graphs, maps, and other visual representations of your data without requiring manual requests. This guide will cover enabling and using the Auto Visualiser MCP Server. @@ -51,7 +51,7 @@ This guide will cover enabling and using the Auto Visualiser MCP Server. ## Visualization Types -The Auto Visualiser is a powerful extension that integrates with Goose's MCP-UI system to automatically detect when data would benefit from visualization and render interactive visual components. It analyzes data patterns in your conversations and suggests the most appropriate visualization type. +The Auto Visualiser is a powerful extension that integrates with goose's MCP-UI system to automatically detect when data would benefit from visualization and render interactive visual components. It analyzes data patterns in your conversations and suggests the most appropriate visualization type. | Chart Type | Description | Detected When Prompt Implies | |------------|-------------|------------------------------| @@ -78,7 +78,7 @@ The Auto Visualiser is a powerful extension that integrates with Goose's MCP-UI ### Features -- **Automatic Detection**: Goose intelligently chooses the best visualization type for your data +- **Automatic Detection**: goose intelligently chooses the best visualization type for your data - **Interactive Components**: All visualizations are interactive with hover effects, zooming, and drilling capabilities - **MCP-UI Integration**: Leverages the emerging MCP-UI standard for seamless rendering - **Multiple Chart Support**: Can render multiple visualizations in a single response @@ -88,10 +88,10 @@ The Auto Visualiser is a powerful extension that integrates with Goose's MCP-UI ## Example Usage -In this example, I'll have Goose analyze some sales data and automatically visualize it using the Auto Visualiser extension. +In this example, I'll have goose analyze some sales data and automatically visualize it using the Auto Visualiser extension. -### Goose Prompt +### goose Prompt ``` I have quarterly sales data for different product categories. Can you help me understand: 1. The hierarchical breakdown of revenue across our nested product categories @@ -104,7 +104,7 @@ Here's the data: - Home & Garden: Q1: $80k, Q2: $95k, Q3: $110k, Q4: $125k ``` -### Goose Output +### goose Output :::note Desktop diff --git a/documentation/docs/mcp/blender-mcp.md b/documentation/docs/mcp/blender-mcp.md index 01eedde88c04..270f962fdc86 100644 --- a/documentation/docs/mcp/blender-mcp.md +++ b/documentation/docs/mcp/blender-mcp.md @@ -1,16 +1,17 @@ --- title: Blender Extension -description: Add Blender MCP Server as a Goose Extension +description: Add Blender MCP Server as a goose Extension --- import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; import YouTubeShortEmbed from '@site/src/components/YouTubeShortEmbed'; import GooseDesktopInstaller from '@site/src/components/GooseDesktopInstaller'; +import CLIExtensionInstructions from '@site/src/components/CLIExtensionInstructions'; -This tutorial covers how to add the [Blender MCP Server](https://github.com/ahujasid/blender-mcp) as a Goose extension to create 3D scenes, control Blender with natural language, generate models, apply materials, and more. +This tutorial covers how to add the [Blender MCP Server](https://github.com/ahujasid/blender-mcp) as a goose extension to create 3D scenes, control Blender with natural language, generate models, apply materials, and more. :::tip TLDR @@ -61,162 +62,26 @@ Note that you'll need [uv](https://docs.astral.sh/uv/#installation) installed on /> - 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? - │ blender - // 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? - │ blender - │ - // highlight-start - ◆ What command should be run? - │ uvx blender-mcp - // 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? - │ blender - │ - ◇ What command should be run? - │ uvx blender-mcp - │ - // 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? - │ blender - │ - ◇ What command should be run? - │ uvx blender-mcp - │ - ◇ Please set the timeout for this tool (in secs): - │ 300 - │ - // highlight-start - ◇ Would you like to add a description? - │ No - // highlight-end - │ - └ - ``` - - 7. Choose No when asked to add environment variables - - ```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? - │ blender - │ - ◇ What command should be run? - │ uvx blender-mcp - │ - ◇ 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? - │ No - | - // highlight-end - └ Added blender extension - ``` - + ## Example Usage -In this example, I’ll show you how to use Goose with the Blender Extension to build an entire 3D campfire scene from scratch. By automating Blender controls through natural language, Goose can create objects like logs and fireballs, apply realistic materials, add lighting effects, generate particles for sparks, create subtle smoke, and even animate the fire to gently pulse over time. +In this example, I’ll show you how to use goose with the Blender Extension to build an entire 3D campfire scene from scratch. By automating Blender controls through natural language, goose can create objects like logs and fireballs, apply realistic materials, add lighting effects, generate particles for sparks, create subtle smoke, and even animate the fire to gently pulse over time. -In this example, I’ll show you how to use Goose with the Blender Extension to build a full 3D campfire scene, including logs, fireballs, lighting, and subtle fire animation, just by describing what you want. +In this example, I’ll show you how to use goose with the Blender Extension to build a full 3D campfire scene, including logs, fireballs, lighting, and subtle fire animation, just by describing what you want. -### Goose Prompt +### goose Prompt > Build a cozy campfire scene. Add a ground plane, place a few logs in a circle, and add a glowing fireball in the middle. Set the lighting to a warm tone like a sunset, and angle the camera for a dramatic shot. Give the logs a rough wood texture and make the fireball emit light. -### Goose Output +### goose Output :::note CLI diff --git a/documentation/docs/mcp/browserbase-mcp.md b/documentation/docs/mcp/browserbase-mcp.md index e0f7e1c1ebfa..299a1ca1c34e 100644 --- a/documentation/docs/mcp/browserbase-mcp.md +++ b/documentation/docs/mcp/browserbase-mcp.md @@ -1,13 +1,14 @@ --- title: Browserbase Extension -description: Add Browserbase MCP Server as a Goose Extension for Web Automation +description: Add Browserbase MCP Server as a goose Extension for Web Automation --- import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; import GooseDesktopInstaller from '@site/src/components/GooseDesktopInstaller'; +import CLIExtensionInstructions from '@site/src/components/CLIExtensionInstructions'; -This tutorial covers how to add the Browserbase MCP Server as a Goose extension for browser automation, enabling programmatic control over navigation, page interactions, and content capture. +This tutorial covers how to add the Browserbase MCP Server as a goose extension for browser automation, enabling programmatic control over navigation, page interactions, and content capture. :::tip TLDR @@ -31,6 +32,10 @@ This tutorial covers how to add the Browserbase MCP Server as a Goose extension ## Configuration +:::info +Note that you'll need [Node.js](https://nodejs.org/) installed on your system to run this command, as it uses `npx`. +::: + - 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? - │ browserbase - // 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? - │ browserbase - │ - // highlight-start - ◆ What command should be run? - │ npx @browserbasehq/mcp - // highlight-end - └ - ``` - - 5. Enter the timeout (default 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? - │ browserbase - │ - ◇ What command should be run? - │ npx @browserbasehq/mcp - │ - // highlight-start - ◆ Please set the timeout for this tool (in secs): - │ 300 - // highlight-end - └ - ``` - - 6. Add a description (optional) - ```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? - │ browserbase - │ - ◇ What command should be run? - │ npx @browserbasehq/mcp - │ - ◆ Please set the timeout for this tool (in secs): - │ 300 - │ - // highlight-start - ◇ Would you like to add a description? - │ No - // highlight-end - └ - ``` - - 7. Add environment variables - ```sh - ┌ goose-configure - │ - // highlight-start - ◆ Would you like to add environment variables? - │ Yes - │ - ◇ Environment variable name: - │ BROWSERBASE_PROJECT_ID - │ - ◇ Environment variable value: - │ ▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪ - │ - ◇ Add another environment variable? - │ Yes - │ - ◇ Environment variable name: - │ BROWSERBASE_API_KEY - │ - ◇ Environment variable value: - │ ▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪ - │ - ◇ Add another environment variable? - │ No - // highlight-end - └ Added browserbase extension - ``` - + + Obtain your Browserbase credentials and paste them in. + + } + /> @@ -196,7 +78,7 @@ Let's use the Browserbase extension to gather information about trending MCP-rel Claude 4 Sonnet was used for this task. ::: -### Goose Prompt +### goose Prompt ``` 1. Go to https://github.com/trending @@ -222,7 +104,7 @@ Claude 4 Sonnet was used for this task. • README excerpt ``` -### Goose Output +### goose Output ``` # MCP Repositories Report diff --git a/documentation/docs/mcp/chrome-devtools-mcp.md b/documentation/docs/mcp/chrome-devtools-mcp.md index e63626e917fa..b614939292dd 100644 --- a/documentation/docs/mcp/chrome-devtools-mcp.md +++ b/documentation/docs/mcp/chrome-devtools-mcp.md @@ -1,13 +1,14 @@ --- title: Chrome DevTools Extension -description: Add Chrome DevTools MCP Server as a Goose Extension +description: Add Chrome DevTools 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'; -This tutorial covers how to add the Chrome DevTools MCP Server as a Goose extension to enable browser automation, web performance testing, and interactive web application debugging in a Chrome browser. +This tutorial covers how to add the Chrome DevTools MCP Server as a goose extension to enable browser automation, web performance testing, and interactive web application debugging in a Chrome browser. :::tip TLDR @@ -39,164 +40,27 @@ Note that you'll need [Node.js](https://nodejs.org/) installed on your system to args={["-y", "chrome-devtools-mcp@latest"]} cliCommand="npx -y chrome-devtools-mcp@latest" timeout={300} - note="Note that you'll need Node.js installed on your system to run this command, as it uses npx." /> - 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? - │ chrome-devtools - // 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? - │ chrome-devtools - │ - // highlight-start - ◆ What command should be run? - │ npx -y chrome-devtools-mcp@latest - // 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? - │ chrome-devtools - │ - ◇ What command should be run? - │ npx -y chrome-devtools-mcp@latest - │ - // 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? - │ chrome-devtools - │ - ◇ What command should be run? - │ npx -y chrome-devtools-mcp@latest - │ - ◇ Please set the timeout for this tool (in secs): - │ 300 - │ - // highlight-start - ◇ Would you like to add a description? - │ No - // highlight-end - │ - └ - ``` - - 7. Choose No when asked to add environment variables - - ```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? - │ chrome-devtools - │ - ◇ What command should be run? - │ npx -y chrome-devtools-mcp@latest - │ - ◇ 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? - │ No - | - // highlight-end - └ Added chrome-devtools extension - ``` - + ## Example Usage -In this example, I'll show you how to use Goose with the Chrome DevTools Extension to perform automated performance testing on a demo website. +In this example, I'll show you how to use goose with the Chrome DevTools Extension to perform automated performance testing on a demo website. -### Goose Prompt +### goose Prompt ``` Use the chrome dev tools extension to Navigate to https://www.saucedemo.com Then, login as performance_glitch_user and measure the site's performance ``` -### Goose Output +### goose Output ``` diff --git a/documentation/docs/mcp/cloudinary-asset-management-mcp.md b/documentation/docs/mcp/cloudinary-asset-management-mcp.md index 5c8936cb4a15..3e5804095b49 100644 --- a/documentation/docs/mcp/cloudinary-asset-management-mcp.md +++ b/documentation/docs/mcp/cloudinary-asset-management-mcp.md @@ -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'; -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" /> - 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://:@ - │ - ◇ Add another environment variable? - │ No - // highlight-end - └ Added cloudinary extension - ``` - + + Obtain your Cloudinary URL from your dashboard and paste it in. For example: cloudinary://<your_api_key>:<your_api_secret>@<your_cloud_name> + + } + /> ## 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. diff --git a/documentation/docs/mcp/cognee-mcp.md b/documentation/docs/mcp/cognee-mcp.md index 770e6937a457..15c777b83808 100644 --- a/documentation/docs/mcp/cognee-mcp.md +++ b/documentation/docs/mcp/cognee-mcp.md @@ -1,13 +1,13 @@ --- title: Cognee Extension -description: Add Cognee MCP Server as a Goose Extension +description: Add Cognee MCP Server as a goose Extension --- import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; import CLIExtensionInstructions from '@site/src/components/CLIExtensionInstructions'; -This tutorial covers how to add the [Cognee MCP Server](https://github.com/topoteretes/cognee/tree/main/cognee-mcp) as a Goose extension to enable knowledge graph memory capabilities, connecting to over 30 data sources for enhanced context and retrieval. +This tutorial covers how to add the [Cognee MCP Server](https://github.com/topoteretes/cognee/tree/main/cognee-mcp) as a goose extension to enable knowledge graph memory capabilities, connecting to over 30 data sources for enhanced context and retrieval. :::tip TLDR **Command** @@ -29,7 +29,8 @@ Note that you'll need [uv](https://docs.astral.sh/uv/#installation) installed on -1. First, install Cognee: +**Install Cognee:** + ```bash # Clone and install Cognee git clone https://github.com/topoteretes/cognee @@ -40,158 +41,26 @@ uv sync --dev --all-extras --reinstall sudo apt install -y libpq-dev python3-dev ``` -2. Run the `configure` command: -```sh -goose configure -``` - -3. 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) - └ -``` - -4. 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? - │ Cognee - // highlight-end - └ -``` - -5. 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? - │ Cognee - │ - // highlight-start - ◆ What command should be run? - │ uv --directory /path/to/cognee-mcp run python src/server.py - // highlight-end - └ -``` - -6. 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? - │ Cognee - │ - ◇ What command should be run? - │ uv --directory /path/to/cognee-mcp run python src/server.py - │ - // highlight-start - ◆ Please set the timeout for this tool (in secs): - │ 300 - // highlight-end - │ - └ -``` - -7. 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? - │ Cognee - │ - ◇ What command should be run? - │ uv --directory /path/to/cognee-mcp run python src/server.py - │ - ◇ Please set the timeout for this tool (in secs): - │ 300 - │ - // highlight-start - ◇ Would you like to add a description? - │ No - // highlight-end - │ - └ -``` - -8. Add the required environment variables: -:::info -You'll need an API key for your LLM provider. By default, this is an [OpenAI API key](https://platform.openai.com/api-keys). -::: - - ```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? - │ Cognee - │ - ◇ What command should be run? - │ uv --directory /path/to/cognee-mcp run python src/server.py - │ - ◇ 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: - │ LLM_API_KEY - │ - ◇ Environment variable value: - │ ▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪ - │ - ◇ Add another environment variable? - │ No - // highlight-end - └ Added Cognee extension -``` - +**Configure the extension:** + + + Replace /path/to/cognee-mcp with the actual path to your cloned cognee-mcp directory. + + } + infoNote={ + <> + Obtain an API key for your LLM provider and paste it in. By default, this is an OpenAI API key. + + } +/> @@ -201,17 +70,17 @@ See the [Cognee MCP documentation](https://docs.cognee.ai/how-to-guides/deployme ## Example Usage -Cognee provides knowledge graph memory capabilities for Goose, allowing it to remember and connect information across conversations and documents. +Cognee provides knowledge graph memory capabilities for goose, allowing it to remember and connect information across conversations and documents. :::info LLM OpenAI's GPT-4o was used for this task. ::: -### Goose Prompt +### goose Prompt -> _Goose, please cognify this information: "I prefer Python for data analysis and use pandas extensively. My current project involves analyzing customer behavior data." Then search for information about my programming preferences._ +> _goose, please cognify this information: "I prefer Python for data analysis and use pandas extensively. My current project involves analyzing customer behavior data." Then search for information about my programming preferences._ -### Goose Output +### goose Output :::note CLI diff --git a/documentation/docs/mcp/computer-controller-mcp.md b/documentation/docs/mcp/computer-controller-mcp.md index 460a83425cb8..27947d592dcb 100644 --- a/documentation/docs/mcp/computer-controller-mcp.md +++ b/documentation/docs/mcp/computer-controller-mcp.md @@ -1,6 +1,6 @@ --- title: Computer Controller Extension -description: Use Computer Controller MCP Server as a Goose Extension +description: Use Computer Controller MCP Server as a goose Extension --- import Tabs from '@theme/Tabs'; @@ -12,10 +12,10 @@ import GooseBuiltinInstaller from '@site/src/components/GooseBuiltinInstaller'; The Computer Controller extension helps automate everyday computer tasks and web interactions such as searching the web, controlling system settings, processing data files, and controlling applications without needing to know how to code. -This tutorial covers enabling and using the Computer Controller MCP Server, which is a built-in Goose extension. +This tutorial covers enabling and using the Computer Controller MCP Server, which is a built-in goose extension. :::tip -Let Goose complete its tasks without interruption - avoid using your mouse or keyboard until it's done. +Let goose complete its tasks without interruption - avoid using your mouse or keyboard until it's done. ::: ## Configuration @@ -34,68 +34,26 @@ Let Goose complete its tasks without interruption - avoid using your mouse or ke goose configure ``` - 2. Choose to add a `Built-in Extension` + 2. Choose to `Toggle Extensions` ```sh ┌ goose-configure │ ◇ What would you like to configure? - │ Add Extension (Connect to a new extension) + │ Toggle Extensions │ - ◆ What type of extension would you like to add? + ◆ Enable extensions: (use "space" to toggle and "enter" to submit) // highlight-start - │ ● Built-in Extension (Use an extension that comes with Goose) - // highlight-end - │ ○ Command-line Extension - │ ○ Remote Extension (SSE) - │ ○ Remote Extension (Streaming HTTP) - └ - ``` - - 3. Select the `Computer Controller` 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 - │ - ◆ Which built-in extension would you like to enable? - │ ○ Developer Tools - // highlight-start - │ ● Computer Controller + │ ● computercontroller // highlight-end - │ ○ Memory - | ○ JetBrains - └ Enabled Computer Controller extension + | + └ Extension settings updated successfully ``` - - 4. 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? - │ Built-in Extension - │ - ◆ Which built-in extension would you like to enable? - │ Computer Controller - │ - // highlight-start - ◆ Please set the timeout for this tool (in secs): - │ 300 - // highlight-end - └ Enabled Computer Controller extension - ``` ## Example Usage -In this example, I'll show you how Goose can multitask, handling everything from system controls and music playback to web research and data organization. +In this example, I'll show you how goose can multitask, handling everything from system controls and music playback to web research and data organization. :::info LLM Anthropic's Claude 4 Sonnet was used for this task. @@ -103,11 +61,11 @@ Anthropic's Claude 4 Sonnet was used for this task. - 1. Open a new session in Goose Desktop + 1. Open a new session in goose Desktop - 1. Open a terminal and start a new Goose session: + 1. Open a terminal and start a new goose session: ```sh goose session @@ -116,9 +74,9 @@ Anthropic's Claude 4 Sonnet was used for this task. -### Goose Prompt +### goose Prompt ``` -Goose, I need to decompress while researching AI models for tomorrow's meeting. Can you create a relaxing environment and help me research? +goose, I need to decompress while researching AI models for tomorrow's meeting. Can you create a relaxing environment and help me research? 1. Play classical music in Safari 2. Dim screen brightness (2 levels) @@ -131,7 +89,7 @@ Goose, I need to decompress while researching AI models for tomorrow's meeting. 6. Reset brightness and close Safari ``` -### Goose Output +### goose Output ```md I'll help you create a relaxing research environment and gather information about AI models. I'll break this down into steps: diff --git a/documentation/docs/mcp/context7-mcp.mdx b/documentation/docs/mcp/context7-mcp.mdx index a3f87b04dc7b..ecf6f2330ffa 100644 --- a/documentation/docs/mcp/context7-mcp.mdx +++ b/documentation/docs/mcp/context7-mcp.mdx @@ -1,6 +1,6 @@ --- title: Context7 Extension -description: Add Context7 MCP Server as a Goose Extension +description: Add Context7 MCP Server as a goose Extension --- import Tabs from '@theme/Tabs'; @@ -13,7 +13,7 @@ import GooseDesktopInstaller from '@site/src/components/GooseDesktopInstaller'; -This tutorial covers how to add the [Context7 MCP Server](https://github.com/upstash/context7) as a Goose extension to pull up-to-date, version-specific code and docs so Goose can vibe code with real context, not hallucinated or outdated answers. +This tutorial covers how to add the [Context7 MCP Server](https://github.com/upstash/context7) as a goose extension to pull up-to-date, version-specific code and docs so goose can vibe code with real context, not hallucinated or outdated answers. :::tip TLDR @@ -31,20 +31,34 @@ This tutorial covers how to add the [Context7 MCP Server](https://github.com/ups ## Configuration - +:::info +Note that you'll need [Node.js](https://nodejs.org/) installed on your system to run this command, as it uses `npx`. +::: + + + + + + + + + ## Example Usage -In this example, Goose uses Context7 to pull real-time docs, compare tools, and scaffold a modern app using only the latest, official implementation patterns. +In this example, goose uses Context7 to pull real-time docs, compare tools, and scaffold a modern app using only the latest, official implementation patterns. @@ -52,7 +66,7 @@ In this example, Goose uses Context7 to pull real-time docs, compare tools, and - 1. Open a terminal and start a new Goose session: + 1. Open a terminal and start a new goose session: ```sh goose session @@ -61,7 +75,7 @@ In this example, Goose uses Context7 to pull real-time docs, compare tools, and -### Goose Prompt +### goose Prompt I need help building a modern web application. Could you: @@ -89,7 +103,7 @@ I need help building a modern web application. Could you: Please reference specific documentation sections and explain why certain approaches are recommended over others. -### Goose Output +### goose Output :::note Desktop diff --git a/documentation/docs/mcp/elevenlabs-mcp.md b/documentation/docs/mcp/elevenlabs-mcp.md index 4a7fe280d79c..5a0df0373c8b 100644 --- a/documentation/docs/mcp/elevenlabs-mcp.md +++ b/documentation/docs/mcp/elevenlabs-mcp.md @@ -1,17 +1,18 @@ --- title: ElevenLabs Extension -description: Add ElevenLabs MCP Server as a Goose Extension +description: Add ElevenLabs MCP Server as a goose Extension --- import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; import YouTubeShortEmbed from '@site/src/components/YouTubeShortEmbed'; import GooseDesktopInstaller from '@site/src/components/GooseDesktopInstaller'; +import CLIExtensionInstructions from '@site/src/components/CLIExtensionInstructions'; -This tutorial covers how to add the [ElevenLabs MCP Server](https://github.com/elevenlabs/elevenlabs-mcp) as a Goose extension to enable AI-powered voice generation, voice cloning, audio editing, and speech-to-text transcription. +This tutorial covers how to add the [ElevenLabs MCP Server](https://github.com/elevenlabs/elevenlabs-mcp) as a goose extension to enable AI-powered voice generation, voice cloning, audio editing, and speech-to-text transcription. :::tip TLDR @@ -34,48 +35,71 @@ This tutorial covers how to add the [ElevenLabs MCP Server](https://github.com/e ## Configuration - +:::info +Note that you'll need [uv](https://docs.astral.sh/uv/#installation) installed on your system to run this command, as it uses `uvx`. +::: + + + + + + + + Obtain your ElevenLabs API Key and paste it in. + + } + /> + + ## Example Usage -In this example, I’ll show you how to use Goose with the ElevenLabs Extension to create AI-generated voiceovers for a YouTube Short. Goose will take a sample script I provided, generate a narrated version using different AI voices, and seamlessly switch tones mid-script to match the content flow. +In this example, I’ll show you how to use goose with the ElevenLabs Extension to create AI-generated voiceovers for a YouTube Short. goose will take a sample script I provided, generate a narrated version using different AI voices, and seamlessly switch tones mid-script to match the content flow. -By connecting to the ElevenLabs MCP server, Goose can transform plain text into natural-sounding speech, offering multiple voice styles and character options — all without any manual recording or editing. +By connecting to the ElevenLabs MCP server, goose can transform plain text into natural-sounding speech, offering multiple voice styles and character options — all without any manual recording or editing. -### Goose Prompt +### goose Prompt -> Hey Goose, create a script for me for my youtube short video, I want there to be two different voices. The first voice should cut me off and be a human narrator style and then switch to a cassual AI tone after I read the prompt. Here's an example of a YT short script I've done in the past: +> Hey goose, create a script for me for my youtube short video, I want there to be two different voices. The first voice should cut me off and be a human narrator style and then switch to a cassual AI tone after I read the prompt. Here's an example of a YT short script I've done in the past: -Wait… Within Seconds, Goose performed Security Audits Across Multiple Projects?! 🔥 +Wait… Within Seconds, goose performed Security Audits Across Multiple Projects?! 🔥 Lets, plug & play to find out how -Let’s provide Goose with the command it needs to connect to the Filesystem MCP server extension… +Let’s provide goose with the command it needs to connect to the Filesystem MCP server extension… Now lets play -propmt: "Hey Goose, I need to perform a security audit across multiple projects. Let's check for…🔹 Hardcoded Credentials – API keys, passwords, and secrets left in the code.🔹 SQL Injection Risks – Unsafe queries that could expose data.🔹 Insecure Cryptographic Practices – Weak encryption methods that put data at risk.AND🔹 Exposed Config Files – Sensitive information that shouldn't be public.🔹 Outdated Dependencies – Security vulnerabilities in third-party libraries." +propmt: "Hey goose, I need to perform a security audit across multiple projects. Let's check for…🔹 Hardcoded Credentials – API keys, passwords, and secrets left in the code.🔹 SQL Injection Risks – Unsafe queries that could expose data.🔹 Insecure Cryptographic Practices – Weak encryption methods that put data at risk.AND🔹 Exposed Config Files – Sensitive information that shouldn't be public.🔹 Outdated Dependencies – Security vulnerabilities in third-party libraries." -Go Goose, go Goose! +Go goose, go goose! -✅ Goose scanned the entire codebase across 3 different projects, identified security risks, generated a detailed report with fixes and provided me with step by step instructions on how I can test and verify these code fixes! +✅ goose scanned the entire codebase across 3 different projects, identified security risks, generated a detailed report with fixes and provided me with step by step instructions on how I can test and verify these code fixes! If that’s not amazing idk what is … 🚀 to get started visit block.github.io/goose_ -### Goose Output +### goose Output :::note Desktop diff --git a/documentation/docs/mcp/fetch-mcp.md b/documentation/docs/mcp/fetch-mcp.md index 99541ab22c53..a2ce1d983835 100644 --- a/documentation/docs/mcp/fetch-mcp.md +++ b/documentation/docs/mcp/fetch-mcp.md @@ -1,12 +1,13 @@ --- title: Fetch Extension -description: Add Fetch MCP Server as a Goose Extension +description: Add Fetch MCP Server as a goose Extension --- import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; import YouTubeShortEmbed from '@site/src/components/YouTubeShortEmbed'; import GooseDesktopInstaller from '@site/src/components/GooseDesktopInstaller'; +import CLIExtensionInstructions from '@site/src/components/CLIExtensionInstructions'; @@ -14,7 +15,7 @@ import GooseDesktopInstaller from '@site/src/components/GooseDesktopInstaller'; The Fetch extension [does not work](https://github.com/block/goose/issues/1184) with Google models (e.g. gemini-2.0-flash) because this extension uses `format: uri` in its JSON schema which Google doesn't support. ::: -This tutorial covers how to add the [Fetch MCP Server](https://github.com/modelcontextprotocol/servers/tree/main/src/fetch) as a Goose extension to retrieve and process content from the web. +This tutorial covers how to add the [Fetch MCP Server](https://github.com/modelcontextprotocol/servers/tree/main/src/fetch) as a goose extension to retrieve and process content from the web. :::tip TLDR @@ -47,145 +48,11 @@ Note that you'll need [uv](https://docs.astral.sh/uv/#installation) installed on /> - 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? - │ fetch - // 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? - │ fetch - │ - // highlight-start - ◆ What command should be run? - │ uvx mcp-server-fetch - // 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? - │ fetch - │ - ◇ What command should be run? - │ uvx mcp-server-fetch - │ - // 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? - │ fetch - │ - ◇ What command should be run? - │ uvx mcp-server-fetch - │ - ◇ Please set the timeout for this tool (in secs): - │ 300 - │ - // highlight-start - ◇ Would you like to add a description? - │ No - // highlight-end - └ - ``` - - 7. Choose No when asked to add environment variables - - ```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? - │ fetch - │ - ◇ What command should be run? - │ uvx mcp-server-fetch - │ - ◇ 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? - │ No - // highlight-end - │ - └ Added fetch extension - ``` - + @@ -194,15 +61,15 @@ Note that you'll need [uv](https://docs.astral.sh/uv/#installation) installed on Let's use the Fetch extension to get random programming jokes from the [Official Joke API](https://official-joke-api.appspot.com/random_joke). :::info -While this API does not require an API key, many APIs do. If you need to provide an API key, you can set it as an environment variable and tell Goose its name. Example: _"get tomorrow's weather for New Orleans from the weatherapi. Don't use the key directly but instead use a script that gets the value from the env var WEATHER_API_KEY"_ +While this API does not require an API key, many APIs do. If you need to provide an API key, you can set it as an environment variable and tell goose its name. Example: _"get tomorrow's weather for New Orleans from the weatherapi. Don't use the key directly but instead use a script that gets the value from the env var WEATHER_API_KEY"_ ::: -### Goose Prompt +### goose Prompt ``` make a web page that tells jokes for programmers. The page should ask the user the setup of the joke, allow them to guess the punchline and then tell them if they are right or wrong. Include a button that allows them to request another joke. you can fetch the jokes from the official joke api ``` -### Goose Output +### goose Output ``` I'll help you create a web page that uses the Official Joke API to display programming jokes. I'll break this down into steps: diff --git a/documentation/docs/mcp/filesystem-mcp.md b/documentation/docs/mcp/filesystem-mcp.md index 994aad93b725..91c9106123fb 100644 --- a/documentation/docs/mcp/filesystem-mcp.md +++ b/documentation/docs/mcp/filesystem-mcp.md @@ -1,17 +1,18 @@ --- title: Filesystem Extension -description: Add Filesystem MCP Server as Goose Extension +description: Add Filesystem MCP Server as goose Extension --- import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; import YouTubeShortEmbed from '@site/src/components/YouTubeShortEmbed'; import GooseDesktopInstaller from '@site/src/components/GooseDesktopInstaller'; +import CLIExtensionInstructions from '@site/src/components/CLIExtensionInstructions'; import { PanelLeft, Settings } from 'lucide-react'; -This tutorial covers how to add the [Filesystem MCP server](https://github.com/modelcontextprotocol/servers/tree/HEAD/src/filesystem) as a Goose extension, enabling powerful code analysis and file management. With this extension, Goose can analyze project structures, edit and organize files, detect unused dependencies, and generate documentation to improve software maintainability. +This tutorial covers how to add the [Filesystem MCP server](https://github.com/modelcontextprotocol/servers/tree/HEAD/src/filesystem) as a goose extension, enabling powerful code analysis and file management. With this extension, goose can analyze project structures, edit and organize files, detect unused dependencies, and generate documentation to improve software maintainability. :::tip TLDR **Command** @@ -33,7 +34,7 @@ Note that you'll need [Node.js](https://nodejs.org/) installed on your system to - 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? - │ filesystem - // 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? - │ filesystem - │ - // highlight-start - ◆ What command should be run? - │ npx -y @modelcontextprotocol/server-filesystem /path/to/allowed/directory - // highlight-end - └ - ``` - :::tip Multiple Directories - You can specify multiple allowed directories by separating them with a space. - ::: - - 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? - │ filesystem - │ - ◇ What command should be run? - │ npx -y @modelcontextprotocol/server-filesystem /path/to/allowed/directory - │ - // 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? - │ filesystem - │ - ◇ What command should be run? - │ npx -y @modelcontextprotocol/server-filesystem /path/to/allowed/directory - │ - ◇ Please set the timeout for this tool (in secs): - │ 300 - │ - // highlight-start - ◆ Would you like to add a description? - │ No - // highlight-end - └ - ``` - - 7. Choose No when asked to add environment variables - ```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? - │ filesystem - │ - ◇ What command should be run? - │ npx -y @modelcontextprotocol/server-filesystem /path/to/allowed/directory - │ - ◇ 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? - │ No - │ - // highlight-end - └ Added filesystem extension - ``` + + Replace /path/to/allowed/directory with the actual path(s) to directories you want to allow access to. You can specify multiple directories by separating them with spaces. + + } + /> ## Example Usage -In this example, I'll use Goose to perform a comprehensive security audit across multiple projects, including a payment processing system, authentication service, and e-commerce dashboard. I need to identify security vulnerabilities, implement fixes, and ensure sensitive data and operations are properly protected. +In this example, I'll use goose to perform a comprehensive security audit across multiple projects, including a payment processing system, authentication service, and e-commerce dashboard. I need to identify security vulnerabilities, implement fixes, and ensure sensitive data and operations are properly protected. -### Goose Prompt +### goose Prompt ``` - Hey Goose, I need to perform a security audit and implement fixes across multiple projects: + Hey goose, I need to perform a security audit and implement fixes across multiple projects: 1. Please analyze these codebases for security issues: - /Users/ebonyl/e-commerce-dashboard @@ -234,7 +105,7 @@ In this example, I'll use Goose to perform a comprehensive security audit across Please focus particularly on the payment system and authentication service as they handle sensitive data. ``` -### Goose Output +### goose Output ``` I'll help you conduct the security audit, starting with the payment system project since it handles sensitive financial data. Let me first check if we have access to these directories. diff --git a/documentation/docs/mcp/knowledge-graph-mcp.md b/documentation/docs/mcp/knowledge-graph-mcp.md index d1261addd928..8306b8ade8b2 100644 --- a/documentation/docs/mcp/knowledge-graph-mcp.md +++ b/documentation/docs/mcp/knowledge-graph-mcp.md @@ -1,17 +1,18 @@ --- title: Knowledge Graph Memory Extension -description: Add Knowledge Graph Memory MCP Server as a Goose Extension +description: Add Knowledge Graph Memory MCP Server as a goose Extension --- import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; import YouTubeShortEmbed from '@site/src/components/YouTubeShortEmbed'; import GooseDesktopInstaller from '@site/src/components/GooseDesktopInstaller'; +import CLIExtensionInstructions from '@site/src/components/CLIExtensionInstructions'; -This tutorial covers how to add the [Knowledge Graph Memory MCP Server](https://github.com/modelcontextprotocol/servers/tree/main/src/memory) as a Goose extension. This enables Goose to analyze relationships, detect patterns, and gain a deeper understanding of your data. The knowledge graph builds on the [memory extension](/docs/mcp/memory-mcp) by mapping complex relationships between concepts and providing persistent memory across Goose sessions. +This tutorial covers how to add the [Knowledge Graph Memory MCP Server](https://github.com/modelcontextprotocol/servers/tree/main/src/memory) as a goose extension. This enables goose to analyze relationships, detect patterns, and gain a deeper understanding of your data. The knowledge graph builds on the [memory extension](/docs/mcp/memory-mcp) by mapping complex relationships between concepts and providing persistent memory across goose sessions. :::tip TLDR @@ -44,156 +45,22 @@ Note that you'll need [Node.js](https://nodejs.org/) installed on your system to /> - 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? - │ knowledge graph memory - // 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? - │ knowledge graph memory - │ - // highlight-start - ◆ What command should be run? - │ npx -y @modelcontextprotocol/server-memory - // 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? - │ knowledge graph memory - │ - ◇ What command should be run? - │ npx -y @modelcontextprotocol/server-memory - │ - // 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? - │ knowledge graph memory - │ - ◇ What command should be run? - │ npx -y @modelcontextprotocol/server-memory - │ - ◆ Please set the timeout for this tool (in secs): - │ 300 - │ - // highlight-start - ◇ Would you like to add a description? - │ No - // highlight-end - │ - └ - ``` - - 7. Choose No when asked to add environment variables - ```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? - │ knowledge graph memory - │ - ◇ What command should be run? - │ npx -y @modelcontextprotocol/server-memory - │ - ◇ 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? - │ No - │ - // highlight-end - └ Added knowledge graph memory extension - ``` - + ## Example Usage -In this example, I'll show you how Goose can become an intelligent security reviewer by using connected knowledge patterns to detect and analyze vulnerabilities. Goose will be able to understand the relationship between security issues, their impacts, and mitigations. +In this example, I'll show you how goose can become an intelligent security reviewer by using connected knowledge patterns to detect and analyze vulnerabilities. goose will be able to understand the relationship between security issues, their impacts, and mitigations. -This means Goose doesn't just spot issues - it understands how vulnerabilities connect to real world impacts and can suggest comprehensive solutions. +This means goose doesn't just spot issues - it understands how vulnerabilities connect to real world impacts and can suggest comprehensive solutions. -### Step 1: Teach Goose About Security Patterns - #### Goose Prompt #1 +### Step 1: Teach goose About Security Patterns + #### goose Prompt #1 ``` goose, learn these security vulnerability patterns and their relationships: @@ -216,7 +83,7 @@ This means Goose doesn't just spot issues - it understands how vulnerabilities c - JWT-based solutions ``` - #### Goose Output + #### goose Output ``` I'll store this security knowledge in the Knowledge Graph Memory with proper entities and relationships @@ -257,7 +124,7 @@ This means Goose doesn't just spot issues - it understands how vulnerabilities c - Understand how different security issues are related ``` ### Step 2: Use Connected Knowledge for Code Review - #### Goose Prompt # 2 + #### goose Prompt # 2 ``` Review this API endpoint for security issues: @@ -275,7 +142,7 @@ This means Goose doesn't just spot issues - it understands how vulnerabilities c }); }); ``` - #### Goose Output + #### goose Output ``` I'll analyze this code using our connected knowledge graph to trace security vulnerabilities and their implications: diff --git a/documentation/docs/mcp/mbot-mcp.md b/documentation/docs/mcp/mbot-mcp.md index 5a4a067f55ad..fda6cb69779f 100644 --- a/documentation/docs/mcp/mbot-mcp.md +++ b/documentation/docs/mcp/mbot-mcp.md @@ -1,12 +1,13 @@ --- title: mbot Extension -description: Control a MakeBlock mbot2 rover through MQTT and MCP as a Goose Extension +description: Control a MakeBlock mbot2 rover through MQTT and MCP as a goose Extension --- import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; import YouTubeShortEmbed from '@site/src/components/YouTubeShortEmbed'; import GooseDesktopInstaller from '@site/src/components/GooseDesktopInstaller'; +import CLIExtensionInstructions from '@site/src/components/CLIExtensionInstructions'; @@ -30,177 +31,29 @@ This tutorial will get you started with [deemkeen's MQTT MCP server](https://git - 1. Run the `configure` command: - ```sh - goose configure - ``` - - 1. 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) - └ - ``` - - 2. 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? - │ mbot2 - // highlight-end - └ - ``` - - 3. 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? - │ mbot2 - │ - // highlight-start - ◆ What command should be run? - │ /path/to/java -jar /path/to/mbotmcp-0.0.1-SNAPSHOT.jar - // highlight-end - └ - ``` - - 4. 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? - │ mbot2 - │ - ◇ What command should be run? - │ /path/to/java -jar /path/to/mbotmcp-0.0.1-SNAPSHOT.jar - │ - // highlight-start - ◆ Please set the timeout for this tool (in secs): - │ 300 - // highlight-end - │ - └ - ``` - - 5. 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? - │ mbot2 - │ - ◇ What command should be run? - │ /path/to/java -jar /path/to/mbotmcp-0.0.1-SNAPSHOT.jar - │ - ◆ Please set the timeout for this tool (in secs): - │ 300 - │ - // highlight-start - ◇ Would you like to add a description? - │ No - // highlight-end - │ - └ - ``` - - 6. Add environment variables for MQTT - ```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? - │ mbot2 - │ - ◇ What command should be run? - │ /path/to/java -jar /path/to/mbotmcp-0.0.1-SNAPSHOT.jar - │ - ◇ 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: - │ MQTT_SERVER_URI - │ - ◇ Environment variable value: - │ tcp://1.2.3.4:1883 - │ - ◇ Add another environment variable? - │ Yes - │ - ◇ Environment variable name: - │ MQTT_USERNAME - │ - ◇ Environment variable value: - │ username - │ - ◇ Add another environment variable? - │ Yes - │ - ◇ Environment variable name: - │ MQTT_PASSWORD - │ - ◇ Environment variable value: - │ password - // highlight-end - │ - └ Added mbot2 extension - ``` - + + Replace /path/to/java and /path/to/mbotmcp-0.0.1-SNAPSHOT.jar with your actual Java installation and JAR file paths. + + } + infoNote={ + <> + MQTT_SERVER_URI has a value like tcp://1.2.3.4:1883. MQTT_USERNAME and MQTT_PASSWORD are required to exist, but can be empty strings if your MQTT server does not require authentication. + + } + /> - :::info - MQTT_USERNAME and MQTT_PASSWORD are required to exist, but can be empty strings if your MQTT server does not require authentication. - ::: - ## Example Usage The available commands allow you to drive the mbot2 rover around, including: diff --git a/documentation/docs/mcp/memory-mcp.md b/documentation/docs/mcp/memory-mcp.md index 895302e25aa7..c6e30fe735a3 100644 --- a/documentation/docs/mcp/memory-mcp.md +++ b/documentation/docs/mcp/memory-mcp.md @@ -1,6 +1,6 @@ --- title: Memory Extension -description: Use Memory MCP Server as a Goose Extension +description: Use Memory MCP Server as a goose Extension --- import Tabs from '@theme/Tabs'; @@ -10,9 +10,9 @@ import GooseBuiltinInstaller from '@site/src/components/GooseBuiltinInstaller'; -The Memory extension turns Goose into a knowledgeable assistant by allowing you to teach it personalized key information (e.g. commands, code snippets, preferences and configurations) that it can recall and apply later. Whether it’s project-specific (local) or universal (global) knowledge, Goose learns and remembers what matters most to you. +The Memory extension turns goose into a knowledgeable assistant by allowing you to teach it personalized key information (e.g. commands, code snippets, preferences and configurations) that it can recall and apply later. Whether it’s project-specific (local) or universal (global) knowledge, goose learns and remembers what matters most to you. -This tutorial covers enabling and using the Memory MCP Server, which is a built-in Goose extension. +This tutorial covers enabling and using the Memory MCP Server, which is a built-in goose extension. ## Configuration @@ -25,111 +25,46 @@ This tutorial covers enabling and using the Memory MCP Server, which is a built- + 1. Run the `configure` command: ```sh goose configure ``` - 2. Choose to add a `Built-in Extension` + 2. Choose to `Toggle Extensions` ```sh ┌ goose-configure │ ◇ What would you like to configure? - │ Add Extension (Connect to a new extension) + │ Toggle Extensions │ - ◆ What type of extension would you like to add? + ◆ Enable extensions: (use "space" to toggle and "enter" to submit) // highlight-start - │ ● Built-in Extension (Use an extension that comes with Goose) - // highlight-end - │ ○ Command-line Extension - │ ○ Remote Extension (SSE) - │ ○ Remote Extension (Streaming HTTP) - └ - ``` - - 3. Arrow down to the `Memory` extension and press Enter - ```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 - │ - ◆ Which built-in extension would you like to enable? - │ ○ Developer Tools - │ ○ Computer Controller - // highlight-start - │ ● Memory - // highlight-end - | ○ JetBrains - └ - ``` - - 4. 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? - │ Built-in Extension - │ - ◇ Which built-in extension would you like to enable? - │ Memory - │ - // highlight-start - ◆ Please set the timeout for this tool (in secs): - │ 300 - // highlight-end - └ Enabled Memory extension - ``` - - 5. 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? - │ Built-in Extension - │ - ◇ Which built-in extension would you like to enable? - │ Memory - │ - ◇ Please set the timeout for this tool (in secs): - │ 300 - │ - // highlight-start - ◆ Would you like to add a description? - │ No + │ ● memory // highlight-end - └ Enabled Memory extension + | + └ Extension settings updated successfully ``` ## Why Use Memory? -With the Memory extension, you’re not just storing static notes, you’re teaching Goose how to assist you better. Imagine telling Goose: +With the Memory extension, you’re not just storing static notes, you’re teaching goose how to assist you better. Imagine telling goose: > _learn everything about MCP servers and save it to memory._ Later, you can ask: > _utilizing our MCP server knowledge help me build an MCP server._ -Goose will recall everything you’ve saved as long as you instruct it to remember. This makes it easier to have consistent results when working with Goose. +goose will recall everything you’ve saved as long as you instruct it to remember. This makes it easier to have consistent results when working with goose. -Goose loads all saved memories at the start of a session and includes them in every prompt sent to the LLM. For large or detailed instructions, store them in files and instruct Goose to reference those files: +goose loads all saved memories at the start of a session and includes them in every prompt sent to the LLM. For large or detailed instructions, store them in files and instruct goose to reference those files: > _Remember that if I ask for help writing JavaScript, I want you to refer to "/path/to/javascript_notes.txt" and follow the instructions in that file._ ## Trigger Words and When to Use Them -Goose also recognizes certain trigger words that signal when to store, retrieve, or remove memory. +goose also recognizes certain trigger words that signal when to store, retrieve, or remove memory. | **Trigger Words** | **When to Use** | |---------------------|----------------| @@ -144,21 +79,21 @@ Goose also recognizes certain trigger words that signal when to store, retrieve, ## Example Usage -In this example, I’ll show you how to make Goose a knowledgeable development assistant by teaching it about your project’s API standards. With the Memory extension, Goose can store structured information and recall it when needed, helping you stay consistent in your work. +In this example, I’ll show you how to make goose a knowledgeable development assistant by teaching it about your project’s API standards. With the Memory extension, goose can store structured information and recall it when needed, helping you stay consistent in your work. -This means you no longer have to repeat yourself. Goose will remember your project’s requirements and automatically apply them to new tasks. +This means you no longer have to repeat yourself. goose will remember your project’s requirements and automatically apply them to new tasks. :::tip -If you frequently work with API standards or other structured knowledge, Goose may automatically suggest saving them to memory for you when it detects a pattern in your workflow. +If you frequently work with API standards or other structured knowledge, goose may automatically suggest saving them to memory for you when it detects a pattern in your workflow. ::: - 1. Open a new session in Goose Desktop + 1. Open a new session in goose Desktop - 1. Open a terminal and start a new Goose session: + 1. Open a terminal and start a new goose session: ```sh goose session @@ -167,10 +102,10 @@ If you frequently work with API standards or other structured knowledge, Goose m -### Step 1: Teach Goose Your API Standards - #### Goose Prompt #1 +### Step 1: Teach goose Your API Standards + #### goose Prompt #1 ``` - Goose, learn our API development standards: + goose, learn our API development standards: - All endpoints must use TypeScript interfaces - Error responses follow RFC 7807 Problem Details spec @@ -181,7 +116,7 @@ If you frequently work with API standards or other structured knowledge, Goose m Remember this so you can help me follow these practices. ``` - #### Goose Output + #### goose Output ``` I've learned your API standards. I'll help enforce these requirements when working on API endpoints. @@ -198,12 +133,12 @@ If you frequently work with API standards or other structured knowledge, Goose m - Documentation requirements ``` ### Step 2: Use Stored Knowledge to Create a New API Endpoint - #### Goose Prompt # 2 + #### goose Prompt # 2 ``` Help me create a new endpoint for user preferences ``` - #### Goose Output + #### goose Output ``` I see you need a new endpoint. Based on our API development standards that I have stored in memory, I'll ensure it meets all our requirements. diff --git a/documentation/docs/mcp/mongodb-mcp.md b/documentation/docs/mcp/mongodb-mcp.md index b737c7138047..67791e3b3498 100644 --- a/documentation/docs/mcp/mongodb-mcp.md +++ b/documentation/docs/mcp/mongodb-mcp.md @@ -1,13 +1,14 @@ --- title: MongoDB Extension -description: Add MongoDB MCP Server as a Goose Extension +description: Add MongoDB 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'; -The [MongoDB MCP Server](https://github.com/mongodb-js/mongodb-mcp-server) extension allows Goose to interact directly with your MongoDB databases, enabling comprehensive database operations including querying, document manipulation, collection management, and database administration. This makes it easy to work with your MongoDB databases through natural language interactions. +The [MongoDB MCP Server](https://github.com/mongodb-js/mongodb-mcp-server) extension allows goose to interact directly with your MongoDB databases, enabling comprehensive database operations including querying, document manipulation, collection management, and database administration. This makes it easy to work with your MongoDB databases through natural language interactions. :::tip TLDR @@ -70,130 +71,16 @@ Note that you'll need [Node.js](https://nodejs.org/) installed on your system to - 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 - └ - ``` - - 3. Name your 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 - │ - // highlight-start - ◆ What would you like to call this extension? - │ MongoDB - // highlight-end - └ - ``` - - 4. Enter the command with the database connection string that matches your [MongoDB environment](#customizing-your-connection) - ```sh - ┌ goose-configure - │ - ◇ What would you like to configure? - │ Add Extension (Connect to a new extension) - │ - ◇ What would you like to call this extension? - │ MongoDB - │ - // highlight-start - ◆ What command should be run? - │ npx -y mongodb-mcp-server --connection-string mongodb://localhost:27017 - // highlight-end - └ - ``` - - 5. Set the timeout (default 300s is usually sufficient) - ```sh - ┌ goose-configure - │ - ◇ What would you like to configure? - │ Add Extension (Connect to a new extension) - │ - ◇ What would you like to call this extension? - │ MongoDB - │ - ◇ What command should be run? - │ npx -y mongodb-mcp-server --connection-string mongodb://localhost:27017 - │ - // 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 would you like to call this extension? - │ MongoDB - │ - ◇ What command should be run? - │ npx -y mongodb-mcp-server --connection-string mongodb://localhost:27017 - │ - ◇ Please set the timeout for this tool (in secs): - │ 300 - │ - // highlight-start - ◆ Would you like to add a description? - │ No - // highlight-end - └ - ``` - - 7. Complete the configuration - ```sh - ┌ goose-configure - │ - ◇ What would you like to configure? - │ Add Extension (Connect to a new extension) - │ - ◇ What would you like to call this extension? - │ MongoDB - │ - ◇ What command should be run? - │ npx -y mongodb-mcp-server --connection-string mongodb://localhost:27017 - │ - ◇ 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? - │ No - // highlight-end - └ Added MongoDB extension - ``` - + + Replace mongodb://localhost:27017 with the actual MongoDB connection string that matches your MongoDB environment. + + } + /> @@ -223,16 +110,16 @@ The MongoDB extension provides comprehensive database management capabilities th - **View collection indexes** and their configurations - **Check database statistics** and collection storage sizes -Just describe what you want to accomplish in natural language, and Goose will help you execute the appropriate MongoDB operations safely and efficiently. +Just describe what you want to accomplish in natural language, and goose will help you execute the appropriate MongoDB operations safely and efficiently. ## Example Usage -#### Goose Prompt +#### goose Prompt ``` Update all users in the premium tier who haven't logged in for more than 90 days - set their status to 'inactive' and add a note about when this change was made. ``` -#### Goose Output +#### goose Output ``` I've successfully updated inactive premium users using updateMany: diff --git a/documentation/docs/mcp/netlify-mcp.md b/documentation/docs/mcp/netlify-mcp.md index 499c50fa3f87..a87dbb748ac2 100644 --- a/documentation/docs/mcp/netlify-mcp.md +++ b/documentation/docs/mcp/netlify-mcp.md @@ -1,16 +1,17 @@ --- title: Netlify Extension -description: Add Netlify MCP Server as a Goose Extension +description: Add Netlify MCP Server as a goose Extension --- import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; import YouTubeShortEmbed from '@site/src/components/YouTubeShortEmbed'; import GooseDesktopInstaller from '@site/src/components/GooseDesktopInstaller'; +import CLIExtensionInstructions from '@site/src/components/CLIExtensionInstructions'; -This tutorial covers how to add the [Netlify MCP Server](https://github.com/netlify/netlify-mcp) as a Goose extension to build, deploy, and manage Netlify sites. +This tutorial covers how to add the [Netlify MCP Server](https://github.com/netlify/netlify-mcp) as a goose extension to build, deploy, and manage Netlify sites. :::tip TLDR @@ -28,10 +29,6 @@ This tutorial covers how to add the [Netlify MCP Server](https://github.com/netl ## Configuration -:::info -Note that you'll need [Node.js](https://nodejs.org/) installed on your system to run this command, as it uses `npx`. -::: - Make sure that you are signed in to your Netlify account: ```bash @@ -40,6 +37,10 @@ netlify login ### Add Netlify MCP Server +:::info +Note that you'll need [Node.js](https://nodejs.org/) installed on your system to run this command, as it uses `npx`. +::: + - 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? - │ netlify - // 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? - │ netlify - │ - // highlight-start - ◆ What command should be run? - │ npx -y @netlify/mcp - // 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? - │ netlify - │ - ◇ What command should be run? - │ npx -y @netlify/mcp - │ - // 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? - │ netlify - │ - ◇ What command should be run? - │ npx -y @netlify/mcp - │ - ◇ Please set the timeout for this tool (in secs): - │ 300 - │ - // highlight-start - ◇ Would you like to add a description? - │ No - // highlight-end - │ - └ - ``` - - 7. Choose No when asked to add environment variables - - ```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? - │ netlify - │ - ◇ What command should be run? - │ npx -y @netlify/mcp - │ - ◇ 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? - │ No - | - // highlight-end - └ Added netlify extension - ``` - + ## Example Usage -In this example, I’ll show you how to use Goose with the Netlify Extension to deploy a web application. +In this example, I’ll show you how to use goose with the Netlify Extension to deploy a web application. -### Goose Prompt +### goose Prompt > Can you deploy my app to Netlify via my GitHub repo? -### Goose Output +### goose Output :::note CLI diff --git a/documentation/docs/mcp/nostrbook-mcp.md b/documentation/docs/mcp/nostrbook-mcp.md index 31ae0ce695c4..300d0e6e8e38 100644 --- a/documentation/docs/mcp/nostrbook-mcp.md +++ b/documentation/docs/mcp/nostrbook-mcp.md @@ -1,24 +1,29 @@ --- title: Nostrbook Extension -description: Add Nostrbook MCP Server as a Goose Extension +description: Add Nostrbook 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'; - -This tutorial covers how to add the [Nostrbook MCP Server](https://gitlab.com/soapbox-pub/nostrbook) as a Goose extension to provide access to a comprehensive registry of Nostr documentation that helps users understand the decentralized social protocol, its implementation possibilities, and technical specifications. +This tutorial covers how to add the [Nostrbook MCP Server](https://gitlab.com/soapbox-pub/nostrbook) as a goose extension to provide access to a comprehensive registry of Nostr documentation that helps users understand the decentralized social protocol, its implementation possibilities, and technical specifications. :::tip TLDR - -**Command** -```sh -npx -y @nostrbook/mcp@latest -``` - + + + [Launch the installer](goose://extension?cmd=npx&arg=-y&arg=%40nostrbook%2Fmcp&id=nostrbook&name=Nostrbook&description=A%20comprehensive%20registry%20of%20Nostr%20documentation%20with%20structured%20knowledge) + + + **Command** + ```sh + npx -y @nostrbook/mcp@latest + ``` + + ::: ## Configuration @@ -39,158 +44,22 @@ Note that you'll need [Node.js](https://nodejs.org/) installed on your system to /> - 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 - │ - ◆ 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 - │ - ◇ What type of extension would you like to add? - │ Command-line Extension - │ - // highlight-start - ◆ What would you like to call this extension? - │ Nostrbook - // highlight-end - └ - ``` - - 4. Enter the command - ```sh - ┌ goose-configure - │ - ◇ What would you like to configure? - │ Add Extension - │ - ◇ What type of extension would you like to add? - │ Command-line Extension - │ - ◇ What would you like to call this extension? - │ Nostrbook - │ - // highlight-start - ◆ What command should be run? - │ npx -y @nostrbook/mcp@latest - // 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 - │ - ◇ What type of extension would you like to add? - │ Command-line Extension - │ - ◇ What would you like to call this extension? - │ Nostrbook - │ - ◇ What command should be run? - │ npx -y @nostrbook/mcp@latest - │ - // 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 - │ - ◇ What type of extension would you like to add? - │ Command-line Extension - │ - ◇ What would you like to call this extension? - │ Nostrbook - │ - ◇ What command should be run? - │ npx -y @nostrbook/mcp@latest - │ - ◇ Please set the timeout for this tool (in secs): - │ 300 - │ - // highlight-start - ◇ Would you like to add a description? - │ No - // highlight-end - │ - └ - ``` - - 7. Choose No when asked to add environment variables - - ```sh - ┌ goose-configure - │ - ◇ What would you like to configure? - │ Add Extension - │ - ◇ What type of extension would you like to add? - │ Command-line Extension - │ - ◇ What would you like to call this extension? - │ Nostrbook - │ - ◇ What command should be run? - │ npx -y @nostrbook/mcp@latest - │ - ◇ 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? - │ No - │ - // highlight-end - └ Added Nostrbook extension - ``` - + ## Example Usage -### Goose Prompt +### goose Prompt -> _Goose, what is the NIP-61 and how can I implement it?._ +> _goose, what is the NIP-61 and how can I implement it?._ -### Goose Output +### goose Output Note that IDs have been changed to generic ones diff --git a/documentation/docs/mcp/openmetadata-mcp.md b/documentation/docs/mcp/openmetadata-mcp.md index eb78d9e09587..8afc074fd790 100644 --- a/documentation/docs/mcp/openmetadata-mcp.md +++ b/documentation/docs/mcp/openmetadata-mcp.md @@ -1,18 +1,19 @@ --- title: OpenMetadata Extension -description: Add OpenMetadata MCP Server as a Goose Extension +description: Add OpenMetadata 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'; -The [OpenMetadata MCP Server](https://open-metadata.org/mcp) extension allows Goose to interact directly with your OpenMetadata, enabling operations for OpenMetadata assets, glossaries, and lineage. This makes it easy to work with your metadata stored in OpenMetadata through natural language interactions. +The [OpenMetadata MCP Server](https://open-metadata.org/mcp) extension allows goose to interact directly with your OpenMetadata, enabling operations for OpenMetadata assets, glossaries, and lineage. This makes it easy to work with your metadata stored in OpenMetadata through natural language interactions. :::tip TLDR - [Launch the installer](goose://extension?cmd=npx&arg=-y&arg=mcp-remote&arghttp://localhost:8585/mcp&arg=--auth-server-url&arg=http://localhost:8585/mcp&id=openmetadata&name=OpenMetadata&description=OpenMetadata%20integration) + [Launch the installer](goose://extension?cmd=npx&arg=-y&arg=mcp-remote&arg=http%3A%2F%2Flocalhost%3A8585%2Fmcp&arg=--auth-server-url%3Dhttp%3A%2F%2Flocalhost%3A8585%2Fmcp&arg=--client-id%3Dopenmetadata&arg=--verbose&arg=--clean&arg=--header&arg=Authorization%3A%24%7BAUTH_HEADER%7D&id=openmetadata&name=OpenMetadata&description=Intelligent%20data%20management%20and%20automated%20data%20operations&env=AUTH_HEADER%3DBearer%20YOUR_OPENMETADATA_PAT) **Command** @@ -38,9 +39,14 @@ Note that you'll need [Node.js](https://nodejs.org/) installed on your system to :::info Configure Your Connection String @@ -49,140 +55,24 @@ Note that you'll need [Node.js](https://nodejs.org/) installed on your system to - 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 - └ - ``` - - 3. Name your 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 - │ - // highlight-start - ◆ What would you like to call this extension? - │ OpenMetadata - // highlight-end - └ - ``` - - 4. Enter the command with an URL that matches your [OpenMetadata environment](#customizing-your-connection) - ```sh - ┌ goose-configure - │ - ◇ What would you like to configure? - │ Add Extension (Connect to a new extension) - │ - ◇ What would you like to call this extension? - │ OpenMetadata - │ - // highlight-start - ◆ What command should be run? - │ npx -y mcp-remote http://localhost:8585/mcp --auth-server-url=http://localhost:8585/mcp --client-id=openmetadata --verbose --clean --header Authorization:${AUTH_HEADER} - // highlight-end - └ - ``` - - 5. Set the timeout (default 300s is usually sufficient) - ```sh - ┌ goose-configure - │ - ◇ What would you like to configure? - │ Add Extension (Connect to a new extension) - │ - ◇ What would you like to call this extension? - │ OpenMetadata - │ - ◇ What command should be run? - │ npx -y mcp-remote http://localhost:8585/mcp --auth-server-url=http://localhost:8585/mcp --client-id=openmetadata --verbose --clean --header Authorization:${AUTH_HEADER} - │ - // 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 would you like to call this extension? - │ OpenMetadata - │ - ◇ What command should be run? - │ npx -y mcp-remote http://localhost:8585/mcp --auth-server-url=http://localhost:8585/mcp --client-id=openmetadata --verbose --clean --header Authorization:${AUTH_HEADER} - │ - ◇ Please set the timeout for this tool (in secs): - │ 300 - │ - // highlight-start - ◆ Would you like to add a description? - │ No - // highlight-end - └ - ``` - - 7. Complete the configuration by added your [OpenMetadata Personal Access Token (PAT)](https://docs.open-metadata.org/latest/how-to-guides/mcp#adding-a-personal-access-token-to-your-mcp-client) - ```sh - ┌ goose-configure - │ - ◇ What would you like to configure? - │ Add Extension (Connect to a new extension) - │ - ◇ What would you like to call this extension? - │ OpenMetadata - │ - ◇ What command should be run? - │ npx -y mcp-remote http://localhost:8585/mcp --auth-server-url=http://localhost:8585/mcp --client-id=openmetadata --verbose --clean --header Authorization:${AUTH_HEADER} - │ - ◇ 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: - │ AUTH_HEADER - │ - ◇ Environment variable value: - │ "Bearer " - │ - ◇ Add another environment variable? - │ No - │ -// highlight-end - └ Added OpenMetadata extension - ``` - + + Replace http://localhost:8585/mcp with the actual OpenMetadata instance URL that matches your OpenMetadata environment. + + } + infoNote={ + <> + Obtain your OpenMetadata Personal Access Token and paste it in as the Bearer token. + + } + /> @@ -197,18 +87,18 @@ The OpenMetadata extension provides comprehensive metadata management capabiliti - **create_glossary_term** Create a new term within an existing glossary, with support for hierarchical relationships. - **get_entity_lineage** Retrieve upstream and downstream lineage information for any entity to understand data dependencies and impact analysis. -Just describe what you want to accomplish in natural language, and Goose will help you execute the appropriate OpenMetadata operations safely and efficiently. +Just describe what you want to accomplish in natural language, and goose will help you execute the appropriate OpenMetadata operations safely and efficiently. ## Example Usage -In this example, Goose looks at the metadata for a Redshift table named `customers` stored in OpenMetadata, particularly its lineage. If the lineage does not show that a Databricks table named `customerinfo` is used to build `customers`, Goose will add it. +In this example, goose looks at the metadata for a Redshift table named `customers` stored in OpenMetadata, particularly its lineage. If the lineage does not show that a Databricks table named `customerinfo` is used to build `customers`, goose will add it. -#### Goose Prompt +#### goose Prompt ``` which tables are used to create my customers table in redshift? if the databricks table customerinfo is not already, add it to the customers table lineage. ``` -#### Goose Output +#### goose Output ``` Based on my analysis, I found your Redshift customers table at `redshift prod.dev.dbt_jaffle.customers`. Here are the tables currently used to create it: diff --git a/documentation/docs/mcp/pdf-mcp.md b/documentation/docs/mcp/pdf-mcp.md index 1dbe1b8b38fa..5a749ddb7c14 100644 --- a/documentation/docs/mcp/pdf-mcp.md +++ b/documentation/docs/mcp/pdf-mcp.md @@ -1,16 +1,17 @@ --- title: PDF Reader Extension -description: Add PDF Reader MCP Server as a Goose Extension +description: Add PDF Reader MCP Server as a goose Extension --- import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; import YouTubeShortEmbed from '@site/src/components/YouTubeShortEmbed'; import GooseDesktopInstaller from '@site/src/components/GooseDesktopInstaller'; +import CLIExtensionInstructions from '@site/src/components/CLIExtensionInstructions'; -This tutorial covers how to add the [PDF Reader MCP Server](https://github.com/michaelneale/mcp-read-pdf) as a Goose extension, enabling Goose to read and extract text from protected and unprotected PDFs. +This tutorial covers how to add the [PDF Reader MCP Server](https://github.com/michaelneale/mcp-read-pdf) as a goose extension, enabling goose to read and extract text from protected and unprotected PDFs. :::tip TLDR @@ -43,159 +44,19 @@ Note that you'll need [uv](https://docs.astral.sh/uv/#installation) installed on /> - 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? -│ pdf -// 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? -│ pdf -│ -// highlight-start -◆ What command should be run? -│ uvx mcp-read-pdf -// 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? -│ pdf -│ -◇ What command should be run? -│ uvx mcp-read-pdf -│ -// 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? -│ pdf -│ -◇ What command should be run? -│ uvx mcp-read-pdf -│ -◇ Please set the timeout for this tool (in secs): -│ 300 -│ -// highlight-start -◇ Would you like to add a description? -│ No -// highlight-end -│ -└ -``` - -7. Choose No when asked to add environment variables - -```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? -│ pdf -│ -◇ What command should be run? -│ uvx mcp-read-pdf -│ -◇ 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? -│ No -│ -// highlight-end -└ Added pdf extension -``` - - - + + + ## Example Usage -This example shows how to use the PDF Reader Extension to analyze an applicant's resume for specific attributes. With the PDF Reader extension, Goose can read specific pages or entire documents as well as extract text from large and complex PDFs. +This example shows how to use the PDF Reader Extension to analyze an applicant's resume for specific attributes. With the PDF Reader extension, goose can read specific pages or entire documents as well as extract text from large and complex PDFs. -### Goose Prompt +### goose Prompt ``` Read the resume at ~/Downloads/resume.pdf and evaluate how well this candidate aligns with the following role requirements: @@ -209,7 +70,7 @@ Read the resume at ~/Downloads/resume.pdf and evaluate how well this candidate a Give a score out of 5 for each requirement, supporting evidence, and a summary at the end with pros, cons, and a decision: Strong Fit / Moderate Fit / Weak Fit. ``` -### Goose Output +### goose Output :::note CLI diff --git a/documentation/docs/mcp/pieces-mcp.md b/documentation/docs/mcp/pieces-mcp.md index b297ee507b0b..7e95ad2dd9c7 100644 --- a/documentation/docs/mcp/pieces-mcp.md +++ b/documentation/docs/mcp/pieces-mcp.md @@ -1,16 +1,17 @@ --- title: Pieces for Developers Extension -description: Add Pieces for Developers MCP Server as a Goose Extension +description: Add Pieces for Developers MCP Server as a goose Extension --- import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; import YouTubeShortEmbed from '@site/src/components/YouTubeShortEmbed'; import GooseDesktopInstaller from '@site/src/components/GooseDesktopInstaller'; +import CLIExtensionInstructions from '@site/src/components/CLIExtensionInstructions'; -This tutorial covers how to add the [Pieces for Developers MCP Server](https://docs.pieces.app/products/mcp/get-started?utm_source=goose&utm_medium=collab&utm_campaign=mcp) as a Goose extension to enable interaction with your Pieces Long-Term Memory. +This tutorial covers how to add the [Pieces for Developers MCP Server](https://docs.pieces.app/products/mcp/get-started?utm_source=goose&utm_medium=collab&utm_campaign=mcp) as a goose extension to enable interaction with your Pieces Long-Term Memory. ## Configuration @@ -42,156 +43,17 @@ http://localhost:39300/model_context_protocol/2024-11-05/sse /> - 1. Run the `configure` command: - - ```sh - goose configure - ``` - - 2. Choose to add a `Remote 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 - │ ○ Command-line Extension (Run a local command or script) - // highlight-start - │ ● Remote Extension (SSE) - // highlight-end - │ ○ 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? - │ Remote Extension (SSE) - │ - // highlight-start - ◆ What would you like to call this extension? - │ Pieces - // highlight-end - └ - ``` - - 4. Enter the SSE endpoint URI. - - :::info - Use the server URL you copied from PiecesOS settings earlier. - ::: - - ```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? - │ Remote Extension (SSE) - │ - ◇ What would you like to call this extension? - │ Pieces - │ - // highlight-start - ◆ What is the SSE endpoint URI? - │ http://localhost:39300/model_context_protocol/2024-11-05/sse - // 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? - │ Remote Extension (SSE) - │ - ◇ What would you like to call this extension? - │ Pieces - │ - ◇ What is the SSE endpoint URI? - │ http://localhost:39300/model_context_protocol/2024-11-05/sse - │ - // highlight-start - ◆ Please set the timeout for this tool (in secs): - │ 300 - // highlight-end - └ - ``` - - 6. Add a description if you want, otherwise to leave the description blank select No. - - ```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? - │ Remote Extension (SSE) - │ - ◇ What would you like to call this extension? - │ Pieces - │ - ◇ What is the SSE endpoint URI? - │ http://localhost:39300/model_context_protocol/2024-11-05/sse - │ - ◇ Please set the timeout for this tool (in secs): - │ 300 - │ - // highlight-start - ◆ Would you like to add a description? - │ ○ Yes / ● No - // highlight-end - │ - └ - ``` - - 7. No environment variables are needed, so select No. - - ```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? - │ Remote Extension (SSE) - │ - ◇ What would you like to call this extension? - │ Pieces - │ - ◇ What is the SSE endpoint URI? - │ http://localhost:39300/model_context_protocol/2024-11-05/sse - │ - ◇ 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 / ● No - // highlight-end - └ - ``` - + + Use the server URL you copied from PiecesOS settings. PiecesOS may use a different port if 39300 is already in use on your system. + + } + /> @@ -199,25 +61,25 @@ http://localhost:39300/model_context_protocol/2024-11-05/sse Let's use the Pieces for Developers MCP server to generate a status update for a standup meeting based on your activities on the previous day. -### Goose Prompt +### goose Prompt ``` I need a status update for what I was using yesterday. Create a report with 5 bullet points based off the most important activities, and give each one a brief description. ``` -### Goose Output +### goose Output ``` Here's a report summarizing your key activities from yesterday, based on the most important interactions and applications you were using: -1. Code Development with Goose: +1. Code Development with goose: - Activity: You worked on integrating SSE MCP servers into the Goose CLI, making enhancements to handle extensions via schema URLs. - Description: This task involved modifying code and testing new integrations to support advanced functionalities. It also included interactions with the Goose community on Discord for feedback and troubleshooting. + Activity: You worked on integrating SSE MCP servers into the goose CLI, making enhancements to handle extensions via schema URLs. + Description: This task involved modifying code and testing new integrations to support advanced functionalities. It also included interactions with the goose community on Discord for feedback and troubleshooting. 2. Documentation Updates: - Activity: You updated and managed documentation related to the Goose project and MCP integrations. + Activity: You updated and managed documentation related to the goose project and MCP integrations. Description: This involved preparing documentation for new features, including usage guidelines and technical details, aiding in the improvement of user experience and technical instructions. 3. Community Interaction on Discord: @@ -227,7 +89,7 @@ Here's a report summarizing your key activities from yesterday, based on the mos 4. Managing and Testing Extensions: - Activity: You focused on testing and managing various extensions through the Goose platform. + Activity: You focused on testing and managing various extensions through the goose platform. Description: This included configuring and validating different extensions, ensuring their compatibility and functionality, and incorporating feedback from testing. 5. Content and Integration Planning: diff --git a/documentation/docs/mcp/playwright-mcp.md b/documentation/docs/mcp/playwright-mcp.md index 51e4cbd50d4e..a1102163ad97 100644 --- a/documentation/docs/mcp/playwright-mcp.md +++ b/documentation/docs/mcp/playwright-mcp.md @@ -1,16 +1,17 @@ --- title: Playwright Extension -description: Add Playwright MCP Server as a Goose Extension for Modern Web Testing +description: Add Playwright MCP Server as a goose Extension for Modern Web Testing --- import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; import YouTubeShortEmbed from '@site/src/components/YouTubeShortEmbed'; import GooseDesktopInstaller from '@site/src/components/GooseDesktopInstaller'; +import CLIExtensionInstructions from '@site/src/components/CLIExtensionInstructions'; -This tutorial covers how to add the Playwright MCP Server as a Goose extension, to enable cross-browser testing and web automation across Chromium and Webkit. +This tutorial covers how to add the Playwright MCP Server as a goose extension, to enable cross-browser testing and web automation across Chromium and Webkit. :::tip TLDR @@ -43,139 +44,17 @@ Note that you'll need [Node.js](https://nodejs.org/) installed on your system to /> - 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 - │ - ◆ What would you like to call this extension? - │ Playwright - └ - ``` - - 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? - │ Playwright - │ - ◆ What command should be run? - │ npx -y @playwright/mcp@latest - └ - ``` - - 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? - │ Playwright - │ - ◇ What command should be run? - │ npx -y @playwright/mcp@latest - │ - ◆ Please set the timeout for this tool (in secs): - │ 300 - └ - ``` - - 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? - │ Playwright - │ - ◇ What command should be run? - │ npx -y @playwright/mcp@latest - │ - ◇ Please set the timeout for this tool (in secs): - │ 300 - │ - ◆ Would you like to add a description? - │ No - └ - ``` - - 7. Choose No when asked to add environment variables - ```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? - │ Playwright - │ - ◇ What command should be run? - │ npx -y @playwright/mcp@latest - │ - ◇ Please set the timeout for this tool (in secs): - │ 300 - │ - ◇ Would you like to add a description? - │ No - │ - ◆ Would you like to add environment variables? - │ No - │ - └ Added Playwright extension - ``` + ## Example Usage -Let's use Goose with the Playwright extension to create a cross-browser testing suite. In this example, we'll demonstrate how Goose can help you: +Let's use goose with the Playwright extension to create a cross-browser testing suite. In this example, we'll demonstrate how goose can help you: 1. Test a web application across multiple browsers 2. Generate maintainable test code @@ -185,7 +64,7 @@ Let's use Goose with the Playwright extension to create a cross-browser testing Anthropic's Claude 4 Sonnet was used for this task. ::: -### Goose Prompt +### goose Prompt ``` Test the random redesign generator app (https://blackgirlbytes.github.io/random-redesign-picker/) in Chromium and WebKit. For each browser: @@ -196,7 +75,7 @@ in Chromium and WebKit. For each browser: Then generate a Playwright test that works across all browsers. ``` -### Goose Output +### goose Output ``` Let's start with Chromium: diff --git a/documentation/docs/mcp/repomix-mcp.md b/documentation/docs/mcp/repomix-mcp.md index dcc1aa851de5..9d9ff3634d7d 100644 --- a/documentation/docs/mcp/repomix-mcp.md +++ b/documentation/docs/mcp/repomix-mcp.md @@ -1,22 +1,23 @@ --- title: Repomix Extension -description: Add Repomix MCP Server as a Goose Extension +description: Add Repomix MCP Server as a goose Extension --- import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; import YouTubeShortEmbed from '@site/src/components/YouTubeShortEmbed'; import GooseDesktopInstaller from '@site/src/components/GooseDesktopInstaller'; +import CLIExtensionInstructions from '@site/src/components/CLIExtensionInstructions'; -This tutorial covers how to add the [Repomix MCP Server](https://github.com/yamadashy/repomix) as a Goose extension to enable automated repository packing, codebase analysis, architecture summaries, test generation, and code exploration, all while compressing the codebase to minimize token usage and stay within your LLM's context limits. +This tutorial covers how to add the [Repomix MCP Server](https://github.com/yamadashy/repomix) as a goose extension to enable automated repository packing, codebase analysis, architecture summaries, test generation, and code exploration, all while compressing the codebase to minimize token usage and stay within your LLM's context limits. :::tip TLDR - [Launch the installer](goose://extension?cmd=npx&arg=-y&arg=repomix&arg=--mcp&id=repomix&name=Repomix&description=Pack%20repositories%20into%20AI-friendly%20formats%20for%20Goose) + [Launch the installer](goose://extension?cmd=npx&arg=-y&arg=repomix&arg=--mcp&id=repomix&name=Repomix&description=Pack%20repositories%20into%20AI-friendly%20formats%20for%20goose) **Command** @@ -38,168 +39,32 @@ Note that you'll need [Node.js](https://nodejs.org/) installed on your system to - 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? - │ repomix - // 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? - │ repomix - │ - // highlight-start - ◆ What command should be run? - │ npx -y repomix --mcp - // 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? - │ repomix - │ - ◇ What command should be run? - │ npx -y repomix --mcp - │ - // 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? - │ repomix - │ - ◇ What command should be run? - │ npx -y repomix --mcp - │ - ◇ Please set the timeout for this tool (in secs): - │ 300 - │ - // highlight-start - ◇ Would you like to add a description? - │ No - // highlight-end - │ - └ - ``` - - 7. Choose No when asked to add environment variables - - ```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? - │ repomix - │ - ◇ What command should be run? - │ npx -y repomix --mcp - │ - ◇ 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? - │ No - │ - // highlight-end - └ Added repomix extension - ``` - + ## Example Usage -In this example, I’ll show you how to use Goose with the Repomix Extension to analyze the compressed Axios repository. Goose will focus on the `lib/core/Axios.js` file, explain its role in the architecture, spot missing tests, write new unit tests, and suggest improvements to the testing strategy and code maintainability. +In this example, I’ll show you how to use goose with the Repomix Extension to analyze the compressed Axios repository. goose will focus on the `lib/core/Axios.js` file, explain its role in the architecture, spot missing tests, write new unit tests, and suggest improvements to the testing strategy and code maintainability. -By compressing the entire codebase into an AI-friendly format, Repomix helps Goose stay within token limits while providing detailed, file-specific insights. +By compressing the entire codebase into an AI-friendly format, Repomix helps goose stay within token limits while providing detailed, file-specific insights. -### Goose Prompt +### goose Prompt > Review the file lib/core/Axios.js from the Axios repository and identify any missing unit tests needed to thoroughly cover its core functions and classes. Explain the role this file plays in the overall Axios architecture, how it integrates with other modules, and how well it is currently tested. Write new unit tests to improve coverage, and recommend improvements to the testing strategy or refactoring opportunities to make the code more maintainable. -### Goose Output +### goose Output :::note CLI diff --git a/documentation/docs/mcp/selenium-mcp.md b/documentation/docs/mcp/selenium-mcp.md index 808386ae96af..2f15cf8dcb4f 100644 --- a/documentation/docs/mcp/selenium-mcp.md +++ b/documentation/docs/mcp/selenium-mcp.md @@ -1,17 +1,18 @@ --- title: Selenium Extension -description: Add Selenium MCP Server as a Goose Extension +description: Add Selenium MCP Server as a goose Extension --- import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; import YouTubeShortEmbed from '@site/src/components/YouTubeShortEmbed'; import GooseDesktopInstaller from '@site/src/components/GooseDesktopInstaller'; +import CLIExtensionInstructions from '@site/src/components/CLIExtensionInstructions'; -This tutorial covers how to add the [Selenium MCP Server](https://github.com/angiejones/mcp-selenium) as a Goose extension to automate browser interactions such as navigating web pages and completing forms. +This tutorial covers how to add the [Selenium MCP Server](https://github.com/angiejones/mcp-selenium) as a goose extension to automate browser interactions such as navigating web pages and completing forms. :::tip TLDR @@ -45,160 +46,24 @@ Note that you'll need [Node.js](https://nodejs.org/) installed on your system to /> - 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? - │ Selenium - // 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? - │ Selenium - │ - // highlight-start - ◆ What command should be run? - │ npx -y @angiejones/mcp-selenium - // 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? - │ Selenium - │ - ◇ What command should be run? - │ npx -y @angiejones/mcp-selenium - │ - // 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? - │ Selenium - │ - ◇ What command should be run? - │ npx -y @angiejones/mcp-selenium - │ - ◇ Please set the timeout for this tool (in secs): - │ 300 - │ - // highlight-start - ◇ Would you like to add a description? - │ No - // highlight-end - │ - └ - ``` - - 7. Choose No when asked to add environment variables - - ```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? - │ Selenium - │ - ◇ What command should be run? - │ npx -y @angiejones/mcp-selenium - │ - ◇ 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? - │ No - │ - // highlight-end - └ Added Selenium extension - ``` - + ## Example Usage -Let's use Goose to build a test automation project from scratch! We'll use the Selenium MCP to automate filling out a web form, then have Goose generate a Selenium project with the code so that we can run these tests again when needed. +Let's use goose to build a test automation project from scratch! We'll use the Selenium MCP to automate filling out a web form, then have goose generate a Selenium project with the code so that we can run these tests again when needed. -### Goose Prompt +### goose Prompt > Use selenium to go to the heroku formy site and fill out the form page with generic data. then can you turn what you've done into an automation script for me? I would like it in Java. Also use the Page Object Model pattern. -### Goose Output +### goose Output \ No newline at end of file diff --git a/documentation/docs/mcp/tavily-mcp.md b/documentation/docs/mcp/tavily-mcp.md index 31fd23cdc43f..196f66cf6a5a 100644 --- a/documentation/docs/mcp/tavily-mcp.md +++ b/documentation/docs/mcp/tavily-mcp.md @@ -1,16 +1,17 @@ --- title: Tavily Web Search Extension -description: Add Tavily MCP Server as a Goose Extension +description: Add Tavily MCP Server as a goose Extension --- import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; import YouTubeShortEmbed from '@site/src/components/YouTubeShortEmbed'; import GooseDesktopInstaller from '@site/src/components/GooseDesktopInstaller'; +import CLIExtensionInstructions from '@site/src/components/CLIExtensionInstructions'; -This tutorial covers how to add the [Tavily Web Search MCP Server](https://github.com/tavily-ai/tavily-mcp) as a Goose extension to enable AI-powered web search functionality. +This tutorial covers how to add the [Tavily Web Search MCP Server](https://github.com/tavily-ai/tavily-mcp) as a goose extension to enable AI-powered web search functionality. :::tip TLDR @@ -52,175 +53,38 @@ Note that you'll need [uv](https://docs.astral.sh/uv/#installation) installed on /> - 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? - │ tavily - // 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? - │ tavily - │ - // highlight-start - ◆ What command should be run? - │ npx -y tavily-mcp - // 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? - │ tavily - │ - ◇ What command should be run? - │ npx -y tavily-mcp - │ - // 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? - │ tavily - │ - ◇ What command should be run? - │ npx -y tavily-mcp - │ - ◇ Please set the timeout for this tool (in secs): - │ 300 - │ - // highlight-start - ◇ Would you like to add a description? - │ No - // highlight-end - └ - ``` - - 7. Obtain a [Tavily API Key](https://tavily.com/) and paste it in. - :::info - You can get your API key by signing up at [tavily.com](https://app.tavily.com/) and navigating to your account settings. - ::: - - ```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? - │ tavily - │ - ◇ What command should be run? - │ npx -y tavily-mcp - │ - ◇ 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: - │ TAVILY_API_KEY - │ - ◇ Environment variable value: - │ ▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪ - │ - ◇ Add another environment variable? - │ No - // highlight-end - └ Added tavily extension - ``` - + + Obtain your Tavily API Key and paste it in. You can get your API key by signing up at tavily.com and navigating to your account settings. + + } + /> ## Example Usage -The Tavily MCP server enables AI-powered web search functionality in your Goose interactions. When you obtain your API key, you'll have access to Tavily's advanced search capabilities including: +The Tavily MCP server enables AI-powered web search functionality in your goose interactions. When you obtain your API key, you'll have access to Tavily's advanced search capabilities including: 1. Real-time web search 2. Structured data extraction 3. Content analysis 4. Topic-specific search -### Goose Prompt +### goose Prompt ``` Search for recent news about artificial intelligence breakthroughs in medicine and summarize the key findings. ``` -### Goose Output +### goose Output ``` I'll use the Tavily news search tool to find recent news about AI breakthroughs in medicine. diff --git a/documentation/docs/mcp/tutorial-mcp.md b/documentation/docs/mcp/tutorial-mcp.md index 738c10b8923e..c17f969f8637 100644 --- a/documentation/docs/mcp/tutorial-mcp.md +++ b/documentation/docs/mcp/tutorial-mcp.md @@ -1,17 +1,17 @@ --- title: Tutorial Extension -description: Learn how to use Goose's built-in Tutorial extension for guided learning +description: Learn how to use goose's built-in Tutorial extension for guided learning --- import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; import GooseBuiltinInstaller from '@site/src/components/GooseBuiltinInstaller'; -The Tutorial extension is a built-in feature of Goose that provides interactive, step-by-step guidance for learning various aspects of Goose and its capabilities. It's designed to help users get comfortable with Goose's features through hands-on practice. +The Tutorial extension is a built-in feature of goose that provides interactive, step-by-step guidance for learning various aspects of goose and its capabilities. It's designed to help users get comfortable with goose's features through hands-on practice. The Tutorial extension serves as an interactive learning tool that: - Provides structured, step-by-step tutorials -- Allows hands-on practice with Goose features +- Allows hands-on practice with goose features - Offers immediate feedback and guidance ## Configuration @@ -26,67 +26,25 @@ The Tutorial extension serves as an interactive learning tool that: -```sh -goose configure -``` - -2. Choose to add a `Built-in 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? -// highlight-start -│ ● Built-in Extension (Use an extension that comes with Goose) -// highlight-end -│ ○ Command-line Extension -│ ○ Remote Extension (SSE) -│ ○ Remote Extension (Streaming HTTP) -└ -``` - -3. Select the `Tutorial` 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 -│ -◆ Which built-in extension would you like to enable? -│ ○ Developer Tools -│ ○ Computer Controller -// highlight-start -│ ● Tutorial -// highlight-end -│ ○ Memory -| ○ JetBrains -└ -``` - -4. 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? - │ Built-in Extension - │ - ◇ Which built-in extension would you like to enable? - │ Tutorial - │ - // highlight-start - ◆ Please set the timeout for this tool (in secs): - │ 300 - // highlight-end - └ Enabled Tutorials extension -``` + 1. Run the `configure` command: + ```sh + goose configure + ``` + + 2. Choose to `Toggle Extensions` + ```sh + ┌ goose-configure + │ + ◇ What would you like to configure? + │ Toggle Extensions + │ + ◆ Enable extensions: (use "space" to toggle and "enter" to submit) + // highlight-start + │ ● tutorial + // highlight-end + | + └ Extension settings updated successfully + ``` @@ -95,7 +53,7 @@ goose configure Currently, the following tutorials are available: - **build-mcp-extension**: Learn how to build an extension using the Model Context Protocol (MCP) -- **first-game**: Create your first game with Goose +- **first-game**: Create your first game with goose More tutorials are being added regularly to cover additional features and use cases. @@ -105,10 +63,10 @@ More tutorials are being added regularly to cover additional features and use ca There are two main ways to interact with tutorials: -1. **Ask Goose directly**: You can simply ask about a topic you're interested in, and Goose will suggest relevant tutorials. +1. **Ask goose directly**: You can simply ask about a topic you're interested in, and goose will suggest relevant tutorials. ``` -( O)> I'd like to learn how to build an extension for Goose +( O)> I'd like to learn how to build an extension for goose ``` 2. **Request a specific tutorial**: You can directly request a tutorial by name. @@ -121,7 +79,7 @@ There are two main ways to interact with tutorials: While going through a tutorial: -1. Goose will guide you step-by-step through the process +1. goose will guide you step-by-step through the process 2. You'll receive clear instructions before any actions are taken 3. You can ask questions at any time for clarification 4. You can take breaks and resume later @@ -129,7 +87,7 @@ While going through a tutorial: ### Best Practices - **Take your time**: Don't rush through the tutorials. Make sure you understand each step before moving on. -- **Ask questions**: If something isn't clear, ask Goose to explain it further. +- **Ask questions**: If something isn't clear, ask goose to explain it further. - **Experiment**: Feel free to try variations of what you're learning. - **Take notes**: Document any interesting findings or techniques you learn. @@ -139,12 +97,12 @@ While going through a tutorial: Here's an example of how to start learning about building extensions: -### Goose Prompt +### goose Prompt ``` -I'd like to learn how to build an extension for Goose +I'd like to learn how to build an extension for goose ``` -### Goose Output +### goose Output ``` I'll help you learn about building extensions! The "build-mcp-extension" tutorial would be perfect for this. Let me load it and guide you through it. @@ -180,7 +138,7 @@ Which SDK would you like to use to get started? After completing tutorials, you can: - Apply learned concepts to your own projects -- Contribute to the Goose community by sharing your experiences +- Contribute to the goose community by sharing your experiences - Suggest new tutorial topics that would be helpful for others ### Need Further Help? diff --git a/documentation/docs/mcp/youtube-transcript-mcp.md b/documentation/docs/mcp/youtube-transcript-mcp.md index 3db39f216583..52b6ee03a462 100644 --- a/documentation/docs/mcp/youtube-transcript-mcp.md +++ b/documentation/docs/mcp/youtube-transcript-mcp.md @@ -1,16 +1,17 @@ --- title: YouTube Transcript Extension -description: Add YouTube Transcript MCP Server as a Goose Extension for accessing YouTube video transcripts +description: Add YouTube Transcript MCP Server as a goose Extension for accessing YouTube video transcripts --- import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; import YouTubeShortEmbed from '@site/src/components/YouTubeShortEmbed'; import GooseDesktopInstaller from '@site/src/components/GooseDesktopInstaller'; +import CLIExtensionInstructions from '@site/src/components/CLIExtensionInstructions'; -This tutorial covers how to add the [YouTube Transcript MCP Server](https://github.com/jkawamoto/mcp-youtube-transcript) as a Goose extension to enable fetching and working with YouTube video transcripts. +This tutorial covers how to add the [YouTube Transcript MCP Server](https://github.com/jkawamoto/mcp-youtube-transcript) as a goose extension to enable fetching and working with YouTube video transcripts. :::tip TLDR @@ -44,144 +45,11 @@ Note that you'll need [uv](https://docs.astral.sh/uv/#installation) installed on /> - 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? - │ youtube-transcript - // 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? - │ youtube-transcript - │ - // highlight-start - ◆ What command should be run? - │ uvx --from git+https://github.com/jkawamoto/mcp-youtube-transcript mcp-youtube-transcript - // 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? - │ youtube-transcript - │ - ◇ What command should be run? - │ uvx --from git+https://github.com/jkawamoto/mcp-youtube-transcript mcp-youtube-transcript - │ - // 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? - │ youtube-transcript - │ - ◇ What command should be run? - │ uvx --from git+https://github.com/jkawamoto/mcp-youtube-transcript mcp-youtube-transcript - │ - ◆ Please set the timeout for this tool (in secs): - │ 300 - │ - // highlight-start - ◇ Would you like to add a description? - │ No - // highlight-end - │ - └ - ``` - - 7. No environment variables are required for this 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? - │ youtube-transcript - │ - ◇ What command should be run? - │ uvx --from git+https://github.com/jkawamoto/mcp-youtube-transcript mcp-youtube-transcript - │ - ◇ 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? - │ No - // highlight-end - └ Added youtube-transcript extension - ``` - + @@ -189,13 +57,13 @@ Note that you'll need [uv](https://docs.astral.sh/uv/#installation) installed on The YouTube Transcript extension allows you to fetch and work with transcripts from YouTube videos. You'll need the video ID from the YouTube URL you want to get the transcript for. -### Goose Prompt +### goose Prompt ``` Get me the transcript for this YouTube video: https://www.youtube.com/watch?v=dQw4w9WgXcQ ``` -### Goose Output +### goose Output :::note CLI I'll help you get the transcript for that video. The video ID is "dQw4w9WgXcQ". Let me fetch the transcript for you. diff --git a/documentation/src/components/CLIExtensionInstructions.tsx b/documentation/src/components/CLIExtensionInstructions.tsx index 9ae6bb627b3f..f99adfbce28d 100644 --- a/documentation/src/components/CLIExtensionInstructions.tsx +++ b/documentation/src/components/CLIExtensionInstructions.tsx @@ -16,6 +16,7 @@ interface CLIExtensionInstructionsProps { timeout?: number; envVars?: EnvVar[]; // For stdio: environment variables, for http: headers infoNote?: string; + commandNote?: React.ReactNode; // Note to display for command/URL step } export default function CLIExtensionInstructions({ @@ -27,6 +28,7 @@ export default function CLIExtensionInstructions({ timeout = 300, envVars = [], infoNote, + commandNote, }: CLIExtensionInstructionsProps) { const hasEnvVars = envVars.length > 0; const isSSE = type === 'sse'; @@ -101,6 +103,14 @@ ${
  1. Enter the {isSSE ? 'SSE endpoint URI' : 'Streaming HTTP endpoint URI'}.
+ {commandNote && ( + <> + + {commandNote} + +
+ + )} {`┌ goose-configure │ ◇ What would you like to configure? @@ -123,6 +133,14 @@ ${
  1. Enter the command to run when this extension is used.
+ {commandNote && ( + <> + + {commandNote} + +
+ + )} {`┌ goose-configure │ ◇ What would you like to configure? diff --git a/documentation/static/servers.json b/documentation/static/servers.json index f6c567dca6bb..402f70eb4217 100644 --- a/documentation/static/servers.json +++ b/documentation/static/servers.json @@ -437,7 +437,7 @@ "name": "OpenMetadata", "description": "Bring OpenMetadata's single source of truth across your data systems to agents", "command": "npx -y mcp-remote http://localhost:8585/mcp --auth-server-url=http://localhost:8585/mcp --client-id=openmetadata --verbose --clean --header Authorization:${AUTH_HEADER}", - "link": "https://open-metadata.org/mcp", + "link": "https://github.com/open-metadata/OpenMetadata", "installation_notes": "Install using npx package manager.", "is_builtin": false, "endorsed": true,