今天就來進入實戰環節 —— HackMD MCP Server 的整合實作!
接著我們正文開始(。・∀・)ノ
首先要先確認本地端環境有安裝好 Node.js 與 npm:
node --version
npm --version
接著把 hackmd-mcp 專案 clone 下來並安裝依賴:
git clone <the web URL>
cd hackmd-mcp
# 安裝 pnpm
npm install -g pnpm
# 安裝依賴
pnpm install
# 建置 MCP Server
pnpm run build
到 HackMD API 設定 申請一個 API Token,然後設定環境變數:
# HackMD API Token
HACKMD_API_TOKEN="your_hackmd_api_token_here"
HACKMD_API_URL="https://api.hackmd.io/v1"
建立一個 hackMD_agent
,並透過 MCPToolset 來呼叫剛剛建好的 hackmd-mcp:
import os
from dotenv import load_dotenv
from google.adk.agents import Agent
from google.adk.tools.mcp_tool.mcp_toolset import MCPToolset, StdioServerParameters, StdioConnectionParams
import tools.hackMD.hackMD_prompt as prompt
load_dotenv()
hackMD_agent = Agent(
model="gemini-2.0-flash",
name="hackMD_agent",
description=prompt.HACKMD_AGENT_DESCRIPTION,
instruction=prompt.HACKMD_AGENT_INSTRUCTION,
tools=[MCPToolset(
connection_params=StdioConnectionParams(
server_params=StdioServerParameters(
command='node',
args=['dist/index.js'],
cwd="D:\\VsCode\\multi_tool_agent\\hackmd-mcp",
env={
"HACKMD_API_TOKEN": os.getenv("HACKMD_API_TOKEN"),
"HACKMD_API_URL": os.getenv("HACKMD_API_URL")
}
)
)
)]
)
注意這裡的
cwd
必須改成你自己 clone 下來的 hackmd-mcp 位置。
root_agent 只要在 sub_agent 寫入 hackMD_agent 就好~(記得匯入喔!)
root_agent prompt 依據自己要求撰寫就好,我hackMD 一些部分:
### hackMD_agent - HackMD 筆記管理專家 Notes
**服務範圍:**
- HackMD 筆記建立、編輯、刪除
- 筆記搜尋和管理
- 團隊筆記協作
- 使用者資訊和歷史記錄查詢
啟動方式很簡單:
uvicorn main:app --host 0.0.0.0 --port <port>
python gradio_app.py
成功運行後,可以從 HackMD API 設定頁面確認使用量:
在 VSCode 終端機裡可以看到相關的 MCP 訊息,例如:
auth_config or auth_config.auth_scheme is missing. Will skip authentication.Using FunctionTool instead if authentication is not required.
這個警告不會影響功能,只是表示 MCP 工具使用了 FunctionTool 模式,HackMD 功能依然完全正常。
Warning: there are non-text parts in the response: ['function_call'], returning concatenated text result from text parts.
這表示 AI 模型的回應包含了 function_call
和 text
兩個部分,系統正常調用了 MCP 工具。
透過這次的實作,我們成功把 HackMD MCP Server 整合進 Agent 系統裡了!
這樣 AI 助手就不只能聊天,還能幫我們建立筆記、搜尋文件、管理內容,變成一個真正實用的筆記管理幫手。
是不是覺得自己的 Agent 系統又進化了呢?
透過 MCP 的標準化介面,我們能夠很輕鬆地把各種工具「插」進 Agent 裡,就像搭積木一樣~
下一篇我們會繼續探索更多有趣的 MCP Server,讓我們的 AI 助手變得更加全能!
我們下一篇見(ノ>ω<)ノ