Skip to main content
Glama

MCP Prompts Server

index.htmlโ€ข29.6 kB
<!doctype html> <html class="default" lang="en" data-base="./"> <head> <meta charset="utf-8" /> <meta http-equiv="x-ua-compatible" content="IE=edge" /> <title>@sparesparrow/mcp-prompts</title> <meta name="description" content="Documentation for @sparesparrow/mcp-prompts" /> <meta name="viewport" content="width=device-width, initial-scale=1" /> <link rel="stylesheet" href="assets/style.css" /> <link rel="stylesheet" href="assets/highlight.css" /> <script defer src="assets/main.js"></script> <script async src="assets/icons.js" id="tsd-icons-script"></script> <script async src="assets/search.js" id="tsd-search-script"></script> <script async src="assets/navigation.js" id="tsd-nav-script"></script> </head> <body> <script> document.documentElement.dataset.theme = localStorage.getItem('tsd-theme') || 'os'; document.body.style.display = 'none'; setTimeout( () => (window.app ? app.showPage() : document.body.style.removeProperty('display')), 500, ); </script> <header class="tsd-page-toolbar"> <div class="tsd-toolbar-contents container"> <a href="index.html" class="title">@sparesparrow/mcp-prompts</a> <div id="tsd-toolbar-links"></div> <button id="tsd-search-trigger" class="tsd-widget" aria-label="Search"> <svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"> <use href="assets/icons.svg#icon-search"></use> </svg> </button> <dialog id="tsd-search" aria-label="Search"> <input role="combobox" id="tsd-search-input" aria-controls="tsd-search-results" aria-autocomplete="list" aria-expanded="true" autocapitalize="off" autocomplete="off" placeholder="Search the docs" maxlength="100" /> <ul role="listbox" id="tsd-search-results"></ul> <div id="tsd-search-status" aria-live="polite" aria-atomic="true"> <div>Preparing search index...</div> </div> </dialog> <a href="#" class="tsd-widget menu" id="tsd-toolbar-menu-trigger" data-toggle="menu" aria-label="Menu" ><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"> <use href="assets/icons.svg#icon-menu"></use></svg ></a> </div> </header> <div class="container container-main"> <div class="col-content"> <div class="tsd-page-title"><h1>@sparesparrow/mcp-prompts</h1></div> <div class="tsd-panel tsd-typography"> <h1 id="mcp-prompts-server-ยท-sparesparrowmcp-prompts" class="tsd-anchor-link"> MCP Prompts Server ยท <code>@sparesparrow/mcp-prompts</code ><a href="#mcp-prompts-server-ยท-sparesparrowmcp-prompts" aria-label="Permalink" class="tsd-anchor-icon" ><svg viewBox="0 0 24 24" aria-hidden="true"> <use href="assets/icons.svg#icon-anchor"></use></svg ></a> </h1> <p> <a href="../../actions" ><img src="https://github.com/sparesparrow/mcp-prompts/actions/workflows/ci.yml/badge.svg" alt="CI" /></a> <a href="https://www.npmjs.com/package/@sparesparrow/mcp-prompts" ><img src="https://img.shields.io/npm/v/@sparesparrow/mcp-prompts" alt="npm" /></a> <a href="https://hub.docker.com/r/sparesparrow/mcp-prompts" ><img src="https://img.shields.io/docker/pulls/sparesparrow/mcp-prompts" alt="Docker Pulls" /></a> <a href="https://opensource.org/licenses/MIT" ><img src="https://img.shields.io/badge/License-MIT-yellow.svg" alt="License: MIT" /></a> <a href="../../projects/1" ><img src="https://img.shields.io/badge/Project-Roadmap-5BC0BE?logo=github" alt="Roadmap" /></a> </p> <p> <strong>MCP Prompts Server</strong> is a robust solution to the problem of prompt fragmentation across development teams. It serves as the single source of truth for all your prompts, templates, and related metadata, enabling effective versioning, testing, and secure sharing within your organization and with external systems. </p> <hr /> <h2 id="table-of-contents" class="tsd-anchor-link"> Table of Contents<a href="#table-of-contents" aria-label="Permalink" class="tsd-anchor-icon" ><svg viewBox="0 0 24 24" aria-hidden="true"> <use href="assets/icons.svg#icon-anchor"></use></svg ></a> </h2> <ul> <li><a href="#why-this-project">Why This Project?</a></li> <li><a href="#key-features">Key Features</a></li> <li><a href="#quick-start">Quick Start</a></li> <li> <a href="#core-concepts-and-data-structure">Core Concepts and Data Structure</a> </li> <li><a href="#architecture-and-roadmap">Architecture and Roadmap</a></li> <li><a href="#contributing-and-community">Contributing and Community</a></li> <li><a href="#license">License</a></li> <li><a href="#support-and-community">Support and Community</a></li> </ul> <hr /> <h2 id="๐ŸŽฏ-why-this-project-the-problem-it-solves" class="tsd-anchor-link"> ๐ŸŽฏ Why This Project? (The Problem It Solves)<a href="#๐ŸŽฏ-why-this-project-the-problem-it-solves" aria-label="Permalink" class="tsd-anchor-icon" ><svg viewBox="0 0 24 24" aria-hidden="true"> <use href="assets/icons.svg#icon-anchor"></use></svg ></a> </h2> <p> Most teams working with AI struggle with chaos: prompts are stored in code, shared documents, or lost in chat histories. This project solves the following problems: </p> <ul> <li> โŒ <strong>No Versioning:</strong> The inability to track changes and revert to previous, functional versions of prompts. </li> <li> โŒ <strong>Difficult Testing:</strong> Complicated A/B testing and evaluation to determine which prompt version performs better. </li> <li> โŒ <strong>Security Risks:</strong> Lack of control over who has access to valuable and sensitive prompts. </li> <li> โŒ <strong>Inefficient Collaboration:</strong> Developers and team leaders lack a central place to share and approve prompts. </li> </ul> <hr /> <h2 id="โœจ-key-features" class="tsd-anchor-link"> โœจ Key Features<a href="#โœจ-key-features" aria-label="Permalink" class="tsd-anchor-icon" ><svg viewBox="0 0 24 24" aria-hidden="true"> <use href="assets/icons.svg#icon-anchor"></use></svg ></a> </h2> <ul> <li> <strong>๐Ÿ—„๏ธ Flexible Storage:</strong> Native support for files, PostgreSQL, and in-memory. Can be extended for Elasticsearch for full-text search. </li> <li> <strong>๐Ÿท๏ธ Categorization and Tagging:</strong> Organize your prompts into hierarchical categories and assign tags for easy searching. </li> <li> <strong>๐Ÿ”„ Versioning:</strong> Track the history of each prompt, similar to Git. </li> <li> <strong>๐Ÿ”’ Access Control (RBAC):</strong> Detailed permission management for users and roles (admin, editor, viewer). </li> <li> <strong>๐Ÿค– MCP Ecosystem Integration:</strong> Seamless communication with other MCP servers like @filesystem and @github. </li> <li> <strong>๐Ÿ“„ Automatic Documentation:</strong> Generate OpenAPI specifications directly from the code. </li> <li> <strong>๐Ÿณ Docker and CLI Support:</strong> Easy deployment with Docker containers and command-line tools for batch operations. </li> <li> <strong>๐Ÿ“Š Auditing and Metrics:</strong> Track all changes and analyze the usage of individual prompts. </li> </ul> <hr /> <h2 id="๐Ÿš€-quick-start" class="tsd-anchor-link"> ๐Ÿš€ Quick Start<a href="#๐Ÿš€-quick-start" aria-label="Permalink" class="tsd-anchor-icon" ><svg viewBox="0 0 24 24" aria-hidden="true"> <use href="assets/icons.svg#icon-anchor"></use></svg ></a> </h2> <blockquote> <p> โš ๏ธ <strong>Requirements:</strong> Node.js 20+ and npm 10+ (due to npm workspaces support). </p> </blockquote> <h3 id="1-run-with-npx" class="tsd-anchor-link"> 1. Run with NPX<a href="#1-run-with-npx" aria-label="Permalink" class="tsd-anchor-icon" ><svg viewBox="0 0 24 24" aria-hidden="true"> <use href="assets/icons.svg#icon-anchor"></use></svg ></a> </h3> <p>Run the server without a permanent installation with a single command:</p> <pre><code class="bash"><span class="hl-0">npx</span><span class="hl-1"> </span><span class="hl-2">-y</span><span class="hl-1"> </span><span class="hl-3">@sparesparrow/mcp-prompts</span> </code><button type="button">Copy</button></pre> <h3 id="2-run-with-docker" class="tsd-anchor-link"> 2. Run with Docker<a href="#2-run-with-docker" aria-label="Permalink" class="tsd-anchor-icon" ><svg viewBox="0 0 24 24" aria-hidden="true"> <use href="assets/icons.svg#icon-anchor"></use></svg ></a> </h3> <p>For production deployment with persistent storage:</p> <p><strong>File storage:</strong></p> <pre><code class="bash"><span class="hl-0">docker</span><span class="hl-1"> </span><span class="hl-3">run</span><span class="hl-1"> </span><span class="hl-2">-d</span><span class="hl-1"> </span><span class="hl-2">--name</span><span class="hl-1"> </span><span class="hl-3">mcp-server</span><span class="hl-1"> </span><span class="hl-4">\</span><br/><span class="hl-1"> </span><span class="hl-2">-p</span><span class="hl-1"> </span><span class="hl-3">3003:3003</span><span class="hl-1"> </span><span class="hl-4">\</span><br/><span class="hl-1"> </span><span class="hl-2">-v</span><span class="hl-1"> $(</span><span class="hl-0">pwd</span><span class="hl-1">)</span><span class="hl-3">/data:/app/data</span><span class="hl-1"> </span><span class="hl-4">\</span><br/><span class="hl-1"> </span><span class="hl-3">sparesparrow/mcp-prompts:latest</span> </code><button type="button">Copy</button></pre> <p><strong>Postgres storage:</strong></p> <pre><code class="bash"><span class="hl-0">docker</span><span class="hl-1"> </span><span class="hl-3">run</span><span class="hl-1"> </span><span class="hl-2">-d</span><span class="hl-1"> </span><span class="hl-2">--name</span><span class="hl-1"> </span><span class="hl-3">mcp-server</span><span class="hl-1"> </span><span class="hl-4">\</span><br/><span class="hl-1"> </span><span class="hl-2">-p</span><span class="hl-1"> </span><span class="hl-3">3003:3003</span><span class="hl-1"> </span><span class="hl-4">\</span><br/><span class="hl-1"> </span><span class="hl-2">-v</span><span class="hl-1"> $(</span><span class="hl-0">pwd</span><span class="hl-1">)</span><span class="hl-3">/data:/app/data</span><span class="hl-1"> </span><span class="hl-4">\</span><br/><span class="hl-1"> </span><span class="hl-2">-e</span><span class="hl-1"> </span><span class="hl-3">&quot;STORAGE_TYPE=postgres&quot;</span><span class="hl-1"> </span><span class="hl-4">\</span><br/><span class="hl-1"> </span><span class="hl-2">-e</span><span class="hl-1"> </span><span class="hl-3">&quot;POSTGRES_URL=your_connection_string&quot;</span><span class="hl-1"> </span><span class="hl-4">\</span><br/><span class="hl-1"> </span><span class="hl-3">sparesparrow/mcp-prompts:latest</span> </code><button type="button">Copy</button></pre> <h3 id="3-verify-its-running" class="tsd-anchor-link"> 3. Verify It's Running<a href="#3-verify-its-running" aria-label="Permalink" class="tsd-anchor-icon" ><svg viewBox="0 0 24 24" aria-hidden="true"> <use href="assets/icons.svg#icon-anchor"></use></svg ></a> </h3> <p>Check that the server is running and accessible:</p> <pre><code class="bash"><span class="hl-0">curl</span><span class="hl-1"> </span><span class="hl-3">http://localhost:3003/health</span> </code><button type="button">Copy</button></pre> <p>Expected response:</p> <pre><code class="json"><span class="hl-1">{</span><br/><span class="hl-1"> </span><span class="hl-5">&quot;status&quot;</span><span class="hl-1">: </span><span class="hl-3">&quot;ok&quot;</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">&quot;version&quot;</span><span class="hl-1">: </span><span class="hl-3">&quot;1.4.0&quot;</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-5">&quot;storage&quot;</span><span class="hl-1">: </span><span class="hl-3">&quot;postgres&quot;</span><br/><span class="hl-1">}</span> </code><button type="button">Copy</button></pre> <hr /> <h2 id="๐Ÿ›๏ธ-core-concepts-and-data-structure" class="tsd-anchor-link"> ๐Ÿ›๏ธ Core Concepts and Data Structure<a href="#๐Ÿ›๏ธ-core-concepts-and-data-structure" aria-label="Permalink" class="tsd-anchor-icon" ><svg viewBox="0 0 24 24" aria-hidden="true"> <use href="assets/icons.svg#icon-anchor"></use></svg ></a> </h2> <table> <thead> <tr> <th>Entity</th> <th>Attributes</th> <th>Description</th> </tr> </thead> <tbody> <tr> <td>Prompt</td> <td>name, content, tags, version, metadata</td> <td>The basic unit containing the template text.</td> </tr> <tr> <td>Category</td> <td>name, description, parent_category</td> <td>Used for hierarchical organization of prompts.</td> </tr> <tr> <td>Template</td> <td>variables, validation_rules</td> <td>A special type of prompt with dynamic parts.</td> </tr> <tr> <td>User</td> <td>username, role</td> <td>An account with assigned permissions.</td> </tr> </tbody> </table> <hr /> <h2 id="๐Ÿ—๏ธ-architecture-and-roadmap" class="tsd-anchor-link"> ๐Ÿ—๏ธ Architecture and Roadmap<a href="#๐Ÿ—๏ธ-architecture-and-roadmap" aria-label="Permalink" class="tsd-anchor-icon" ><svg viewBox="0 0 24 24" aria-hidden="true"> <use href="assets/icons.svg#icon-anchor"></use></svg ></a> </h2> <p> The project is designed as a modern monorepo with separate packages, which facilitates maintenance and scaling. </p> <table> <thead> <tr> <th>Component</th> <th>Description</th> <th>Technology</th> </tr> </thead> <tbody> <tr> <td>core</td> <td>Main application logic, API, and storage mgmt.</td> <td>Node.js, Express, TypeScript</td> </tr> <tr> <td>catalog</td> <td>A distributable package with default prompts.</td> <td>NPM</td> </tr> <tr> <td>contracts</td> <td>Shared TypeScript types and OpenAPI specs.</td> <td>OpenAPI, JSON Schema</td> </tr> </tbody> </table> <p> ๐Ÿ“Š <strong ><a href="../../projects/1" >Track our detailed progress on the GitHub Project Board</a ></strong > </p> <hr /> <h2 id="๐Ÿค-contributing-and-community" class="tsd-anchor-link"> ๐Ÿค Contributing and Community<a href="#๐Ÿค-contributing-and-community" aria-label="Permalink" class="tsd-anchor-icon" ><svg viewBox="0 0 24 24" aria-hidden="true"> <use href="assets/icons.svg#icon-anchor"></use></svg ></a> </h2> <p> We welcome community contributions! Whether it's code, documentation, a bug report, or a new idea, your help is appreciated. </p> <p> Please read our <strong><a href="media/CONTRIBUTING.md">Contributor Guide</a></strong> to find everything you need. </p> <h3 id="โœจ-our-contributors" class="tsd-anchor-link"> โœจ Our Contributors<a href="#โœจ-our-contributors" aria-label="Permalink" class="tsd-anchor-icon" ><svg viewBox="0 0 24 24" aria-hidden="true"> <use href="assets/icons.svg#icon-anchor"></use></svg ></a> </h3> <p>Thank you to all the wonderful people who have contributed to this project!</p> <p> <a href="https://github.com/sparesparrow/mcp-prompts/graphs/contributors" ><img src="https://contrib.rocks/image?repo=sparesparrow/mcp-prompts" alt="Contributors" /></a> </p> <hr /> <h2 id="๐Ÿ“„-license" class="tsd-anchor-link"> ๐Ÿ“„ License<a href="#๐Ÿ“„-license" aria-label="Permalink" class="tsd-anchor-icon" ><svg viewBox="0 0 24 24" aria-hidden="true"> <use href="assets/icons.svg#icon-anchor"></use></svg ></a> </h2> <p>This project is licensed under the <a href="media/LICENSE">MIT License</a>.</p> <hr /> <h2 id="๐Ÿ“ž-support-and-community" class="tsd-anchor-link"> ๐Ÿ“ž Support and Community<a href="#๐Ÿ“ž-support-and-community" aria-label="Permalink" class="tsd-anchor-icon" ><svg viewBox="0 0 24 24" aria-hidden="true"> <use href="assets/icons.svg#icon-anchor"></use></svg ></a> </h2> <ul> <li>๐Ÿ› <strong>Report a Bug:</strong> <a href="../../issues">GitHub Issues</a></li> <li> ๐Ÿ’ฌ <strong>Join the Discussion:</strong> <a href="../../discussions">GitHub Discussions</a> </li> <li> ๐Ÿข <strong>Commercial Support &amp; Custom Solutions:</strong> <a href="mailto:support@sparrowai.tech">Sparrow AI &amp; Tech</a> </li> </ul> <div align="center"> <sub >Built with โค๏ธ by <a href="https://github.com/sparesparrow">@sparesparrow</a> and the <a href="https://github.com/sparesparrow/mcp-prompts/graphs/contributors" >community</a ></sub > </div> </div> </div> <div class="col-sidebar"> <div class="page-menu"> <div class="tsd-navigation settings"> <details class="tsd-accordion"> <summary class="tsd-accordion-summary"> <svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"> <use href="assets/icons.svg#icon-chevronDown"></use> </svg> <h3>Settings</h3> </summary> <div class="tsd-accordion-details"> <div class="tsd-filter-visibility"> <span class="settings-label">Member Visibility</span> <ul id="tsd-filter-options"> <li class="tsd-filter-item"> <label class="tsd-filter-input" ><input type="checkbox" id="tsd-filter-protected" name="protected" /><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true" > <rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none" ></rect> <path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none" ></path></svg ><span>Protected</span></label > </li> <li class="tsd-filter-item"> <label class="tsd-filter-input" ><input type="checkbox" id="tsd-filter-inherited" name="inherited" checked /><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"> <rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none" ></rect> <path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none" ></path></svg ><span>Inherited</span></label > </li> <li class="tsd-filter-item"> <label class="tsd-filter-input" ><input type="checkbox" id="tsd-filter-external" name="external" /><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true" > <rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none" ></rect> <path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none" ></path></svg ><span>External</span></label > </li> </ul> </div> <div class="tsd-theme-toggle"> <label class="settings-label" for="tsd-theme">Theme</label ><select id="tsd-theme"> <option value="os">OS</option> <option value="light">Light</option> <option value="dark">Dark</option> </select> </div> </div> </details> </div> <details open class="tsd-accordion tsd-page-navigation"> <summary class="tsd-accordion-summary"> <svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"> <use href="assets/icons.svg#icon-chevronDown"></use> </svg> <h3>On This Page</h3> </summary> <div class="tsd-accordion-details"> <a href="#mcp-prompts-server-ยท-sparesparrowmcp-prompts" ><span>MCP <wbr />Prompts <wbr />Server ยท @sparesparrow/mcp-<wbr />prompts</span></a > <ul> <li> <a href="#table-of-contents" ><span>Table of <wbr />Contents</span></a > </li> <li> <a href="#๐ŸŽฏ-why-this-project-the-problem-it-solves" ><span >๐ŸŽฏ <wbr />Why <wbr />This <wbr />Project? (<wbr />The <wbr />Problem <wbr />It <wbr />Solves)</span ></a > </li> <li> <a href="#โœจ-key-features" ><span>โœจ <wbr />Key <wbr />Features</span></a > </li> <li> <a href="#๐Ÿš€-quick-start" ><span>๐Ÿš€ <wbr />Quick <wbr />Start</span></a > </li> <li> <ul> <li> <a href="#1-run-with-npx" ><span>1. <wbr />Run with <wbr />NPX</span></a > </li> <li> <a href="#2-run-with-docker" ><span>2. <wbr />Run with <wbr />Docker</span></a > </li> <li> <a href="#3-verify-its-running" ><span>3. <wbr />Verify <wbr />It&#39;s <wbr />Running</span></a > </li> </ul> </li> <li> <a href="#๐Ÿ›๏ธ-core-concepts-and-data-structure" ><span>๐Ÿ›๏ธ <wbr />Core <wbr />Concepts and <wbr />Data <wbr />Structure</span></a > </li> <li> <a href="#๐Ÿ—๏ธ-architecture-and-roadmap" ><span>๐Ÿ—๏ธ <wbr />Architecture and <wbr />Roadmap</span></a > </li> <li> <a href="#๐Ÿค-contributing-and-community" ><span>๐Ÿค <wbr />Contributing and <wbr />Community</span></a > </li> <li> <ul> <li> <a href="#โœจ-our-contributors" ><span>โœจ <wbr />Our <wbr />Contributors</span></a > </li> </ul> </li> <li> <a href="#๐Ÿ“„-license" ><span>๐Ÿ“„ <wbr />License</span></a > </li> <li> <a href="#๐Ÿ“ž-support-and-community" ><span>๐Ÿ“ž <wbr />Support and <wbr />Community</span></a > </li> </ul> </div> </details> </div> <div class="site-menu"> <nav class="tsd-navigation"> <a href="modules.html">@sparesparrow/mcp-prompts</a> <ul class="tsd-small-nested-navigation" id="tsd-nav-container"> <li>Loading...</li> </ul> </nav> </div> </div> </div> <footer> <p class="tsd-generator"> Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a> </p> </footer> <div class="overlay"></div> </body> </html>

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/sparesparrow/mcp-prompts'

If you have feedback or need assistance with the MCP directory API, please join our Discord server