createPrompt and usePrompt are the pair that carries the product — a prompt is stored under an id, and typing that id as a tag pulls it back with its {{variable}} placeholders intact for the assistant to fill. searchPrompts exists because tags are worth having when you can find them again, and it returns content next to the IDs so a fuzzy match is enough to recognise the right one. Where the library lives is your choice through PROMPT_STORAGE_PATH.
A prompt library the assistant reads from, storing named prompts with double-curly-brace template variables and fetching one by id when the user's message carries its tag.
- createPrompt stores contents under an id, with template variables wrapped in double curly braces, as in "Hello, {{name}}!".
- usePrompt fetches the prompt whose id matches a tag in the user's message — ">> new-journal-entry" fetches the prompt with the ID "new-journal-entry" — and the assistant then follows its instructions.
- searchPrompts runs a fuzzy text search across the library and returns matching prompt IDs together with their content, bounded by limit, so a prompt can be found without knowing its exact tag.
- listPrompts returns every prompt ID and its content.
A directory to store prompts in, given as PROMPT_STORAGE_PATH.
One command — npx -y mcp-teleprompter
