MCP 中的提示定義了一組可供客戶端使用的使用者與助手訊息。這些提示應該是高品質、經過充分測試,並與 MCP 伺服器的整體目的相關。

實作 List Prompts
第一步是在您的 MCP 客戶端中實作 list_prompts 方法。此方法會從伺服器擷取所有可用的提示:
python
async def list_prompts(self) -> list[types.Prompt]:
result = await self.session().list_prompts()
return result.prompts這個簡單的實作會呼叫 session 的 list_prompts 方法,並從結果中回傳提示陣列。
取得個別提示
get_prompt 方法會擷取特定提示,並將引數插入其中。當您請求一個提示時,您會提供引數,這些引數會以關鍵字引數的形式傳遞給提示函式:
python
async def get_prompt(self, prompt_name, args: dict[str, str]):
result = await self.session().get_prompt(prompt_name, args)
return result.messages此方法會從結果中回傳訊息,這些訊息構成一段可以直接餵給 Claude 的對話。
提示引數的運作方式
當您在伺服器端定義一個提示函式時,它可以接受參數。例如,一個文件格式化提示可能會預期一個 doc_id 參數:
python
def format_document(doc_id: str):
# doc_id 會被插入到提示中當客戶端呼叫 get_prompt 時,引數字典應包含預期的鍵。MCP 伺服器會將這些引數以關鍵字引數的形式傳遞給提示函式,從而允許將動態內容插入提示範本中。
在 CLI 中測試提示
實作完成後,您可以透過命令列介面測試提示。當您輸入斜線時,可用的提示會以命令的形式出現。選擇一個提示可能會提示您從可用選項中選擇(例如文件 ID),然後完整的提示會被傳送給 Claude。

工作流程如下:
- 使用者選擇一個提示(例如「format」)
- 系統提示輸入所需的引數(例如要格式化哪個文件)
- 提示會連同插入的值一起傳送給 Claude
- Claude 接著可以使用工具來擷取額外資料並完成任務

提示最佳實踐
在為您的 MCP 伺服器建立提示時:
- 使其與您伺服器的目的相關
- 在部署前徹底測試
- 使用清晰、具體的指示
- 設計它們以與您可用的工具良好配合
- 考慮使用者需要提供哪些引數
提示在預先定義的功能與動態的使用者需求之間搭起橋樑,為 Claude 提供處理複雜任務的結構化起點,同時透過參數化維持靈活性。