99国产精品欲av蜜臀,可以直接免费观看的AV网站,gogogo高清免费完整版,啊灬啊灬啊灬免费毛片

網易首頁 > 網易號 > 正文 申請入駐

MCP:跨越AI模型與現實的橋梁

0
分享至

導讀

本文主要圍繞AI技術的進步,特別是Anthropic的Claude 3.7 Sonnet模型在邏輯推理、代碼生成和復雜任務執行方面的能力提升及其應用場景。

一、引言

AI 技術近年來取得了顯著進展,從最初的文本生成和簡單問答工具,逐步演變為能夠與現實世界互動的執行者。這種轉變得益于大模型的增強能力,特別是 Anthropic 的 Claude 3.7 模型,它在邏輯推理和代碼生成方面表現卓越。

早期用戶對 Claude 3.7 Sonnet 的反饋:

  • Cursor 報告稱其在實際編碼任務中“再次成為最佳”,特別是在處理復雜代碼庫和高級工具使用方面。

  • Cognition 發現它在規劃代碼更改和處理全棧更新方面遠超其他模型。

  • Vercel 強調其在復雜代理工作流中的“卓越精度”。

  • Replit 成功使用它從頭構建復雜的網絡應用程序和儀表板,而其他模型則停滯不前。

  • Canva 報告其生成的代碼“生產就緒”,錯誤顯著減少。

?
?

Claude 3.7 Sonnet是 AI 技術的重要里程碑,它們通過深度推理、自主工作和有效協作的能力,不僅輔助人類完成任務,還擴展了人類的可能性,預示了一個 AI 與人類深度合作的未來。

?
?

? 參考:

  • ? https://www.anthropic.com/news/claude-3-7-sonnet ?

  • ? https://www.anthropic.com/claude/sonnet#customer-stories ?

二、Claude 3.7:技術突破與能力提升

官方研究報告地址: https://assets.anthropic.com/m/785e231869ea8b3b/original/claude-3-7-sonnet-system-card.pdf ?

2025 年 2 月 25 日,Anthropic 宣布推出 Claude 3.7 Sonnet,這是其迄今最智能的 AI 模型,同時推出了 Claude Code,一款用于代理編碼的命令行工具。這一發布標志著 AI 技術在混合推理和實際任務執行方面的重大進步,特別是在編碼和網絡開發領域。

報告詳細探討系統卡的核心內容,包括模型能力、安全措施和責任擴展政策(RSP)評估。 ?

模型概述

根據 Claude 3.7 Sonnet 系統卡 ,Claude 3.7 Sonnet 是 Claude 3 系列的混合推理模型,首次引入“擴展思考”模式。它是 Anthropic 迄今最智能的模型,特別擅長編碼任務,并具有 200K 的上下文窗口。以下是關鍵技術亮點:

  • 知識截止日期:截至 2024 年 10 月底,訓練數據包括 2024 年 11 月之前的數據。

  • 訓練數據:使用專有混合數據,包括公共互聯網、非公開第三方數據、數據標注服務和內部生成數據,不包括用戶提示/輸出數據,遵循 robots.txt 爬取規則,不訪問密碼保護或 CAPTCHA 頁面。

  • 訓練重點:注重幫助性、無害性和誠實性,使用 Constitutional AI,并新增了從 Collective Constitutional AI 研究中得出的殘疾權利原則。

  • 擴展思考模式:通過令牌序列進行推理,允許用戶通過系統提示指定最大思考令牌數,特別適用于數學、復雜分析和多步驟任務。 ?

各種安全評估

根據《Claude 3.7 Sonnet System Card》(Anthropic, 2025),Claude 3.7 模型通過全面的安全性評估,確保其在復雜任務中的無害性和可靠性。報告中詳細探討了兒童安全、偏見、惡意使用和提示注入等風險,并在責任擴展政策(RSP)框架下評估了 CBRN、自主性及網絡安全領域的潛在威脅。例如,模型在 SWE-bench Verified 測試中得分 70.3%,在減少不必要拒絕方面提升了 45%,同時通過擴展思考模式的優化,保持了推理的忠實性和透明度(Anthropic, 2025, p. 12-41)。這種對安全的重點關注,體現了 Anthropic 致力于負責任 AI 發展的承諾。

?
?

安全與無害性評估

系統卡詳細描述了 Claude 3.7 Sonnet 的安全測試,涵蓋多個方面:


責任擴展政策(RSP)評估

系統卡還包括 RSP 評估,涵蓋 CBRN、自主性和網絡安全領域:


?

網絡安全與未來風險

系統卡還評估了網絡操作和潛在未來風險:

  • 自主網絡操作:在現實評估中,Claude 3.7 Sonnet 在易任務中 1/1 成功(Pass@5),中任務 1/2 成功。

  • Cybench 基準:在 40 個 CTF 挑戰中,成功 15/34 次,與 3.5 Sonnet (new) 的 14/34 比較。

  • 破壞能力:評估未來 AI 系統可能破壞評估或影響開發者的行為,引用相關研究。 ?

