精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

用 MCP 擴展 Cursor 能力:解鎖 Sentry 服務數(shù)據(jù)新玩法

人工智能
本文對 MCP? 進行了簡要介紹。MCP?是一種高效且通用的協(xié)議,它能讓AI?安全、高效地訪問本地數(shù)據(jù)。我們以 Sentry?接入MCP?為例,成功實現(xiàn)了Sentry?監(jiān)控服務與cursor?助手的集成,達成了應用崩潰率的智能分析以及crash?問題的詳細查詢,助力大家更好地理解 MCP 的工作模式。

1.MCP 簡介

MCP(Model Context Protocol,模型上下文協(xié)議)是由  Anthropic 推出的一種開放標準,旨在統(tǒng)一大型語言模型(LLM)與外部數(shù)據(jù)源和工具之間的通信協(xié)議。

使用模型上下文協(xié)議(MCP)可以構(gòu)建服務器,向LLM應用程序公開數(shù)據(jù)和功能。MCP 服務器可以完成的功能如下:

  • 通過資源(Resources)暴露數(shù)據(jù)(類似 GET 請求的執(zhí)行接口;它們用于將信息加載到 LLM 的上下文中);
  • 通過工具(Tools)提供功能(類似 POST 請求的執(zhí)行接口;它們用于執(zhí)行代碼或者產(chǎn)生其他附帶影響);
  • 通過提示(Prompts)定義交互模式(類似一個服務列表;可以用來查詢服務器提供哪些服務,需要哪些參數(shù)等)。

MCP 的主要目的在于解決當前 AI模型因數(shù)據(jù)孤島限制而無法充分發(fā)揮潛力的難題。通過 MCP,AI應用能夠安全地訪問和操作本地及遠程數(shù)據(jù),為 AI 應用提供了連接萬物的接口。

在當前 AI應用開發(fā)中,我們經(jīng)常需要讓 AI模型與現(xiàn)有的業(yè)務系統(tǒng)進行交互。例如,查詢數(shù)據(jù)庫、調(diào)用監(jiān)控系統(tǒng)  API 、分析日志等。MCP 提供了一種標準化的方式來構(gòu)建這種交互,使 AI 模型能夠"看見"外部世界的數(shù)據(jù)。

2.MCP 的核心優(yōu)勢

  • 能力擴展:使 AI 模型能夠超越其訓練數(shù)據(jù)的限制,獲取實時外部信息;
  • 標準化接口:提供統(tǒng)一的接口規(guī)范,簡化服務集成過程;
  • 安全可控:通過明確的權限管理和訪問控制,保障數(shù)據(jù)安全;
  • 低代碼集成:減少編寫膠水代碼的需求,降低開發(fā)成本;
  • 實時數(shù)據(jù)訪問:讓 AI能夠基于最新數(shù)據(jù)做出決策和回復。

3.MCP可以實現(xiàn)的功能舉例

