-
Notifications
You must be signed in to change notification settings - Fork 1
Tools
Every tool this server has is a mirror. The catalogue is MCP resources and MCP prompts; these four exist for the clients that implement neither, to which a resource-only server looks empty. n8n's MCP Client Tool is the one that made them necessary.
Each pair is revealed separately, because a client may have one feature and not the other. A client says so on the MCP URL, or in a header that beats the URL:
http://mcp-kb.flow.svc.cluster.local:8000/mcp?resources=off&prompts=off
| Tool | Mirrors | Shown by | or by header |
|---|---|---|---|
list_resources |
Resource mirror | ?resources=off |
X-MCP-Resources: off |
read_resource |
Resource mirror | ?resources=off |
X-MCP-Resources: off |
list_prompts |
Prompt mirror | ?prompts=off |
X-MCP-Prompts: off |
get_prompt |
Prompt mirror | ?prompts=off |
X-MCP-Prompts: off |
The vocabulary is deliberately the protocol's own — list addresses, read an
address — so an agent that can drive MCP resources can drive these with nothing
new to learn. See Installing for where each client wants that URL,
and Skills for the skill:// grammar read_resource takes.
List the skill resources available, as uri/name/description.
Start here. The listing is indexes, not skills: a skill://<library>/_index.md per library, a skill://<library>/<folder>/_index.md per top-level folder, and a skill://<library>/_files.md for a library that ships files outside its skills. Read an index for the URIs inside it, then read a skill's SKILL.md URI for its instructions. What is listed is what this connection's scope admits: ?library=, ?categories= and ?tags= on the MCP URL narrow it, and that ceiling is not yours to widen.
This returns exactly what an MCP resources/list would, so a uri from here can be read with read_resource or with your own resource reader.
Listed only for a client that sent ?resources=off or X-MCP-Resources: off.
It is callable either way — hiding a tool from a listing is a presentation
choice, not a refusal to run it.
Takes no arguments.
| Annotation | Value |
|---|---|
title |
List skill resources |
read_only_hint |
true |
destructive_hint |
false |
idempotent_hint |
true |
open_world_hint |
false |
Read one skill:// URI: an index, a skill's file, or a library's file.
Listed only for a client that sent ?resources=off or X-MCP-Resources: off.
It is callable either way — hiding a tool from a listing is a presentation
choice, not a refusal to run it.
| Argument | Type | Required | Default | Notes |
|---|---|---|---|---|
uri |
string | yes | — | A URI from list_resources or an index, or one built from this grammar, where <folder> may be empty or several segments: skill://<library>/_index.md or skill://<library>/<folder>/_index.md for an index of skills, skill://<library>/<folder>/<skill>/SKILL.md for a skill's instructions, skill://<library>/<folder>/<skill>/_manifest for what else it ships, and skill://<library>/<folder>/<skill>/<path> for one of those files, skill://<library>/_files.md for the files a library ships outside its skills, and skill://<library>/<path> for one of those. |
| Annotation | Value |
|---|---|
title |
Read a skill resource |
read_only_hint |
true |
destructive_hint |
false |
idempotent_hint |
true |
open_world_hint |
false |
List all available prompts.
Returns JSON with prompt metadata including name, description, and optional arguments.
Listed only for a client that sent ?prompts=off or X-MCP-Prompts: off.
It is callable either way — hiding a tool from a listing is a presentation
choice, not a refusal to run it.
Takes no arguments.
| Annotation | Value |
|---|---|
title |
List prompts |
read_only_hint |
true |
destructive_hint |
false |
idempotent_hint |
true |
open_world_hint |
false |
Get a prompt by name with optional arguments.
Returns the rendered prompt as JSON with a messages array. Arguments should be provided as a dict mapping argument names to values.
Listed only for a client that sent ?prompts=off or X-MCP-Prompts: off.
It is callable either way — hiding a tool from a listing is a presentation
choice, not a refusal to run it.
| Argument | Type | Required | Default | Notes |
|---|---|---|---|---|
name |
string | yes | — | The name of the prompt to get |
arguments |
object | no | — | Optional arguments for the prompt |
| Annotation | Value |
|---|---|
title |
Get a prompt |
read_only_hint |
true |
destructive_hint |
false |
idempotent_hint |
true |
open_world_hint |
false |
Home · Installing · Deployment · Scoping
Configuration, Tools and Endpoints are generated by scripts/generate_wiki.py from the config models, a live server's tool list and the OpenAPI document — so they describe the server that shipped, not the one someone remembered. Prose for a generated page goes in wiki/notes/<page>.notes.md.
mcp-kb · MIT
Getting started
The config file
What clients get
Reference