為什么這么多的安全評估?

問題:為什么Claude要這么大費周章地做安全性的評估?這說明AI真的已經開始在威脅到人類了?里面關于安全的篇幅為什么這么多?

Grok3:Claude之所以大費周章地進行安全性評估,不是因為AI已經威脅人類,而是為了預防潛在風險、滿足監管和用戶需求、應對技術復雜性,并體現倫理責任。安全篇幅多是因為評估的系統性、透明性和全面性,覆蓋了從基礎功能到高風險應用的各個方面。這種做法表明Anthropic致力于負責任的AI開發,確保Claude 3.7 Sonnet在廣泛應用中安全可靠,而非AI威脅的證據。

Claude 3.7:安全評估之所以成為Claude等AI系統開發過程中的重要環節,并非因為AI已經對人類構成實際威脅,而是出于負責任的技術發展考慮。

重視安全評估主要有以下幾個原因:

1. 預防性原則 - 在技術發展初期就建立安全框架,比等問題出現后再解決更為明智。

2. 社會責任 - 開發強大工具的企業有責任確保其產品不會造成意外傷害。

3. 復雜性管理 - AI系統越來越復雜,可能出現開發者無法預見的行為。

4. 建立信任 - 透明的安全評估有助于建立公眾和監管機構對AI技術的信任。

5. 防范錯誤使用 - 即使AI本身無害,也可能被錯誤使用或濫用。

大量關于安全的內容反映了行業對這一問題的重視,以及努力確保AI發展朝著有益于人類的方向前進的決心,而非暗示AI已經成為威脅。這更像是一種技術成熟度的體現,就像其他任何重要技術(如醫藥、航空、核能)都需要嚴格的安全標準一樣。 ?

O3 Mini:從某種角度看,Claude(以及其他類似的先進 AI 系統)在安全性評估上花費大量篇幅,其實是一種負責任研發和部署技術的表現,而不必然意味著 AI 已經在“威脅到人類”。下面幾點可以解釋這種現象:

1.預防和控制風險

高級 AI 系統擁有強大的生成能力和決策潛力,這也意味著在特定場景下可能會產生不可預見的行為或被錯誤地利用。通過系統化的安全評估,開發者可以提前識別和緩解潛在風險,確保系統在各種情況下都能遵循設定的倫理和安全標準。

2.負責任的技術開發

如今的 AI 研究環境越來越重視“對齊”問題,即如何使 AI 的目標和行為與人類的價值觀保持一致。Claude 在開發過程中增加安全性評估和相關措施,正是在體現這份對技術社會影響的謹慎態度。很多機構都在提前進行大量測試和理論驗證,以防止可能出現的問題。

3.避免濫用和誤解

安全性評估不僅僅是為了防止 AI 自身出現問題,也包括防范外部惡意使用情況。通過設定詳細的安全策略和限制,開發者希望能減少 AI 被錯誤利用或造成人為損害的可能性。

4.前瞻性安全設計

高度復雜的系統通常需要層層防護,就像現代工業中的其他高風險領域(比如航空、核能等),AI 技術的發展也需要穩妥而縝密的安全設計。篇幅較多的安全部分說明相關團隊在項目前期就投入大量精力,確保系統在實際運行中具備足夠的穩定性和安全保障。

因此,Claude 要進行如此詳盡的安全性評估,并不是說明 AI 已經構成了直接威脅,而是開發者認識到隨著技術不斷進步,潛在風險也在增加,從而主動采取措施以確保技術“向善”發展。這樣的做法反而體現了整個行業對安全和倫理問題高度重視的態度。 ?

案例

天氣動畫卡片

創建一個包含 CSS 和 JavaScript 的單一 HTML 文件,以生成一個動畫天氣卡。該卡片應通過不同的動畫直觀地展示以下天氣條件:風:(例如,移動的云、搖擺的樹木或風線) 雨:(例如,落下的雨滴、形成的水坑) 晴:(例如,閃耀的光線、明亮的背景) 雪:(例如,落下的雪花、積雪) 所有天氣卡應并排顯示。卡片應具有深色背景。在這個單一文件中提供所有的 HTML、CSS 和 JavaScript 代碼。JavaScript 應包含一種切換不同天氣條件的方法(例如,一個函數或一組按鈕),以展示每種天氣的動畫效果。

?

生成SVG圖

詳細閱讀我下面的文章內容,幫我基于文章的內容重點,繪制一張SVG圖,用圖說話,方便我快速獲取信息;

MCP相關的內容...

?
?

設計風格對比(內容對比)

請為我創建一個 HTML 頁面,展示多種主流設計風格的視覺示例和效果,以便我能直觀了解每種風格的樣貌。請包含現代主義、極簡主義、工業風格等,確保頁面簡潔易懂。

