Mentioned as a use case for creating prompt templates for JIRA ticket formatting with team-specific requirements, standard fields, priority levels, and acceptance criteria templates.
Mentioned as a use case for creating prompt templates for Linear ticket formatting with team-specific requirements, standard fields, priority levels, and acceptance criteria templates.
Mentioned as a use case for creating prompt templates to help discover music on Spotify with specific preferences, constraints, and workflow requirements for adding songs to queue and managing playlists.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Teleprompterspotify-discover mood: focused activity: coding genres: lofi, ambient"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Teleprompter
An MCP server that manages and exposes tools to allow prompt re-use with LLMs.
Table of Contents
Features
Prompt Storage & Reuse: Store, search, and retrieve prompt templates for LLMs.
MCP Server: Exposes prompt tools via the Model Context Protocol (MCP).
Prompt Variables: Supports template variables (e.g.,
{{name}}) for dynamic prompt generation.Search: Fast full-text search over stored prompts using MiniSearch.
TypeScript: Modern, type-safe codebase.
Extensive Testing: Includes unit and integration tests with Vitest.
MCP Configuration
To use Teleprompter with your LLM client, add this configuration:
Note: Replace /path/to/your/prompts-directory with the absolute path where you want prompts stored.
Usage Examples
Once configured, you can use Teleprompter with your LLM by using prompt tags in your conversations. Here's a detailed example that shows how it solves the problem of repeating complex instructions:
🎵 Music Discovery on Spotify
The Problem: Every time you want music recommendations, you have to remind your LLM of all your preferences and constraints:
"Don't suggest songs I already have in my playlists"
"Avoid explicit lyrics"
"Add songs to my queue for review, not directly to playlists"
"Focus on discovering new artists, not just popular hits"
"Consider my current activity and mood"
"Provide brief explanations for why each song fits"
The Solution: Create a prompt that captures all these instructions once.
Creating the prompt: Ask your LLM: "Create a prompt called 'spotify-discover' that helps me find new music with all my specific preferences and workflow requirements."
This creates a comprehensive template like:
Using it:
Now you just fill in your current mood and activity, and get perfectly tailored recommendations that follow all your rules—no need to repeat your constraints every time.
🔄 Other Common Use Cases
📋 Work Ticket Management
Create prompts for JIRA/Linear ticket formatting with your team's specific requirements
Include standard fields, priority levels, acceptance criteria templates
Avoid repeating your company's ticket standards every time
📧 Email Templates
Customer support responses with your company's tone and required disclaimers
Follow-up sequences that match your communication style
Automated inclusion of signatures, links, and standard information
📝 Code Review Guidelines
Technical review checklists with your team's specific standards
Security considerations and performance criteria
Documentation requirements and testing expectations
The common thread: stop repeating yourself. If you find yourself giving the same detailed instructions to your LLM repeatedly, create a prompt for it.
🔍 Discovering Existing Prompts
You can search your prompt library:
Or list all available prompts:
✏️ Manual Editing
Prompts are stored as simple markdown files in your PROMPT_STORAGE_PATH directory. You can also create and edit them directly with your favorite text editor:
Each prompt is saved as
{id}.mdin your prompts directoryUse
{{variable_name}}syntax for template variablesStandard markdown formatting is supported
File changes are automatically picked up by the server
💡 Best Practices
Use descriptive IDs: Choose prompt IDs that clearly indicate their purpose (e.g.,
meeting-notes,code-review-checklist)Include helpful variables: Use
{{variable_name}}for dynamic content that changes each time you use the promptOrganize by category: Consider using prefixes like
task-,content-,analysis-to group related prompts
Testing
Run all tests:
Run tests with coverage:
Tests are written with Vitest. Coverage reports are generated in the coverage/ directory.
Contributing
Contributions are welcome! Please:
Follow the existing code style (see
.prettierrc.jsonand.eslintrc.mjs).Add tests for new features or bug fixes.
License
This project is licensed under the MIT License. See LICENSE for details.
Acknowledgements
Made with ❤️ by John Anderson