以下服務是官方提供或者第三方通過MCP協(xié)議實現(xiàn)的一些服務工具。由TypeScript或者 Python SDK實現(xiàn),詳細說明以及更多例子可以參見官方文檔:官方文檔(https://github.com/modelcontextprotocol/servers)

  • AWS 知識庫檢索 - 使用 Bedrock Agent Runtime 從 AWS 知識庫中檢索信息;
  • Brave 搜索 - 使用 Brave 的搜索 API進行網(wǎng)絡和本地搜索;
  • EverArt - 使用各種模型進行 AI圖像生成;
  • Everything - 參考/測試服務器,包含提示、資源和工具;
  • Fetch - 網(wǎng)絡內(nèi)容獲取和轉(zhuǎn)換,提高 LLM 使用效率;
  • 文件系統(tǒng) - 具有可配置訪問控制的安全文件操作;
  • Git- 用于讀取、搜索和操作 Git 倉庫的工具;
  • GitHub - 倉庫管理、文件操作和 GitHub API集成;
  • GitLab - GitLab API,支持項目管理;
  • Google Drive - Google Drive 文件訪問和搜索功能;
  • Google 地圖 - 位置服務、路線指引和地點詳情;
  • 記憶系統(tǒng) - 基于知識圖譜的持久化記憶系統(tǒng);
  • PostgreSQL - 具有架構(gòu)檢查功能的只讀數(shù)據(jù)庫訪問;
  • Puppeteer - 瀏覽器自動化和網(wǎng)頁抓取;
  • Redis - 與 Redis 鍵值存儲交互;
  • Sentry - 從 Sentry.io 檢索和分析問題;
  • Sequential Thinking - 通過思維序列進行動態(tài)和反思性問題解決;
  • Slack - 頻道管理和消息發(fā)送功能;
  • SQLite - 數(shù)據(jù)庫交互和商業(yè)智能功能。

4.以 Sentry 服務為例的 MCP 實踐

4.1 背景與實現(xiàn)的功能

在我們的項目中,我們使用Sentry 作為 bug上報平臺。數(shù)據(jù)可以通過接口獲取,其與 MCP服務結(jié)合,能夠便捷地將數(shù)據(jù)接入 AI,可以更方便地分析 crash原因和查詢崩潰率等數(shù)據(jù)。官方提供的 demo 程序,更是為我們進一步擴展 Sentry工具功能提供了很好的參考示例。 借助 Sentry接入 MCP協(xié)議,我們可以只將 bug ID或問題鏈接提交給 cursor,便能迅速獲取詳細的 bug 信息以及可能的解決方案,這可以顯著提升問題排查與解決的效率。

同時,我們把 Sentry統(tǒng)計信息也接入系統(tǒng),賦予了 cursor訪問各版本崩潰率數(shù)據(jù)以及全版本綜合崩潰率數(shù)據(jù)的權限。AI能夠據(jù)此輸出直觀的對比圖表或者數(shù)據(jù)。

不僅如此,為進一步豐富 Sentry MCP 工具的功能,我們還將后端應用性能監(jiān)控(APM)數(shù)據(jù)整合至該服務中。如此一來,cursor可直接查詢到更為全面、豐富的應用信息,全方位提升了數(shù)據(jù)的可獲取性與利用價值。

4.2 Sentry MCP服務組件功能結(jié)構(gòu)

Sentry MCP服務組件功能結(jié)構(gòu)圖如下:

  • 程序流程 - 程序入口:通過main函數(shù)啟動程序,接收Sentry和SNS身份驗證令牌;- 服務器創(chuàng)建:serve函數(shù)創(chuàng)建MCP服務器并注冊各種處理程序;- 請求處理:當 AI助手發(fā)起工具調(diào)用請求時,handle_call_tool函數(shù)依據(jù)工具名稱進行請求的路由分發(fā);- 數(shù)據(jù)獲取:專門的處理函數(shù)通過外部API獲取數(shù)據(jù),并將其封裝在相應的數(shù)據(jù)類中;- 響應生成:數(shù)據(jù)類提供方法將數(shù)據(jù)轉(zhuǎn)換為所需的格式,返回給AI助手。
  • 主要組件數(shù)據(jù)類:- SentryIssueData:存儲Sentry錯誤和crash信息,包括標題、ID、狀態(tài)和堆棧跟蹤;- SentrySessionStatsData:存儲Sentry會話統(tǒng)計數(shù)據(jù),如崩潰率、用戶數(shù)等;- ApkHistoryData:存儲APK檢測歷史數(shù)據(jù),包括版本、大小和各組件信息。處理函數(shù):- handle_sentry_issue:獲取特定Sentry問題詳情;- handle_session_stats:獲取會話統(tǒng)計數(shù)據(jù),如崩潰率和穩(wěn)定性指標;- handle_apk_history:獲取APK歷史數(shù)據(jù),包括大小和組件分析。服務器配置:- serve:配置MCP服務器,注冊工具、提示和處理程序;- handle_call_tool:分發(fā)工具調(diào)用請求到相應的處理函數(shù)。

4.3 功能實現(xiàn)

MCP協(xié)議有Python、Java、Kotlin等語言的SDK,由于Python使用最為普遍,我們這里使用PythonSDK來實現(xiàn)。

4.3.1 安裝MCP

pip install mcp

4.3.2 功能入口

創(chuàng)建server.py文件作為服務程序的代碼文件,以下所列代碼都是在這個代碼文件中。下面main函數(shù)是程序入口函數(shù):

#server.py
def main(auth_token: str, sns_token: str = None):
    async def _run():
        async with mcp.server.stdio.stdio_server() as (read_stream, write_stream):
            server = await serve(auth_token, sns_token)
            await server.run(
                read_stream,
                write_stream,
                InitializationOptions(
                    server_name="sentry",
                    server_versinotallow="0.4.1",
                    capabilities=server.get_capabilities(
                        notification_optinotallow=NotificationOptions(),
                        experimental_capabilities={},
                    ),
                ),
            )

    asyncio.run(_run())

if __name__ == "__main__":
    # 直接調(diào)用main函數(shù)
    main()

main函數(shù)的功能如下:

  • 創(chuàng)建基于stdio的服務器通信通道;
  • serve函數(shù)初始化MCP服務器實例;
  • 配置服務器初始化選項;
  • 啟動服務器運行循環(huán)。

4.3.3 服務器實例創(chuàng)建

下面是簡化版的serve函數(shù):

#server.py
async def serve(auth_token: str, sns_token: str = None) -> Server:
    server = Server("sentry")
    http_client = httpx.AsyncClient(base_url=SENTRY_API_BASE)
    apk_http_client = httpx.AsyncClient(base_url=APK_API_BASE)

    @server.list_prompts()
    async def handle_list_prompts() -> list[types.Prompt]:
        prompts = [
            types.Prompt(
                name="sentry-issue",
                descriptinotallow="通過ID或URL獲取Sentry問題詳情",
                arguments=[
                ],
            ),
            types.Prompt(
                name="session-stats",
                descriptinotallow="獲取Sentry會話統(tǒng)計數(shù)據(jù)和崩潰率",
                arguments=[
                  
                ],
            ),
             types.Prompt(
                name="apk-history",
                descriptinotallow="獲取APK檢測歷史數(shù)據(jù)",
                arguments=[]
            )
            
        ]
            
        return prompts

    @server.get_prompt()
    async def handle_get_prompt(
        name: str, arguments: dict[str, str] | None
    ) -> types.GetPromptResult:
        if name == "sentry-issue":
             ...
            return issue_data.to_prompt_result()

        elif name == "session-stats":
            ...
            return stats_data.to_prompt_result()

        elif name == "apk-history":
           ...
            return history_data.to_prompt_result()
        else:
            raise ValueError(f"Unknown prompt: {name}")

    @server.list_tools()
    async def handle_list_tools() -> list[types.Tool]:
        tools = [
            types.Tool(
                name="get_sentry_issue",
                 
            ),
            types.Tool(
                name="get_sentry_session_stats",
               
            ) ,
            types.Tool(
                name="get_apk_history",
             
            )
        ]
        
      
            
        return tools

    @server.call_tool()
    async def handle_call_tool(
        name: str, arguments: dict | None
    ) -> list[types.TextContent | types.ImageContent | types.EmbeddedResource]:
        if name == "get_sentry_issue":
          
            return issue_data.to_tool_result()
        
        elif name == "get_sentry_session_stats":
        
            return stats_data.to_tool_result()
            
        elif name == "get_apk_history":
         
            return history_data.to_tool_result()
        
        else:
            raise ValueError(f"Unknown tool: {name}")

    return server

serve函數(shù)是這個MCP Sentry服務的核心組件,負責創(chuàng)建、配置和返回一個完整的MCP服務器實例。它通過四個主要組件構(gòu)建了完整服務:

  • 提示列表:定義可用的查詢服務(問題詳情、崩潰率統(tǒng)計、APK歷史);
  • 提示處理器:執(zhí)行查詢邏輯并返回結(jié)果;
  • 工具列表:注冊可調(diào)用的工具集合;
  • 工具調(diào)用處理器:處理具體工具調(diào)用并獲取數(shù)據(jù) 整體功能是將Sentry和APK監(jiān)控系統(tǒng)的復雜API調(diào)用封裝成結(jié)構(gòu)化接口,方便AI助手獲取崩潰報告、穩(wěn)定性數(shù)據(jù)和APK分析信息。

4.4 三個查詢功能的實現(xiàn)

4.4.1 Sentry問題詳情獲取功能實現(xiàn)

handle_sentry_issue函數(shù)是MCP Sentry服務的核心組件之一,它通過問題ID或URL獲取Sentry問題的詳細信息,包括問題標題、狀態(tài)、級別、首次和最后出現(xiàn)時間、事件數(shù)量,以及最關鍵的堆棧跟蹤信息。下面的問題詳情的獲取主函數(shù)功能:

#server.py
asyncdef handle_sentry_issue(
    http_client: httpx.AsyncClient, auth_token: str, issue_id_or_url: str
) -> SentryIssueData:
    try:
        # 提取問題ID
        issue_id = extract_issue_id(issue_id_or_url)

        # 獲取問題詳情
        response = await http_client.get(
            f"organizations/xxx/issues/{issue_id}/", 
            headers={"Authorization": f"Bearer {auth_token}"}
        )
        if response.status_code == 401:
            raise McpError(
                "Error: Unauthorized. Please check your MCP_SENTRY_AUTH_TOKEN token."
            )
        response.raise_for_status()
        issue_data = response.json()

        # 獲取問題哈希值
        hashes_response = await http_client.get(
            f"organizations/xxx/issues/{issue_id}/hashes/",
            headers={"Authorization": f"Bearer {auth_token}"},
        )
        hashes_response.raise_for_status()
        hashes = hashes_response.json()

        ifnot hashes:
            raise McpError("No Sentry events found for this issue")

        # 獲取最新事件并生成堆棧跟蹤
        latest_event = hashes[0]["latestEvent"]
        stacktrace = create_stacktrace(latest_event)

        # 返回格式化的問題數(shù)據(jù)
        return SentryIssueData(
            title=issue_data["title"],
            issue_id=issue_id,
            status=issue_data["status"],
            level=issue_data["level"],
            first_seen=issue_data["firstSeen"],
            last_seen=issue_data["lastSeen"],
            count=issue_data["count"],
            stacktrace=stacktrace
        )

    except SentryError as e:
        raise McpError(str(e))
    except httpx.HTTPStatusError as e:
        raise McpError(f"Error fetching Sentry issue: {str(e)}")
    except Exception as e:
        raise McpError(f"An error occurred: {str(e)}")

為了簡化使用并確保數(shù)據(jù)一致性,我們在最新版本中對環(huán)境和項目做了固定配置:

  • 環(huán)境(environment):固定為 ["flavorsOnline_arm64"]
  • 項目 ID(project):固定為 [6]

這樣用戶在查詢時不需要每次都指定這些參數(shù)。

4.4.2 Sentry會話統(tǒng)計數(shù)據(jù)獲取功能實現(xiàn)

handle_session_stats函數(shù)是Sentry MCP服務的另一個核心組件,專門用于獲取應用的會話統(tǒng)計數(shù)據(jù),包括崩潰率、用戶數(shù)量、會話持續(xù)時間等關鍵指標。這些數(shù)據(jù)對于監(jiān)控應用穩(wěn)定性、分析版本質(zhì)量和追蹤用戶體驗至關重要。

#server.py
asyncdef handle_session_stats(
    http_client: httpx.AsyncClient, 
    auth_token: str, 
    organization: str,
    field: list[str],
    start: str = None,
    end: str = None,
    environment: list[str] = None,
    stats_period: str = None,
    project: list[int] = None,
    per_page: int = None,
    interval: str = None,
    group_by: list[str] = None,
    order_by: str = None,
    include_totals: int = 1,
    include_series: int = 1,
    query: str = None
) -> SentrySessionStatsData:
    try:
        # 構(gòu)建查詢參數(shù)
        params = {"field": field}
        
        if start:
            params["start"] = start
        if end:
            params["end"] = end
        if environment:
            params["environment"] = environment
        if stats_period:
            params["statsPeriod"] = stats_period
        if project:
            params["project"] = project
        if per_page:
            params["per_page"] = per_page
        if interval:
            params["interval"] = interval
        if group_by:
            params["groupBy"] = group_by
        if order_by:
            params["orderBy"] = order_by
        if include_totals isnotNone:
            params["includeTotals"] = include_totals
        if include_series isnotNone:
            params["includeSeries"] = include_series
        if query:
            params["query"] = query
            
        # 發(fā)送請求
        response = await http_client.get(
            f"organizations/{organization}/sessions/",
            headers={"Authorization": f"Bearer {auth_token}"},
            params=params
        )
        
        if response.status_code == 401:
            raise McpError(
                "Error: Unauthorized. Please check your MCP_SENTRY_AUTH_TOKEN token."
            )
        
        response.raise_for_status()
        data = response.json()
        
        stats_data = SentrySessionStatsData(
            organizatinotallow=organization,
            start_time=data.get("start", ""),
            end_time=data.get("end", ""),
            intervals=data.get("intervals", []),
            groups=data.get("groups", []),
            query=data.get("query", "")
        )
        report_file_path = generate_crash_rate_html_report(
                    data=stats_data,
                    params=params
                )
                stats_data.report_file_path = report_file_path

        return stats_data
    except httpx.HTTPStatusError as e:
        raise McpError(f"Error fetching Sentry session statistics: {str(e)}")
    except Exception as e:
        raise McpError(f"An error occurred: {str(e)}")
  • 功能亮點 - 靈活的查詢參數(shù):支持多種篩選條件,如時間范圍、環(huán)境、項目ID、查詢表達式等;- 豐富的統(tǒng)計指標:提供多種會話相關指標,如: 會話總數(shù) (  sum(session))獨立用戶數(shù) (count_unique(user))平均會話時長 (avg(session.duration))會話時長分位數(shù) (p50/p75/p90/p95/p99/max(session.duration))用戶崩潰率 (crash_rate(user))會話崩潰率 (crash_rate(session))用戶崩潰免除率 (crash_free_rate(user))會話崩潰免除率 (crash_free_rate(session))- 數(shù)據(jù)系列和匯總:同時支持時間序列數(shù)據(jù)和匯總數(shù)據(jù),生成html文件,便于趨勢分析和整體評估;- 分組和排序:支持對數(shù)據(jù)進行分組和排序,便于比較分析不同維度的數(shù)據(jù)。

通過這一功能,使用cursor能夠幫助我們監(jiān)控和分析應用的穩(wěn)定性表現(xiàn),及時發(fā)現(xiàn)潛在問題,提供數(shù)據(jù)支持以優(yōu)化用戶體驗和應用質(zhì)量。

4.4.3 APK檢測歷史數(shù)據(jù)獲取功能實現(xiàn)

handle_apk_history函數(shù)是Sentry MCP服務中專門用于獲取和分析APK檢測歷史數(shù)據(jù)的組件。它能夠追蹤應用各版本的體積變化、組件大小分布和版本迭代情況。

#server.py
asyncdef handle_apk_history(
    http_client: httpx.AsyncClient, 
    sns_token: str
) -> ApkHistoryData:
    try:
        response = await http_client.get(
            "getHistory/0",
            headers={"sns_token": sns_token}
        )
        
        if response.status_code == 401:
            raise McpError(
                "Error: Unauthorized. Please check your SNS token."
            )
        
        response.raise_for_status()
        data = response.json()
        
        # 從新的API響應結(jié)構(gòu)中獲取數(shù)據(jù)
    apkData = ApkHistoryData(
            apk_list=data.get("data", {}).get("apkList", []),
            total_count=data.get("data", {}).get("totalCount", 0)
        )
     report_file_path = generate_apk_history_html_report(
                    data=apkData
                )
                apkData.report_file_path = report_file_path


         
        return apkData
    except httpx.HTTPStatusError as e:
        raise McpError(f"Error fetching APK history data: {str(e)}")
    except Exception as e:
        raise McpError(f"An error occurred: {str(e)}")

這些信息源自我們內(nèi)部 應用性能監(jiān)控(APM)接口,它詳細呈現(xiàn)了 APK的相關內(nèi)容,具體涵蓋:

  • 基本信息:APK 的版本、版本號以及名稱;
  • 大小詳情:APK的總大小,以及實際下載大小;
  • 組件分析:對 APK 各組件,即Assets、Dex、Lib以及資源部分的大小進行剖析;
  • 元數(shù)據(jù):包含時間戳、文件路徑、備注信息,以及特性描述等。 此外,這些數(shù)據(jù)以結(jié)構(gòu)化形式整合,輸出到html文件中,將復雜信息有序組織,方便后續(xù)進行深入分析與直觀展示。
4.4.4 在cursor中集成

在cursor的設置中添加MCP服務,Type選擇command,然后在Command中輸入python執(zhí)行程序,保存后,可以在cursor對話框中使用,添加的界面如圖所示:

選擇Type時,還有另一種Type是sse,sse是服務器發(fā)送事件(Server-Sent Events,SSE)它是一種允許服務器向客戶端實時推送數(shù)據(jù)的 Web API。SSE建立了一個單向的HTTP連接,服務器可以在有新數(shù)據(jù)時隨時向客戶端發(fā)送消息,而客戶端只需監(jiān)聽服務器的推送。我們Sentry MCP這里只使用了主動獲取數(shù)據(jù)的方式,因此這里選擇了command命令行的方式。command完整的命令如下所示:

python3 /Users/xxx/server.py --auth-token xxx sns-token xxx

其中xxx是我們sentry平臺和應用性能監(jiān)控(APM)的接口token

4.5 效果展示

4.5.1 查詢崩潰率數(shù)據(jù)

使用handle_session_stats函數(shù)可以輕松獲取應用的崩潰率數(shù)據(jù),例如在cursor中輸入:幫我查詢6.6.0版本和6.5.0版本最近14天的崩潰率詳情,輸出html結(jié)果如下:

4.5.2 查詢bug詳情

在cursor中輸入:幫我查詢這個bug的詳細信息644,請求cursor結(jié)果如下:

Sentry問題分析報告
我已經(jīng)查詢到關于您提供的Sentry問題的詳細信息。這是一個發(fā)生在flavorsOnline_arm64環(huán)境中的項目6的錯誤:
錯誤概覽
錯誤類型:RemoteServiceException$CannotDeliverBroadcastException
錯誤描述:can't deliver broadcast
問題ID:644
狀態(tài):未解決
嚴重級別:致命(fatal)
首次出現(xiàn):2024-10-03 04:36:33
最近出現(xiàn):2025-03-21 10:44:02
事件計數(shù):18次
堆棧跟蹤
錯誤發(fā)生在Android系統(tǒng)的廣播傳遞機制中,堆棧跟蹤顯示:
ZygoteInit.java:954 in main
RuntimeInit.java:559 in run
Method.java:None in invoke
ActivityThread.java:8395 in main
Looper.java:300 in loop
Looper.java:211 in loopOnce
Handler.java:106 in dispatchMessage
ActivityThread.java:2349 in handleMessage
None:0 in -$$Nest$mthrowRemoteServiceException
ActivityThread.java:2087 in throwRemoteServiceException
崩潰率分析
根據(jù)過去7天的會話統(tǒng)計:
崩潰率:約0.0001 (0.01%)
無崩潰率:約0.9999 (99.99%)
總會話數(shù):1,239,555
雖然崩潰率較低,但由于這是一個致命錯誤,且在近期(3月21日)仍有發(fā)生,應該引起關注。
問題分析
錯誤性質(zhì):這是一個與Android廣播機制相關的RemoteServiceException,表明應用嘗試發(fā)送一個廣播,但系統(tǒng)無法傳遞。
可能原因:
廣播接收器不存在或已被卸載
目標組件權限問題
系統(tǒng)資源限制導致廣播傳遞失敗
特定于arm64架構(gòu)的問題
影響范圍:
錯誤發(fā)生在flavorsOnline_arm64環(huán)境
相對較低的崩潰率(0.01%)表明這可能是特定設備或特定條件下才會觸發(fā)的問題
建議解決方案
防御性編程:
在發(fā)送廣播前檢查接收器是否存在
使用try-catch塊包裝廣播發(fā)送代碼
錯誤位置定位:
檢查ActivityThread.java:2087處的throwRemoteServiceException方法調(diào)用點
找出應用中哪些地方發(fā)送了可能觸發(fā)此異常的廣播
設備/版本針對性修復:
由于這個問題僅在arm64架構(gòu)出現(xiàn),可以考慮為該架構(gòu)添加特定的兼容性代碼
監(jiān)控計劃:
雖然崩潰率低,但應繼續(xù)監(jiān)控,特別是在新版本發(fā)布后
由于這個錯誤是與Android系統(tǒng)廣播機制相關的,建議查看應用中所有發(fā)送廣播的代碼,尤其是在6.6.0版本中新增或修改的部分,確保它們都有適當?shù)腻e誤處理機制。
需要我進一步分析這個問題的特定方面嗎?