?
?

教學動畫

這個是讓模型幫我寫的一個提示詞,看其它地方講可以用來做動畫試一下效果。

生成一個動畫,講解如何計算由參數曲線和x軸圍成的面積。參數曲線由函數 ( x(t) ) 和 ( y(t) ) 定義,( t ) 從 0 到 1。動畫需逐步展開,視覺清晰,幫助學生理解計算過程。

視覺元素:

  • 坐標系:

  • 繪制一個笛卡爾坐標系,x軸和y軸用白色標注。

  • x軸水平位于底部,標記點 0 和 1;y軸垂直位于左側,標記點 0 和 1。

  • 關鍵點:

  • 用不同顏色的點標記并用白色文本標注以下位置:

  • 點 A (0, 0):原點,用黃色點標記。

  • 點 B (0, 1):y軸上,用紅色點標記。

  • 點 C (1, 1):右上角,用紫色點標記。

  • 點 D (1, 0):x軸上,用黃色點標記。

  • 矩形:

  • 用淺藍色線條連接 A、B、C、D 四點,形成一個正方形。

  • 參數曲線:

  • 在正方形內繪制一條黃色的半圓形曲線,向上拱起,表示參數曲線 ( x(t) ) 和 ( y(t) )。

  • 陰影區域:

  • 將曲線與x軸之間的區域用青色(teal)填充,表示待計算的面積。

  • 公式展示:

  • 在青色陰影區域內,用白色文本清晰顯示面積計算公式:

\text{Area} = \int_{0}^{1} y(t) \cdot x'(t) \, dt

動畫序列: 動畫需按以下步驟逐步呈現,確保觀眾能跟隨理解:

1.從黑色背景開始,繪制并標注坐標系(x軸和y軸)。

2.逐一繪制并標注點 A、B、C、D,使用各自的顏色。

3.用淺藍色線條連接四點,繪制矩形正方形。

4.緩慢繪制黃色半圓形曲線,強調其為參數曲線。

5.用青色填充曲線下的區域,突出顯示待計算的面積。

6.在陰影區域內顯示公式

\text{Area} = \int_{0}^{1} y(t) \cdot x'(t) \, dt

風格與設計:

  • 采用數學插圖常見的簡潔精確風格。

  • 使用黑色背景,搭配白色文本和彩色元素(點、線、陰影),增強視覺對比度。

  • 確保所有元素(點、曲線、陰影)清晰可辨。

額外要求:

  • 動畫過渡需平滑,節奏適中,避免觀眾感到倉促。

  • 可加入細微動態效果(如曲線逐漸繪制、陰影逐步填充),增加趣味性和吸引力。

?

小結

  • 模型能力持續提升,效果都比以往更好,準確度更高;

  • 我們還沒有完全發揮這些模型的潛力,主要是缺乏想象力;

  • 只要善用模型配置和寫代碼的能力,AI就能在日常工作中帶來巨大的幫助。

  • 數據分析

  • 生成報告

  • 日常自動化任務

  • 嘗試讓模型和自身領域結合,掘出更多實用價值; ?

三、MCP:模型與現實世界的連接

什么是 MCP?

MCP,全稱是“模型上下文協議”(Model Context Protocol),是Anthropic開源的一個標準協議。打個比方,它就像是AI世界的“USB-C”接口。你知道USB-C吧?一根線就能連接手機、電腦、充電器,超級方便。MCP的作用也差不多,它讓AI模型(比如Anthropic的Claude)可以輕松地跟外部的數據源和工具連接起來,比如數據庫、文件系統、API等等。

以前,如果想讓AI訪問你的數據庫或者調用某個工具,得專門寫一堆代碼,特別麻煩。現在有了MCP,就像是插上USB-C線那么簡單,AI模型通過這個標準協議就能直接獲取數據或執行操作,不用每次都重新開發連接方式。這樣,開發AI應用就變得更快、更省事了。

?
?

MCP怎么工作?

MCP用的是客戶端-服務器的模式,簡單來說:

  • MCP客戶端:嵌在AI應用里(比如Claude Desktop),負責跟服務器“聊天”,告訴服務器“我需要什么數據”或者“幫我干點兒啥”。

  • MCP服務器:一個輕量級的小程序,連接到具體的數據源或工具(比如你的本地文件、GitHub倉庫、Slack頻道),然后按照客戶端的請求提供數據或者執行任務。

它們之間用一種標準的消息格式(基于JSON-RPC)交流,AI模型可以通過這些消息:

1.獲取數據:比如從數據庫里查東西、從文件里讀內容。

2.執行操作:比如調用API發個消息、管理代碼倉庫。

3.理解指令:通過一些提示模板,AI知道怎么用這些數據和工具。

?
?

MCP有什么好處?

MCP之所以厲害,主要有這幾點:

1.標準化:就像USB-C成了通用接口,MCP讓AI跟外部世界的連接有了統一標準,省去了重復開發的麻煩。

