Managing Tools, Resources, Prompts, and Forwards
You have Wanaku running. You imported your first tool. Now what? This guide walks you through the day-to-day operations: adding, listing, inspecting, and removing the four core primitives that Wanaku orchestrates.
Tools perform actions. Resources expose data. Prompts are reusable templates. Forwards federate external MCP servers. Together, they give AI agents a unified catalog of capabilities to work with.
What You Will Learn
- How to manage tools manually and generate them from OpenAPI specs
- How to expose files and data sources as resources
- How to create and edit prompt templates with typed arguments
- How to aggregate external MCP servers through forwards
What You Will Need
You must have completed demo 1.01. That means:
- Wanaku CLI is installed
wanaku start localis running- You have imported at least one tool
Keep Wanaku running in a terminal. The commands below assume it is available at http://localhost:8080.
1. Tools Management
Tools are callable actions — HTTP endpoints, shell commands, or custom logic that an AI agent can invoke.
Add a Tool Manually
Create a simple weather lookup tool:
wanaku tools add -n "get-weather" \
--description "Get current weather for a city" \
--uri "https://api.weatherapi.com/v1/current.json" \
--type http \
--property "q:string,The city name" \
--required qThis registers a tool with:
- Name:
get-weather - Type:
http(handled by the HTTP capability service) - URI: the API endpoint
- Property: one required string parameter
q(the city name)
NOTE
For this example to work with a live API, you would typically need an API key. The syntax above shows the mechanics — swap in an API you have access to, or just use it to understand the structure.
List All Tools
See what tools are currently available:
wanaku tools listOutput:
name namespace type uri labels
free-currency-conversion-tool default http https://economia.awesomeapi.com.br/last/{parameter.value('fromCurrency')}-{parameter.value('toCurrency')} {}
get-weather default http https://api.weatherapi.com/v1/current.json {}Show Tool Details
Inspect a specific tool to see its full definition:
wanaku tools show get-weatherThis prints the complete tool metadata, including all properties, required fields, and the URI template.
Import a Toolset
Rather than add tools one at a time, you can import a curated collection. For example, import a cryptocurrency toolset:
wanaku tools import https://raw.githubusercontent.com/wanaku-ai/wanaku-toolsets/refs/heads/main/toolsets/crypto.jsonToolsets group related tools under a common theme. Browse the wanaku-toolsets repository for more.
Generate Tools from OpenAPI Specs
If you have an OpenAPI specification (local file or URL), Wanaku can generate tools from it automatically:
wanaku tools generate http://petstore3.swagger.io/api/v3/openapi.yamlThis scans the spec and creates one tool per endpoint. The generated tools respect the parameter schemas, descriptions, and required fields defined in the spec. It is the fastest way to make an entire REST API available to AI agents.
Remove a Tool
When you no longer need a tool:
wanaku tools remove --name "get-weather"The tool is removed from the catalog and will no longer appear to connected agents.
TIP
Tools added manually or via import are stored in Wanaku's internal catalog. If you restart Wanaku in local mode, tools persist in the embedded database. To reset everything, stop Wanaku and delete the data directory (printed in the startup logs).
2. Resources Management
Resources are data sources that AI agents can read but not modify. Think of them as read-only endpoints: files, database query results, or API payloads. Unlike tools, which perform actions, resources simply return data.
Add a Resource
Expose a local file as a resource:
wanaku resources add --name "project-readme" \
--description "Project README file" \
--type file \
--location "/path/to/your/project/README.md" \
--mime-type "text/markdown"Replace /path/to/your/project/README.md with an actual file path on your system. This makes the file content available to AI agents through the MCP resource protocol.
Why does this matter? An agent can now say:
Read the project README and summarize the setup steps.
And Wanaku hands back the file content without you having to paste it into the chat.
List Resources
See all registered resources:
wanaku resources listOutput:
name description type uri mimeType
project-readme Project README file file /path/to/your/project/README.md text/markdownShow Resource Details
Inspect a specific resource:
wanaku resources show project-readmeThis prints metadata including the resource type, location, and MIME type.
Remove a Resource
When the resource is no longer needed:
wanaku resources remove --name "project-readme"The resource is removed from the catalog.
NOTE
Resource management is useful when you want AI agents to have on-demand access to documentation, configuration files, or query results without manually copying them into prompts.
3. Prompts Management
Prompts are reusable templates with typed arguments. Instead of writing the same instructions over and over, you define a prompt once, declare its inputs, and let the agent invoke it with different values.
Add a Prompt
Create a code review prompt:
wanaku prompts add \
--name "code-review" \
--description "Review code for quality and best practices" \
--message "user:text:Please review the following code for quality, security, and best practices: {{code}}" \
--argument "code:The code snippet to review:true"Breaking this down:
- Name:
code-review - Description: What the prompt does
- Message: The prompt template.
is a placeholder that gets replaced with the actual argument value. - Argument: Declares a required string argument called
code
The syntax for --argument is: <name>:<description>:<required>.
The syntax for --message is: <role>:<content-type>:<text>.
Supported roles are user, assistant, and system. Content type is usually text.
List Prompts
See all registered prompts:
wanaku prompts listOutput:
name description
code-review Review code for quality and best practicesEdit a Prompt
Update a prompt's description (or any other field):
wanaku prompts edit --name "code-review" \
--description "Detailed code review focusing on security, performance, and maintainability"This updates the existing prompt without recreating it.
Remove a Prompt
When a prompt is no longer useful:
wanaku prompts remove --name "code-review"TIP
Prompts shine when you have standardized workflows. For example, a team might define prompts for "draft release notes," "analyze test coverage," or "explain this error message." Agents discover these prompts automatically and can invoke them with context-specific arguments.
4. Forwards (MCP Bridges)
Forwards let Wanaku aggregate multiple MCP servers. Instead of connecting your AI agent to five different MCP endpoints, you connect it to Wanaku, and Wanaku forwards requests to the right upstream server.
When you add a forward, all tools, resources, and prompts from the external MCP server appear in Wanaku's catalog alongside local ones. The agent sees a single, unified view.
Add a Forward
Connect an external MCP server:
wanaku forwards add \
--service="http://another-mcp-server:8080/mcp/sse" \
--name my-external-serverReplace http://another-mcp-server:8080/mcp/sse with the actual URL of the external MCP server. The --name flag gives it a recognizable label.
After adding the forward, any tools or resources exposed by that server become available to agents connected to Wanaku.
List Forwards
See all registered forward connections:
wanaku forwards listOutput:
name service
my-external-server http://another-mcp-server:8080/mcp/sseRemove a Forward
When you no longer need the external server:
wanaku forwards remove --name my-external-serverTools and resources from that server are removed from the catalog immediately.
NOTE
Forwards are powerful when you have multiple teams or services exposing MCP-compatible capabilities. Instead of managing N different MCP connections in your agent config, you manage one connection to Wanaku, and Wanaku handles the rest.
What You Have Learned
You now know how to:
- Add, list, inspect, and remove tools — both manually and from OpenAPI specs
- Expose files and data as resources for AI agents to read
- Create reusable prompts with typed arguments
- Aggregate external MCP servers using forwards
These four primitives — tools, resources, prompts, forwards — are the building blocks of Wanaku. Mastering them means you can quickly assemble a rich capability catalog for any AI agent.
What's Next?
Now that you can manage Wanaku's core primitives, it is time to learn about capabilities:
- Introduction to Capabilities (demo 2.01)
If you find a bug, please report it. To get in touch with the community, visit the Wanaku project.