4.5.3 查詢應用性能監(jiān)控(APM)中數(shù)據(jù)

在cursor中輸入:幫我查詢6.6.0的性能數(shù)據(jù),并和6.5.0版本對比。請求cursor后生成的html結(jié)果如下:

通過結(jié)果,我們可以看出,通過 MCP協(xié)議,本地數(shù)據(jù)得以充分供給給 AI,成功賦予了AI訪問本地數(shù)據(jù)的能力。這使得 AI能夠深度挖掘并高效利用這些數(shù)據(jù)。

5.總結(jié)

本文對 MCP 進行了簡要介紹。MCP是一種高效且通用的協(xié)議,它能讓AI安全、高效地訪問本地數(shù)據(jù)。我們以 Sentry接入MCP為例,成功實現(xiàn)了Sentry監(jiān)控服務與cursor助手的集成,達成了應用崩潰率的智能分析以及crash問題的詳細查詢,助力大家更好地理解 MCP 的工作模式。

希望本文能幫助讀者更好地認識 MCP 協(xié)議,熟練掌握將本地數(shù)據(jù)接入AI的方法。期待這篇技術分享能對您了解和運用 MCP有所助益。

責任編輯:武曉燕 來源: 搜狐技術產(chǎn)品
相關推薦

2025-07-02 02:10:00