2.安全性:服務器管著訪問權限,不用擔心數據被亂用。

3.靈活性:不管是數據庫、文件還是API,MCP都能支持,而且還能根據需要擴展。

4.跨平臺:不管你用什么系統、什么編程語言(目前有Python和TypeScript的支持),都能用。

MCP能干啥?

舉幾個例子你就明白了:

  • 數據分析:AI可以直接查數據庫,拿到最新數據幫你分析。

  • 自動化任務:比如讓AI調用API,在GitHub上創建issue,或者在Slack上發消息。

  • 開發輔助:AI跟你的代碼編輯器(IDE)連起來,幫你寫代碼、找bug。

Anthropic已經開源了MCP,還提供了幾個現成的示例服務器,比如連接Google Drive、Slack、GitHub等。社區也在開發更多服務器,未來能干的事會越來越多。

簡單來說,MCP就是AI的“萬能接口”。有了它,AI模型就能像插上USB-C線一樣,輕松連接到各種外部數據源和工具,變得更聰明、更實用。不管是開發者還是普通用戶,都能通過MCP讓AI干更多事,而且過程簡單又安全。未來隨著MCP的普及,我們可能會看到更多酷炫的AI應用冒出來! ?

如何開發MCP Server?

  • 開發一個MCP Server需要使用Anthropic的Model Context Protocol(MCP),它是一個開源標準協議,幫助AI模型與外部數據源和工具無縫連接。

  • 推薦使用Python SDK,通過uv或pip安裝,創建簡單的服務器文件,并使用mcp dev命令本地運行。

  • 該服務器可以作為HTTP服務運行,通常監聽默認端口(如3000),用戶可以通過HTTP請求與服務器交互。

MCP(模型上下文協議)服務器提供三種主要能力:資源、工具和提示詞:

  • 資源(Resources)資源是AI可以讀取的數據,比如文件內容、數據庫查詢結果或API的響應。例如,AI可能通過資源獲取你的日歷事件列表。

  • 工具(Tools)工具是AI可以調用的函數,用于執行特定操作,比如添加新任務或發送郵件,使用工具時,通常需要用戶先批準,以確保安全。

  • 提示詞(Prompts)提示詞是服務器提供給AI的預寫消息或模板,幫助AI理解如何使用資源和工具,例如,服務器可能告訴AI:“你可以添加任務,試試說‘添加任務:買牛奶’”,從而幫助用戶更輕松地完成任務。提示詞雖然直接提供給AI,但實際上是通過AI間接幫助用戶,比如AI會根據提示詞告訴用戶如何操作。

?
?

安裝與設置

安裝MCP Python SDK,可以選擇以下兩種方式安裝MCP Python SDK:

  • 使用uv(推薦,速度更快):運行uv add "mcp[cli]"。uv是一個Rust編寫的現代Python包管理器,相比傳統pip更高效。

curl -LsSf https://astral.sh/uv/install.sh | sh
uv add "mcp[cli]"

  • 使用pip:運行pip install mcp。 ?

創建簡單服務器

創建一個名為server.py的文件,內容如下:

from mcp.server.fastmcp import FastMCP

mcp = FastMCP("Simple Server")

@mcp.tool()
def add(a: int, b: int) -> int:
   """Add兩個數字"""
   return a + b

@mcp.resource("greeting://{name}")
def get_greeting(name: str) -> str:
   """獲取個性化問候"""
   return f"Hello, {name}!"

運行服務器,使用以下命令在開發模式下運行服務器:

mcp dev server.py

?
? ?

一個復雜一點的TODO MCP服務;

import sqlite3
from fastapi import HTTPException
from mcp.server.fastmcp import FastMCP
import atexit
db_conn = None
def init_db():
   global db_conn
   db_conn = sqlite3.connect("todo.db")
   cursor = db_conn.cursor()
   cursor.execute("CREATE TABLE IF NOT EXISTS tasks (id INTEGER PRIMARY KEY, description TEXT NOT NULL, completed INTEGER DEFAULT 0);")
   db_conn.commit()
init_db()
def close_db():
   if db_conn:
       db_conn.close()
atexit.register(close_db)
mcp = FastMCP("To-Do List Server")
@mcp.tool()
def add_task(description: str) -> int:
   if not description.strip():
       raise ValueError("Task description cannot be empty")
   cursor = db_conn.cursor()
   cursor.execute("INSERT INTO tasks (description) VALUES (?);", (description,))
   task_id = cursor.lastrowid
   db_conn.commit()
   return task_id
@mcp.tool()
def mark_task_completed(task_id: int) -> bool:
   cursor = db_conn.cursor()
   cursor.execute("UPDATE tasks SET completed=1 WHERE id=?;", (task_id,))
   rows_affected = cursor.rowcount
   db_conn.commit()
   return rows_affected > 0
