documentation/docs/mcp/tutorial-mcp.md
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 serves as an interactive learning tool that:
configure command:goose configure
Toggle Extensions┌ 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
Currently, the following tutorials are available:
More tutorials are being added regularly to cover additional features and use cases.
There are two main ways to interact with tutorials:
( O)> I'd like to learn how to build an extension for goose
( O)> Can you walk me through the first-game tutorial?
While going through a tutorial:
Here's an example of how to start learning about building extensions:
I'd like to learn how to build an extension for goose
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.
─── load_tutorial | tutorial ──────────────────────────
name: build-mcp-extension
Before we dive into building your extension, I need to understand a few things to better guide you:
1. Which SDK would you prefer to use? We have three options:
- Python (beginner-friendly, great for prototyping)
- TypeScript (great for web-based tools)
- Kotlin (robust, type-safe, good for complex applications)
2. What type of extension would you like to build? For example:
- A tool that performs specific actions
- A resource that provides data to the LLM
- Or do you have a specific idea in mind?
Let me know your preferences, and I'll help you get started with the appropriate setup and implementation!
For reference, here's what we'll cover:
1. Setting up your development environment
2. Creating the basic MCP server
3. Implementing your specific functionality
4. Testing and debugging
Which SDK would you like to use to get started?
After completing tutorials, you can:
If you have questions, run into issues, or just need to brainstorm ideas join the Discord Community!