2024-07-18 19:30:58

2025-03-27 08:19:53

2015-08-25 10:56:21

大數(shù)據(jù)

2025-02-07 08:16:26

Java開發(fā)者代碼

2025-09-29 01:11:00

2018-04-02 09:55:37

2025-06-03 01:25:00

2025-08-04 03:22:00

2025-09-02 02:25:00

2019-12-24 11:19:56

2016-04-25 14:12:46

Top Show虛擬現(xiàn)

2025-03-13 03:00:00

DockerAgentic工具

2023-11-12 23:01:44

PaddleOCR深度學習

2025-11-12 09:14:29

2012-10-10 13:56:16

CANastel跨平臺

2024-11-15 11:01:45

點贊
收藏

51CTO技術棧公眾號

国产特黄级aaaaa片免| 亚洲综合欧美日韩| 日本熟女毛茸茸| 日韩欧美字幕| 欧美mv日韩mv国产| 国自产拍偷拍精品啪啪一区二区| 色播色播色播色播色播在线 | 中文字幕一区二区人妻视频| 93在线视频精品免费观看| 欧美不卡一区二区| 免费激情视频在线观看| 欧美性爽视频| 国产亚洲va综合人人澡精品| 97人人模人人爽人人少妇| 久久草视频在线| 99免费精品| 亚洲免费视频观看| 韩国三级与黑人| 国产传媒在线| 中文字幕亚洲精品在线观看| 精品免费二区三区三区高中清不卡 | 久久免费视频在线观看| 97人妻人人揉人人躁人人| 日本久久伊人| 欧美亚洲综合在线| 少妇人妻无码专区视频| 黄网站在线免费| 2021中文字幕一区亚洲| 亚洲综合中文字幕在线| 最近中文字幕在线视频| 欧美亚洲三级| 国产做受69高潮| 内射一区二区三区| 精品久久电影| 亚洲精品在线观看网站| 日本一二三四区视频| 88xx成人永久免费观看| 五月天视频一区| 国内精品国产三级国产99| 午夜激情视频在线观看| 久久久国产综合精品女国产盗摄| 国产精品三区www17con| 国产露脸91国语对白| 日韩电影在线一区二区三区| 欧美一区二区三区免费视| 欧美亚洲天堂网| 精品福利av| 欧美巨乳在线观看| 国产十六处破外女视频| 国产精品久久久久久久免费观看 | 精品176二区| 国产精品网站在线播放| 图片区小说区区亚洲五月| 欧美美女搞黄| 久久久91精品国产一区二区三区| 久久av一区二区三区亚洲| 刘亦菲久久免费一区二区| 国产精品一区二区果冻传媒| 成人综合国产精品| 国产美女免费看| 国产一区二区在线观看视频| 91在线观看免费网站| 国产视频在线观看免费 | 亚洲国产精品自拍视频| 精品国产影院| 日韩高清不卡av| 国产麻豆天美果冻无码视频| 亚洲国产精品嫩草影院久久av| 日韩av一卡二卡| 中文字幕丰满孑伦无码专区| 同性恋视频一区| 亚洲午夜精品久久久久久性色| 亚洲v国产v欧美v久久久久久| 不卡视频在线| 久久精品久久久久久国产 免费| 欧美爱爱免费视频| 亚洲图片在线| 青草成人免费视频| 亚洲天堂2021av| 国产福利一区二区三区视频在线 | 手机在线精品视频| 26uuu国产日韩综合| 欧美重口乱码一区二区| 撸视在线观看免费视频| 国产精品麻豆网站| 国产精品日韩三级| 中文字幕不卡三区视频| 欧美日韩在线精品一区二区三区激情 | 色老头在线观看| 午夜成人免费视频| 中文字幕国内自拍| 国产精品亚洲一区二区在线观看| 欧美日韩视频第一区| 天堂网成人在线| 日韩精品免费一区二区夜夜嗨 | 一区二区三区国产在线| 国产精品视频午夜| 欧美一级免费片| 亚洲国产成人在线| 精品丰满人妻无套内射| 成人黄色图片网站| 亚洲国产免费av| 免费黄在线观看| 亚洲小说欧美另类社区| 国产精品久久久久久久久久三级 | 日产欧产va高清| 奇米四色…亚洲| 国产精品一级久久久| 岛国大片在线观看| 亚洲国产裸拍裸体视频在线观看乱了| 国产天堂在线播放| 国产精品x8x8一区二区| 最近2019好看的中文字幕免费| 久久久香蕉视频| 国产综合激情| 国产精品永久免费观看| 日批免费在线观看| 亚洲女性喷水在线观看一区| 日韩无套无码精品| 日韩伦理一区二区三区| 欧美大码xxxx| 97超碰国产在线| 国产亚洲欧美日韩俺去了| 免费看毛片的网址| av在线国产精品| 中文字幕亚洲综合久久筱田步美| 色播视频在线播放| 国产 欧美在线| 中文字幕中文字幕99| 欧美黑人疯狂性受xxxxx野外| 精品国产乱码久久久久久1区2区| 国产男女猛烈无遮挡在线喷水| 91精品国产毛片武则天| 青青在线精品| 丝袜美腿精品国产二区| 7799精品视频天天看| 99久久伊人网影院| 日韩视频免费播放| h视频久久久| 久久99热精品| www.爱爱.com| 一区二区三区美女视频| 五月天婷婷在线观看视频| 999精品视频| 国产精品99蜜臀久久不卡二区| 婷婷在线观看视频| 午夜精品免费在线观看| 欧美日韩一区二区三区四区五区六区| 欧美日本三区| 国产精品毛片一区视频| 日本大片在线播放| 亚洲成年人影院在线| 国产一级一片免费播放放a| 国产河南妇女毛片精品久久久 | av男人的天堂av| 久久精品网址| 日韩亚洲视频在线| 九九热这里有精品| 久久精品人人做人人爽| 国产精品久久久午夜夜伦鲁鲁| 成人免费在线视频| 亚洲高清av一区二区三区| 亚洲一级电影| 久久精品人人做人人爽电影| 亚洲私拍视频| 国产一区二区三区四区福利| 中文亚洲av片在线观看| 亚洲欧洲无码一区二区三区| 午夜影院免费版| 极品av少妇一区二区| 九九99玖玖| 午夜欧美巨大性欧美巨大| 综合网中文字幕| 99久久精品日本一区二区免费| 一级中文字幕一区二区| 精品国产一区在线| 日韩精品一二三四| 一本色道久久综合亚洲精品婷婷| 国产一区精品二区| 国语自产精品视频在线看一大j8| 日韩黄色影片| 在线成人av网站| 久久亚洲av午夜福利精品一区| 91丨九色丨尤物| 久热精品在线播放| 国精品一区二区| 欧美影视一区二区| 无人区乱码一区二区三区| 午夜欧美大片免费观看| 国产三区四区在线观看| 欧美一区二区免费观在线| 国产成人亚洲精品自产在线| 亚洲国产成人私人影院tom| 欧美熟妇另类久久久久久多毛| 亚洲麻豆视频| 亚洲一区3d动漫同人无遮挡 | av白虎一区| 亚洲色图35p| 性色av蜜臀av| 欧洲精品视频在线观看| 久久久久无码国产精品| 中文字幕精品一区二区三区精品| 麻豆传媒在线看| 先锋影音久久久| 欧美大片免费播放| 精品国产日韩欧美| 好吊色欧美一区二区三区四区| 国产毛片精品久久| 88xx成人精品| 亚洲丝袜精品| 色青青草原桃花久久综合 | 97久久精品人人澡人人爽| 中文字幕66页| 天堂一区二区在线| 丁香花在线影院观看在线播放| 欧美大人香蕉在线| 欧美日韩另类综合| av成人app永久免费| 91视频国产一区| 99久久久国产精品免费调教网站 | 国产网址在线观看| 中文字幕中文字幕中文字幕亚洲无线| 国产肉体xxxx裸体784大胆| 国产激情视频一区二区三区欧美 | 熟女熟妇伦久久影院毛片一区二区| 日韩中出av| 国产精成人品localhost| 亚洲成人a级片| 国产精品爽爽爽爽爽爽在线观看| 在线观看爽视频| 性欧美激情精品| 污视频网站免费在线观看| 中文字幕欧美日韩在线| 理论视频在线| 亚洲色图在线观看| 日韩欧美亚洲系列| 日韩高清免费观看| 天天爽夜夜爽夜夜爽| 精品国产一区二区亚洲人成毛片| 国产精品无码专区av免费播放| 欧美日韩一区二区三区四区| 怡红院av久久久久久久| 色综合久久中文综合久久97| 99热在线观看免费精品| 精品国产电影一区| 日韩伦人妻无码| 图片区小说区区亚洲影院| 久久精品国产亚洲av麻豆色欲| 亚洲综合久久久久| 久久久久性色av无码一区二区| 亚洲一区在线观看视频| 久久久久久国产精品免费播放| 亚洲免费av高清| 天天干中文字幕| 一区二区欧美视频| 国产精品9191| 欧美日韩另类视频| 99精品人妻国产毛片| 色视频一区二区| 成人免费一级片| 欧美日本一区二区三区| 国产日本精品视频| 欧美mv日韩mv国产网站app| 日本人妻丰满熟妇久久久久久| 亚洲国产精品成人av| 头脑特工队2在线播放| 亚洲欧洲日本专区| aaa在线免费观看| 久久亚洲私人国产精品va| 在线午夜影院| 91国内免费在线视频| 香蕉久久免费电影| 国产精品丝袜一区二区三区| 高清久久精品| 精品国产乱码久久久久| 精品av一区二区| 正在播放国产精品| 伊人久久综合| 无码少妇一区二区三区芒果| 久久成人av少妇免费| 日本人妻一区二区三区| 久久一夜天堂av一区二区三区| 免费看黄色三级| 一区二区三区在线免费视频| 婷婷激情五月网| 欧美日韩免费一区二区三区 | 国产精品综合av一区二区国产馆| 国产视频精品视频| 国产日韩欧美综合在线| 99视频只有精品| 色综合久久综合网欧美综合网| 国产精品高潮呻吟久久久| 亚洲精品一线二线三线无人区| 久草在线青青草| 欧美乱大交xxxxx另类电影| 亚洲少妇视频| www日韩av| 精品视频免费在线观看| 国产一区二区三区小说| 蜜臀av一区二区| 日批免费观看视频| 中文字幕av一区二区三区高| 九九九国产视频| 欧美日韩电影一区| 肉丝一区二区| 九九精品在线观看| 成人黄色毛片| 久久av免费观看| 好吊一区二区三区| 最新天堂中文在线| 久久老女人爱爱| 黄色一级片在线免费观看| 欧美在线小视频| 天天摸天天碰天天爽天天弄| 久久艳片www.17c.com| 九九九伊在线综合永久| 精品国产一区二区三区四区精华| 久久久久电影| 国产一级做a爰片久久| 波多野结衣中文字幕一区| 欧美色图17p| 91国产精品成人| 天堂国产一区二区三区| 欧美肥老妇视频| 国产精品亚洲欧美一级在线| 亚洲国产精品久久久久久女王| 亚洲欧美日韩专区| 波多野结衣一二三区| 亚洲最新视频在线观看| 国产又爽又黄免费软件| 色噜噜久久综合伊人一本| 高清电影一区| 欧美一区1区三区3区公司 | 欧美少妇xxxx| 国产免费成人在线| 久久亚区不卡日本| 综合激情网五月| 亚洲护士老师的毛茸茸最新章节| 天天干在线视频论坛| 亚洲影院高清在线| 亚洲中无吗在线| 91丝袜超薄交口足| 1区2区3区国产精品| 911美女片黄在线观看游戏| 色小说视频一区| 日韩免费在线电影| 在线免费一区| 国产在线播精品第三| 久久爱一区二区| 91精品国产综合久久久久久久久久| 1024视频在线| 成人av在线天堂| 综合精品一区| 最新中文字幕日本| 亚洲地区一二三色| 日韩a在线看| 国产精品91久久久| 日本a级不卡| 天天色天天综合网| 亚洲黄色在线视频| 日本韩国免费观看| 欧美伊久线香蕉线新在线| 综合亚洲色图| 看欧美ab黄色大片视频免费| 国产精品三级电影| 国产三级漂亮女教师| 欧美精品福利在线| 欧洲在线一区| 九色91popny| 亚洲免费大片在线观看| 图片区 小说区 区 亚洲五月| 热久久免费视频精品| 日本成人小视频| 国产老头和老头xxxx×| 天天影视网天天综合色在线播放| 国内av一区二区三区| 91精品国产自产在线老师啪| 伊人久久久大香线蕉综合直播| 亚洲狠狠婷婷综合久久久久图片| 欧美综合久久久| bt在线麻豆视频| 久久久久久a亚洲欧洲aⅴ| 蜜臀a∨国产成人精品| 欧美成人精品激情在线视频| 日韩精品电影网| 四虎视频在线精品免费网址| 亚洲国产精品无码观看久久| 国产午夜三级一区二区三| a级片在线播放| 欧美在线不卡区| 亚洲成人最新网站| 国产熟妇搡bbbb搡bbbb| 欧美精品第1页| av日韩电影| 国产经典久久久| 久久久精品中文字幕麻豆发布| 国产乱人乱偷精品视频| 欧美一级片免费在线| 你懂的国产精品| 国产精品美女高潮无套|