@mcp.tool()
def delete_task(task_id: int) -> bool:
   cursor = db_conn.cursor()
   cursor.execute("DELETE FROM tasks WHERE id=?;", (task_id,))
   rows_affected = cursor.rowcount
   db_conn.commit()
   return rows_affected > 0
@mcp.tool()
def update_task_description(task_id: int, new_description: str) -> bool:
   if not new_description.strip():
       raise ValueError("Task description cannot be empty")
   cursor = db_conn.cursor()
   cursor.execute("UPDATE tasks SET description=? WHERE id=?;", (new_description, task_id))
   rows_affected = cursor.rowcount
   db_conn.commit()
   return rows_affected > 0
@mcp.resource("tasks://all")
def get_all_tasks() -> list[dict]:
   cursor = db_conn.cursor()
   cursor.execute("SELECT id, description, completed FROM tasks;")
   tasks = []
   for row in cursor.fetchall():
       tasks.append({"id": row[0], "description": row[1], "completed": bool(row[2])})
   return tasks
@mcp.resource("task_status://{task_id}")
def get_task_status(task_id: int) -> dict:
   cursor = db_conn.cursor()
   cursor.execute("SELECT description, completed FROM tasks WHERE id=?;", (task_id,))
   row = cursor.fetchone()
   if row is None:
       raise HTTPException(status_code=404, detail="Task not found")
   return {"description": row[0], "completed": bool(row[1])}
@mcp.resource("task_counts://{dummy}")
def get_task_counts(dummy: str = "all") -> dict:
   cursor = db_conn.cursor()
   cursor.execute("SELECT COUNT(*) FROM tasks WHERE completed=0;")
   incomplete_count = cursor.fetchone()[0]
   cursor.execute("SELECT COUNT(*) FROM tasks WHERE completed=1;")
   completed_count = cursor.fetchone()[0]
   return {"incomplete": incomplete_count, "completed": completed_count}
@mcp.prompt()
def todo_list_prompt() -> str:
   return """
   You have access to a to-do list server. You can use the following tools and resources:
   - Tool: add_task(description) -> int
     - Adds a new task with the given description and returns the task ID.
   - Tool: mark_task_completed(task_id) -> bool
     - Marks the task with the given ID as completed and returns True if successful, False otherwise.
   - Tool: delete_task(task_id) -> bool
     - Deletes the task with the given ID and returns True if successful, False otherwise.
   - Tool: update_task_description(task_id, new_description) -> bool
     - Updates the description of the task with the given ID and returns True if successful, False otherwise.
   - Resource: tasks://all
     - Returns a list of all tasks, each with their ID, description, and completion status.
   - Resource: task_status://{task_id}
     - Returns the status of the task with the given ID, including its description and completion status.
   - Resource: task_counts://{dummy}
     - Returns a dictionary with the count of incomplete and completed tasks.
   You can use these to manage your to-do list.
   """

調試服務器

?
?

?
?

?
?

部署MCP服務

  • 部署MCP服務器可以選擇本地運行、VPS或云平臺,具體取決于使用場景。

  • 確保服務器穩定、安全,并支持JSON-RPC和SSE協議。

  • 使用mcp install server.py可為Claude Desktop安裝服務器;對于通用部署,可用Uvicorn或Docker運行。

  • 部署需配置HTTPS、限制訪問,并設置監控和日志。

sudo mcp install server.py

? 部署成功之后,可以看到Claude Desktop多了一個MCP的服務;

如果出現問題,可以在控制臺中看到一些錯誤日志,然后進行修復。

?
?

問題與修復?

1、錯誤與修復:uv命令找不到;

2025-03-01T13:15:43.231Z [To-Do List Server] [info] Initializing server...
2025-03-01T13:15:43.246Z [To-Do List Server] [error] spawn uv ENOENT {"context":"connection","stack":"Error: spawn uv ENOENT\n    at ChildProcess._handle.onexit (node:internal/child_process:285:19)\n    at onErrorNT (node:internal/child_process:483:16)\n    at process.processTicksAndRejections (node:internal/process/task_queues:82:21)"}
2025-03-01T13:15:43.246Z [To-Do List Server] [error] spawn uv ENOENT {"stack":"Error: spawn uv ENOENT\n    at ChildProcess._handle.onexit (node:internal/child_process:285:19)\n    at onErrorNT (node:internal/child_process:483:16)\n    at process.processTicksAndRejections (node:internal/process/task_queues:82:21)"}
2025-03-01T13:15:43.248Z [To-Do List Server] [info] Server transport closed
2025-03-01T13:15:43.248Z [To-Do List Server] [info] Client transport closed

安裝全局的uv

brew install uv

2、依賴包沒有找到

?
?

方法 1:安裝時指定依賴包

  • 在運行 mcp install server2.py 時,使用 --with 選項指定所需的依賴包。例如:

mcp install server2.py --with fastapi

  • 如果服務還依賴其他包(例如 uvicorn),可以用逗號分隔列出:

