🚀 Counsel MCP 服務器
Counsel MCP 服務器是一個開源的 模型上下文協議 (MCP) 服務器,它能將 AI 代理連接到 Counsel API,以進行戰略推理和多視角分析。
✨ 主要特性
- 託管與自託管模式:可立即使用託管服務器,也能自行運行實例。
- 戰略推理:訪問 Counsel 的辯論和多視角推理引擎。
- 顧問會話:運行交互式信息收集和配置文件調整會話。
- 原生 OAuth 2.0:客戶端自動處理標準 MCP 身份驗證。
- 雙傳輸模式:本地客戶端使用 STDIO,Web 客戶端和共享服務器使用 HTTP。
🚀 快速開始
託管模式
無需安裝,可立即連接到託管的 Counsel MCP 服務器:
http://counsel-mcp.getmason.dev/mcp
對於支持 HTTP 傳輸的 MCP 客戶端,只需添加以下配置:
{
"mcpServers": {
"counsel": {
"url": "http://counsel-mcp.getmason.dev/mcp",
"transport": "http"
}
}
}
OAuth 身份驗證由 MCP 客戶端自動處理。
📦 安裝指南
自託管模式
可在本地運行自己的 Counsel MCP 服務器實例。
前提條件
- 系統已安裝 Node.js 18+。
- 在 counsel.getmason.dev 擁有 Counsel 賬戶。
Claude Desktop
將以下配置添加到 claude_desktop_config.json 文件中:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
```json
{
"mcpServers": {
"counsel": {
"command": "npx",
"args": ["-y", "counsel-mcp-server", "start"]
}
}
}
```
Windows: %APPDATA%\Claude\claude_desktop_config.json
```json
{
"mcpServers": {
"counsel": {
"command": "npx",
"args": ["-y", "counsel-mcp-server", "start"]
}
}
}
```
Claude Code (CLI)
claude mcp add counsel -- npx -y counsel-mcp-server start
或者手動添加到 MCP 設置中:
{
"mcpServers": {
"counsel": {
"command": "npx",
"args": ["-y", "counsel-mcp-server", "start"]
}
}
}
Cursor
將以下配置添加到 Cursor MCP 配置文件(項目或全局設置中的 .cursor/mcp.json):
{
"mcpServers": {
"counsel": {
"command": "npx",
"args": ["-y", "counsel-mcp-server", "start"]
}
}
}
Windsurf
將以下配置添加到 Windsurf MCP 配置文件:
{
"mcpServers": {
"counsel": {
"command": "npx",
"args": ["-y", "counsel-mcp-server", "start"]
}
}
}
VS Code with Copilot
將以下配置添加到 VS Code 設置文件 (settings.json):
{
"mcp.servers": {
"counsel": {
"command": "npx",
"args": ["-y", "counsel-mcp-server", "start"]
}
}
}
其他 MCP 客戶端
服務器支持兩種傳輸模式,可根據客戶端功能選擇:
STDIO 模式(默認)
大多數 MCP 客戶端使用 STDIO 傳輸,配置如下:
{
"mcpServers": {
"counsel": {
"command": "npx",
"args": ["-y", "counsel-mcp-server", "start"],
"env": {
"COUNSEL_API_KEY": "your_api_key_here"
}
}
}
}
HTTP 模式(帶 OAuth)
對於支持帶 OAuth 2.0 的 HTTP 傳輸的客戶端,需單獨運行服務器:
npx -y counsel-mcp-server http --port 3000
此命令將啟動一個 HTTP 服務器,具有以下端點:
- MCP 端點:
http://localhost:3000/mcp
- OAuth 發現:
http://localhost:3000/.well-known/oauth-authorization-server
然後配置客戶端進行連接:
{
"mcpServers": {
"counsel": {
"url": "http://localhost:3000/mcp",
"transport": "http"
}
}
}
HTTP 模式使用 OAuth 2.0 進行自動令牌管理,無需 API 密鑰。
傳輸模式比較
| 特性 |
STDIO 模式 |
HTTP 模式 |
| 命令 |
npx -y counsel-mcp-server start |
npx -y counsel-mcp-server http |
| 身份驗證 |
通過環境變量設置 API 密鑰 |
OAuth 2.0(自動) |
| 設置 |
單一配置 |
運行服務器並配置客戶端 |
| 適用場景 |
Claude Desktop、Cursor、VS Code |
Web 客戶端、共享服務器 |
🔐 身份驗證
服務器支持兩種身份驗證模式:
STDIO 模式(默認)
從 counsel.getmason.dev 獲取 API 密鑰,並設置 COUNSEL_API_KEY 環境變量:
export COUNSEL_API_KEY=your_api_key_here
或者將其添加到 MCP 客戶端配置中:
{
"mcpServers": {
"counsel": {
"command": "npx",
"args": ["-y", "counsel-mcp-server", "start"],
"env": {
"COUNSEL_API_KEY": "your_api_key_here"
}
}
}
}
HTTP 模式(OAuth 2.0)
當以 HTTP 模式運行時(npx -y counsel-mcp-server http),身份驗證通過 OAuth 2.0 自動處理:
- 首次使用 Counsel 工具時,MCP 客戶端將提示進行身份驗證。
- 會被重定向到使用 Counsel 賬戶登錄。
- 授權後,令牌將自動管理。
在 HTTP 模式下 無需手動設置 API 密鑰,MCP 客戶端會處理整個 OAuth 流程。
OAuth 端點(HTTP 模式)
服務器提供標準的 OAuth 2.0 端點:
| 端點 |
描述 |
/.well-known/oauth-authorization-server |
OAuth 元數據發現 |
/authorize |
授權端點 |
/token |
令牌交換端點 |
/register |
動態客戶端註冊 |
🛠️ 可用工具
start_consultation
啟動新的戰略諮詢(辯論),以多視角分析複雜問題。
| 參數 |
類型 |
是否必需 |
描述 |
question |
字符串 |
是 |
要分析的核心問題 |
context |
字符串 |
否 |
關於情況的額外上下文 |
mode |
枚舉 |
否 |
分析深度:quick、standard(默認)、deep |
stakeholders |
字符串數組 |
否 |
要考慮的關鍵利益相關者 |
| 示例: |
|
|
|
針對“我們是否應該在 2025 年將單體應用遷移到微服務?”啟動諮詢,提供關於我們 50 人工程團隊的上下文,並將模式設置為深度分析
get_consultation_status
檢查正在進行的諮詢的狀態。
| 參數 |
類型 |
是否必需 |
描述 |
debate_id |
字符串 |
是 |
諮詢的 ID |
get_consultation_report
從已完成的諮詢中獲取最終綜合報告。
| 參數 |
類型 |
是否必需 |
描述 |
debate_id |
字符串 |
是 |
諮詢的 ID |
list_consultations
列出過去的諮詢。
| 參數 |
類型 |
是否必需 |
描述 |
limit |
數字 |
否 |
結果數量(默認:10) |
sharpen_question
在啟動諮詢之前完善和改進戰略問題。
| 參數 |
類型 |
是否必需 |
描述 |
question |
字符串 |
是 |
要完善的問題 |
context |
字符串 |
否 |
額外上下文 |
| 示例: |
|
|
|
完善這個問題:“人工智能對我們公司有好處嗎?”
consult_advisor
啟動交互式顧問會話,用於頭腦風暴或問題界定。
| 參數 |
類型 |
是否必需 |
描述 |
question |
字符串 |
是 |
初始主題或問題 |
💻 使用示例
戰略決策
使用 Counsel 分析:“我們是否應該在 2025 年拓展歐洲市場?”
考慮這些利益相關者:CEO、CFO、銷售主管、法務
使用深度分析模式
問題完善
使用 sharpen_question 工具完善這個問題:
“我們如何改善公司文化?”
上下文:我們是一家 200 人的初創公司,正在經歷快速增長
檢查諮詢進度
檢查諮詢 abc-123-def 的狀態
⚙️ 配置
環境變量
| 變量 |
默認值 |
描述 |
COUNSEL_API_URL |
https://counsel.getmason.dev |
Counsel API 基礎 URL |
PORT |
3000 |
服務器端口(HTTP 模式) |
CLI 命令
npx -y counsel-mcp-server start
npx -y counsel-mcp-server http [選項]
HTTP 選項:
-p, --port <port> 監聽端口(默認:3000)
--host <host> 綁定的主機(默認:localhost)
🐞 故障排除
“工具未找到”錯誤
確保 MCP 服務器在客戶端中配置正確。添加配置後重啟客戶端。
身份驗證問題
- 檢查是否擁有有效的 Counsel 賬戶。
- 嘗試刪除並重新添加 MCP 服務器配置。
- 如果可用,清除客戶端的 MCP 緩存。
連接被拒絕
如果以 HTTP 模式運行,確保:
- 服務器正在運行(
npx counsel-mcp-server start)。
- 端口未被防火牆阻止。
- 沒有其他進程使用相同的端口。
服務器無法啟動
node --version
npx counsel-mcp-server start
調試模式
如需詳細日誌記錄,可檢查 MCP 客戶端的日誌,或直接在終端中運行服務器以查看輸出。
🛠️ 開發
前提條件
環境搭建
git clone https://github.com/mercurialsolo/counsel-mcp.git
cd counsel-mcp-server
npm install
npm run build
命令
npm run build
npm run dev
npm run start
npm test
npm run lint
npm run security:check
npm run security:check:all
安全
本項目包含自動敏感信息檢測:
- 預提交鉤子:每次提交前自動掃描暫存文件。
- CI 集成:所有拉取請求都會運行安全檢查。
- 模式檢測:檢測 AWS 密鑰、GitHub 令牌、API 密鑰、私鑰等。
詳情請參閱 CONTRIBUTING.md。
項目結構
src/
├── index.ts # HTTP 服務器、OAuth 代理、MCP 傳輸
├── client.ts # 帶有請求範圍身份驗證的 API 客戶端
├── config.ts # 環境配置
└── tools/
├── debates.ts # 諮詢工具
└── advisor.ts # 顧問會話工具
🤝 貢獻
我們歡迎貢獻!請參閱 CONTRIBUTING.md 獲取指南。
快速開始
- 分叉倉庫。
- 創建功能分支:
git checkout -b feature/your-feature。
- 進行更改並添加測試。
- 運行
npm test 確保測試通過。
- 提交拉取請求。
📄 許可證
本項目採用 MIT 許可證,詳情請參閱 LICENSE。
🔗 鏈接