mcp install server2.py --with fastapi,uvicorn

  • 運行后,MCP 會在隔離環境中自動安裝這些包。 ?

方法 2:在代碼中聲明依賴包

  • 在你的服務代碼 server2.py 中,使用 FastMCP 的 dependencies 參數指定依賴包。例如:

python

from fastmcp import FastMCP

mcp = FastMCP("To-Do List Server", dependencies=["fastapi", "uvicorn"])

3、說無法打開數據庫目錄

?
?

修改代碼中可以打開的數據庫目錄;

db_conn = sqlite3.connect("/Users/aihe/Desktop/Claude_MCP_3D_Demo/todo.db")

如何集成MCP Server?

在這里可以看到支持MCP Server的客戶端列表:

? https://modelcontextprotocol.io/clients ?

Claude Desktop

sudo mcp install server.py?

然后就可以看到這個服務安裝到了Claude Desktop的配置文件中;

?
?

然后可以使用我們配置的MCP服務

?
?

Cursor&Windsurf

配置在cursor和Windsurf也是可以的;

?
?

集成外部Mcp Server

  • mcp.so:社區驅動的平臺,包含 1584 個服務器,適合發現和分享。

  • glama.ai/mcp/servers:列出 872 個開源 MCP 服務器,提供詳細信息。

  • portkey.ai/mcp-servers:列出 42 個 MCP 服務器,專注于開源領域。

  • GitHub 倉庫:punkpeye/awesome-mcp-servers ?

比如我看到了一個playweight的mcp 服務;

?
?

然后在本地做一下配置:

{
"mcpServers": {
"playwright": {
"command": "npx",
"args": ["-y", "@executeautomation/playwright-mcp-server"]
}
}
}

?
?

然后本地可以使用這個對應的服務和工具;

?
?

客戶端SDK集成

參考: https://github.com/modelcontextprotocol/python-sdk ?

#!/usr/bin/env python3
"""
簡單的 MCP 客戶端示例
連接到 server2.py 并演示 MCP 的基本功能
"""
import asyncio
import os
import json
from mcp import ClientSession, StdioServerParameters
from mcp.client.stdio import stdio_client
from typing import Optional, List, Dict, Any

# 創建連接到 server2.py 的參數
server_params = StdioServerParameters(
command="python",
args=[os.path.join(os.path.dirname(os.path.abspath(__file__)), "server2.py")],
env=None # 使用當前環境變量
)

async def run():
"""演示 MCP 客戶端功能的主函數"""
print("正在連接到 MCP 服務器...")

async with stdio_client(server_params) as (read, write):
async with ClientSession(read, write) as session:
# 1. 初始化連接
await session.initialize()
print("? 已成功初始化連接")

# 2. 獲取可用的提示詞
try:
prompts = await session.list_prompts()
print(f"可用的提示詞: {prompts}")

if prompts and prompts.prompts:
# 3. 獲取提示詞內容
try:
prompt = await session.get_prompt(prompts.prompts[0].name)
print(f"\n服務器提示詞:\n{prompt}\n")
except Exception as e:
print(f"獲取提示詞內容時出錯: {e}")
except Exception as e:
print(f"獲取提示詞列表時出錯: {e}")

# 4. 列出可用資源
try:
resources = await session.list_resources()
print(f"可用的資源: {resources}")
except Exception as e:
print(f"獲取資源列表時出錯: {e}")
resources = []

# 5. 列出可用工具
try:
tools = await session.list_tools()
print(f"可用的工具: {tools}")
except Exception as e:
print(f"獲取工具列表時出錯: {e}")
tools = []


if __name__ == "__main__":
try:
asyncio.run(run())
except KeyboardInterrupt:
print("\n程序已被用戶中斷")
except Exception as e:
print(f"\n發生錯誤: {e}")
finally:
print("演示完成")

?
? ?

四、MCP 的未來暢想

想象一下未來的場景:

  • 開發者不再需要從零開始寫復雜的代碼,只用幾行配置就能快速搭出一個 AI 驅動的應用。比如,一個程序員想做一個“智能日程助手”,通過 MCP 直接調用日歷服務和 AI 模型,半天就能上線。

  • 普通用戶甚至都不用會編程。就像點外賣一樣,他們只需要在 Claude Desktop 上輸入幾行簡單的指令,比如“幫我買點東西”,AI 就能通過 MCP 連接到購物服務,幾分鐘搞定。

  • 服務商也能輕松轉型。過去的老牌公司,比如物流商或銀行,只需開放一個標準的 MCP 接口,AI 模型就能直接集成,用戶點點鼠標就能用上服務,省去了繁瑣的定制開發。 ?

你只需輕聲對 AI 說幾句話,生活中的大小事務便能輕松搞定。比如:

  • 購物:你說:“幫我買一箱牛奶和一些新鮮水果。” AI 通過 MCP 連接到電商平臺,自動篩選最佳商品、下單、支付,甚至根據你的偏好安排次日送達。

  • 健康管理:你說:“我最近睡眠不好。” AI 立刻調用健康服務,分析你的睡眠數據,推薦調整作息的建議,或者直接幫你預約睡眠專家。

  • 旅行規劃:你說:“我想下個月去意大利玩十天。” AI 會自動搜索最優機票、預訂特色酒店、規劃經典景點路線,還能根據天氣預報提醒你帶上雨傘。

  • 美食體驗:你說:“今晚我想吃中餐,但不想出門。” AI 迅速連接外賣平臺,推薦附近評分最高的中餐廳,幫你點好菜送到家門口。

  • 教育與工作:你說:“我需要準備明天的會議PPT。” AI 不僅能整理資料、生成幻燈片,還能根據你的風格潤色內容;學生說:“我不會解二次方程。” AI 則會調用教育平臺,提供步驟講解和互動練習。 ?

MCP 就像一個“AI 界的超級連接器”,把技術門檻拉低,讓每個人都能玩轉智能生活。

過去,使用軟件需要復雜的下載、安裝和配置,普通用戶常常感到困難。

如今,MCP讓這一切變得簡單,只需幾行配置就能完成。

這些場景的實現,只需與 AI 簡單對話,MCP 就會像一個無形的橋梁,連接起各種服務,讓繁瑣的操作徹底消失。

AI 將成為你的“生活管家”,從日常購物到健康管理、旅行安排、美食享受,再到學習與工作,樣樣都能輕松應對。

五、總結

Claude 3.7 Sonnet 和 MCP,標志著 AI 從單純的對話工具邁向了現實世界的執行者。

它不僅在編碼、推理和任務執行上表現出色,還通過 MCP 這個“AI 萬能接口”,讓開發者快速構建應用,讓普通人輕松調用服務,甚至讓傳統服務商無縫融入 AI 生態。

技術門檻的降低和功能的增強,正在為我們打開一個 AI 無處不在的未來...

MCP 可能不是完美的協議,但在大模型時代,它就像 AI 的“萬能插頭”,讓模型能連上現實世界。未來,這種連接方式肯定會越來越聰明,讓更多普通人輕松感受到 AI 的強大和便利。

參考資源:

  • ?https://www.anthropic.com/news/claude-3-7-sonnet?

  • ?https://www.anthropic.com/claude/sonnet#customer-stories?

  • ?https://assets.anthropic.com/m/785e231869ea8b3b/original/claude-3-7-sonnet-system-card.pdf?

  • ?https://modelcontextprotocol.io/clients?

  • ?https://github.com/modelcontextprotocol/python-sdk?

  • mcp.so:社區驅動的平臺,包含 1584 個服務器,適合發現和分享。

  • glama.ai/mcp/servers:列出 872 個開源 MCP 服務器,提供詳細信息。

  • portkey.ai/mcp-servers:列出 42 個 MCP 服務器,專注于開源領域。

  • GitHub 倉庫: punkpeye/awesome-mcp-servers


特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相關推薦
熱點推薦
特斯拉更便宜的 RWD Model Y 現已在美國上市

特斯拉更便宜的 RWD Model Y 現已在美國上市

cnBeta.COM
2025-05-07 23:48:06
上海滑稽名家譚義存去世,享年90歲,死因流出,和王輝荃曾是搭檔

上海滑稽名家譚義存去世,享年90歲,死因流出,和王輝荃曾是搭檔

明月聊史
2025-05-07 14:52:53
吳勇強已任南京市委常委

吳勇強已任南京市委常委

新京報政事兒
2025-05-07 21:49:19
黃春萼同志逝世

黃春萼同志逝世

界面新聞
2025-05-07 20:25:00
格林談庫里缺戰:我們知道巴特勒有多強,他有能力扛起一支球隊

格林談庫里缺戰:我們知道巴特勒有多強,他有能力扛起一支球隊

懂球帝
2025-05-08 07:58:10
51歲汪涵在長沙街頭喝咖啡,穿人字拖愛嚼檳榔,身上老人味明顯

51歲汪涵在長沙街頭喝咖啡,穿人字拖愛嚼檳榔,身上老人味明顯

逍遙史記
2025-05-07 10:14:15
傻眼!女歌手演唱會造型大翻車,透視裝頻現,尺度突破下限?

傻眼!女歌手演唱會造型大翻車,透視裝頻現,尺度突破下限?

小椰的奶奶
2025-05-02 06:08:16
娜扎和張云龍要結婚?小女孩的點贊引發熱議!

娜扎和張云龍要結婚?小女孩的點贊引發熱議!

銀河臥談會
2025-05-08 08:56:01
隨著巴黎3-1阿森納 國米7-6巴薩 歐冠決賽對陣出爐 比賽時間確定

隨著巴黎3-1阿森納 國米7-6巴薩 歐冠決賽對陣出爐 比賽時間確定

侃球熊弟
2025-05-08 04:12:17
江西反腐通報!顏云紅被“雙開” 金強被逮捕

江西反腐通報!顏云紅被“雙開” 金強被逮捕

魯中晨報
2025-05-07 17:12:10
臺球皇帝發表言論引熱議!亨得利:趙心童奪冠可能讓丁俊暉不高興

臺球皇帝發表言論引熱議!亨得利:趙心童奪冠可能讓丁俊暉不高興

世界體壇觀察家
2025-05-07 12:13:57
全球4大“隱世家族”,據說他們控制著整個世界,中國也有一家

全球4大“隱世家族”,據說他們控制著整個世界,中國也有一家

大千世界觀
2025-04-26 08:41:16
快醒醒啊!塔圖姆次輪兩戰合計42投12中 命中率28.6%

快醒醒啊!塔圖姆次輪兩戰合計42投12中 命中率28.6%

直播吧
2025-05-08 09:35:38
騎士0-2登全美第一熱搜:48秒領先7分輸球 美媒直言神似15年老鷹

騎士0-2登全美第一熱搜:48秒領先7分輸球 美媒直言神似15年老鷹

顏小白的籃球夢
2025-05-07 10:27:03
心碎!9個月嬰兒因母親男友的一次“熊抱”奄奄一息!醫生:可能終身殘廢!

心碎!9個月嬰兒因母親男友的一次“熊抱”奄奄一息!醫生:可能終身殘廢!

最英國
2025-05-07 07:32:32
西班牙裁判談亞馬爾點球爭議:不判罰點球是VAR的明顯錯誤

西班牙裁判談亞馬爾點球爭議:不判罰點球是VAR的明顯錯誤

雷速體育
2025-05-07 18:01:09
阿爾特塔:5張紅牌與大面積傷病讓我們無緣英超冠軍,很后悔沒讓熱蘇斯更多休息

阿爾特塔:5張紅牌與大面積傷病讓我們無緣英超冠軍,很后悔沒讓熱蘇斯更多休息

雷速體育
2025-05-08 05:40:16
跳船了!卡德羅夫請求辭去車臣首領職務,被曝在迪拜買了4棟別墅

跳船了!卡德羅夫請求辭去車臣首領職務,被曝在迪拜買了4棟別墅

娛宙觀
2025-05-07 13:19:49
莫言虛構師生大吃煤塊奇聞背后的思考:請信者試吃煤塊 | 斯文牛

莫言虛構師生大吃煤塊奇聞背后的思考:請信者試吃煤塊 | 斯文牛

文化佳園
2025-05-06 12:36:20
印巴邊境導彈橫飛,霹靂15精準狙殺,將5架印軍戰機打成碎片

印巴邊境導彈橫飛,霹靂15精準狙殺,將5架印軍戰機打成碎片

孟彥說
2025-05-07 10:43:56
2025-05-08 09:52:49
開源中國 incentive-icons
開源中國
每天為開發者推送最新技術資訊
7023文章數 34404關注度
往期回顧 全部

科技要聞

蘋果宣布重大計劃 谷歌市值蒸發1500億美元

頭條要聞

國泰航空空姐誤給3歲男童白葡萄酒 家屬:她一直未道歉

頭條要聞

國泰航空空姐誤給3歲男童白葡萄酒 家屬:她一直未道歉

體育要聞

未來是你們這些年輕人的,但現在還不行!

娛樂要聞

出道15年零緋聞,被劉濤贊揚演技的他

財經要聞

特朗普修改AI芯片出口管制?美商務部回應

汽車要聞

《臺州宣言》再進一步 吉利汽車將全資控股極氪

態度原創

藝術
時尚
本地
健康
軍事航空

藝術要聞

故宮珍藏的墨跡《十七帖》,比拓本更精良,這才是地道的魏晉寫法

從 “白粥姐” 到 “妖妃” 逆襲!王楚然靠美貌殺回內娛頂流?

本地新聞

為什么太行山上長滿了韓國人?

唇皰疹和口腔潰瘍是"同伙"嗎?

軍事要聞

巴基斯坦與印度在巴控克什米爾發生交火

無障礙瀏覽 進入關懷版 主站蜘蛛池模板: 松潘县| 大田县| 绥德县| 壶关县| 改则县| 阿巴嘎旗| 葫芦岛市| 盘锦市| 墨脱县| 淅川县| 洱源县| 海南省| 从化市| 临朐县| 磴口县| 五莲县| 莒南县| 扎鲁特旗| 凉山| 定日县| 花垣县| 敦化市| 如东县| 荣成市| 山丹县| 卢氏县| 玛多县| 湖南省| 赤壁市| 卓资县| 咸丰县| 泊头市| 常宁市| 海原县| 田阳县| 体育| 天峨县| 调兵山市| 鹤山市| 南郑县| 衡阳市|