Fetter MCP

io.github.fetter-io由 GitHub 帳號 fetter-io 發布v1.0.1更新於 Oct 24, 2026

Real-time Python package and vulnerability data for AI coding agents.

已驗證Streamable HTTP可網頁執行開發者工具安全與監控

概覽

AI 產生的概覽

一個遠端 MCP 伺服器,為編碼助理提供來自 PyPI 與 OSV 的即時 Python 套件版本與弱點資料。

可以做什麼
依套件名稱或版本指定查詢可用版本及其已知弱點,可依 CVSS 門檻篩選、只傳回最高分、限制檢查版本數,並可選擇保留無弱點版本。檢查某個精確固定版本是否有已知 CVE,傳回編號、摘要、CVSS 分數、嚴重程度與參考連結。尋找某套件無已知弱點的最新版本。
適用情境
適合助理在新增、固定或稽核 Python 相依套件時使用,以便選擇沒有已知 CVE 的版本,或回報現有相依清單中的弱點。
執行需求
遠端 HTTP 端點,無需本機安裝或套件。在支援 HTTP 傳輸的 MCP 用戶端註冊伺服器位址。未宣告驗證、環境變數或標頭。需要能連線至該端點的網路。
安裝前請注意
僅做唯讀查詢,不會寫入或安裝任何內容。查詢的套件名稱與版本指定會傳送至該遠端服務,再由其查詢 PyPI 與 OSV。弱點資料來自這些來源,可能不完整或落後於最新公告,固定關鍵相依套件前請自行確認。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Fetter MCP,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Web executable,透過 Streamable HTTP。 遠端服務在工作區中設定後即可從網頁執行環境執行。

交給代理程式安裝

把這段提示詞貼上到 Claude Code、Codex、Cursor 等代理程式,或 SourceWeft 對話中。代理程式會讀取該伺服器的安裝指南,先向你展示發布者、端點和登入方式,經你同意後再把它新增到你的客戶端。金鑰不會寫進任何命令。

閱讀 https://sourceweft.com/mcp/io.github.fetter-io%2Ffetter-mcp/install.md,並按其中說明把這個 MCP 伺服器接入我的客戶端。修改任何設定之前,先告訴我它的發布者、端點和登入方式,等我確認。不要把 API 金鑰寫進命令或我會提交的檔案;問我金鑰應從哪裡取得。

檢視代理程式所依據的安裝指南

其他 MCP 客戶端

把它新增到你客戶端的 mcpServers 設定中。

{
  "mcpServers": {
    "fetter": {
      "type": "http",
      "url": "https://mcp.fetter.io/mcp"
    }
  }
}

README

Fetter MCP

Fetter provides a remote Model Context Protocol (MCP) server at https://mcp.fetter.io/mcp that gives AI coding agents real-time access to Python package vulnerability data. Built on fetter, it queries PyPI and OSV to surface known CVEs, CVSS scores, and safe versions so your agent can make informed dependency decisions as it writes code.

Tools:

  • most_recent_not_vulnerable: find the latest release of a package that is free of known vulnerabilities
  • is_vulnerable: check whether a specific pinned version has known CVEs
  • lookup: find available versions and their vulnerabilities for any package or specifier

Installation

The Fetter MCP server uses the HTTP transport and requires no local installation. Just register the remote URL with your MCP client.

Claude Code

bash
claude mcp add --transport http fetter https://mcp.fetter.io/mcp

Codex

bash
codex mcp add fetter --url https://mcp.fetter.io/mcp

Other MCP Clients

For any other MCP-compatible client, provide the following remote server URL using the HTTP transport:

https://mcp.fetter.io/mcp

Agent Usage

Once installed, the Fetter MCP tools are available to your AI agent during coding sessions. The agent can call them automatically when adding or auditing dependencies; no explicit tool invocation is required in your prompts.

Example prompts

  • "Add the latest safe version of requests to requirements.txt"
  • "Are there any known vulnerabilities in my current dependencies?"
  • "What is the most recent version of pillow with no CVEs?"
  • "Before pinning cryptography, check whether 42.0.5 is vulnerable"

The agent selects the appropriate tool based on context:

  • Adding a new package: most_recent_not_vulnerable to find a safe version
  • Validating a specific pinned version: is_vulnerable for a definitive answer
  • Auditing an existing specifier: lookup to see affected versions

most_recent_not_vulnerable

Find the most recent version of a package that has no known vulnerabilities. Provide only a package name and the server will search recent releases for a safe version. Useful when pinning a dependency to the latest clean release.

Parameters

  • package_name — package name only (no version specifier), e.g. "requests"

Example Request

json
{  "jsonrpc": "2.0",  "method": "tools/call",  "id": 2,  "params": {    "name": "most_recent_not_vulnerable",    "arguments": {      "name": "cryptography"    }  }}

Example Response:

json
{  "jsonrpc": "2.0",  "id": 2,  "result": {    "content": [],    "structuredContent": {      "package": "cryptography",      "version": "46.0.5",      "vulnerabilities": [],      "vulnerable": false    },    "isError": false  }}

is_vulnerable

Check if a specific package version has known vulnerabilities. Requires an exact version specifier. Returns vulnerability IDs, summaries, CVSS scores, severity ratings, and reference URLs.

Parameters

  • dep_spec — exact version specifier, e.g. "requests==2.31.0"

Example Request

json
{  "jsonrpc": "2.0",  "method": "tools/call",  "id": 2,  "params": {    "name": "is_vulnerable",    "arguments": {      "name": "requests==2.19.1"    }  }}

Example Response:

json
{  "jsonrpc": "2.0",  "id": 2,  "result": {    "content": [],    "structuredContent": {      "package": "requests",      "version": "2.19.1",      "vulnerabilities": [        {          "cvss_score": 5.3,          "id": "GHSA-9hjg-9r4m-mvj7",          "severity": "(Medium):",          "summary": "Requests vulnerable to .netrc credentials leak via malicious URLs",          "url": "https://osv.dev/vulnerability/GHSA-9hjg-9r4m-mvj7"        },        {          "cvss_score": 5.6,          "id": "GHSA-9wx4-h78v-vm56",          "severity": "(Medium):",          "summary": "Requests Session object does not verify requests after making first request with verify=False",          "url": "https://osv.dev/vulnerability/GHSA-9wx4-h78v-vm56"        },        {          "cvss_score": 6.1,          "id": "GHSA-j8r2-6x86-q33q",          "severity": "(Medium):",          "summary": "Unintended leak of Proxy-Authorization header in requests",          "url": "https://osv.dev/vulnerability/GHSA-j8r2-6x86-q33q"        },        {          "cvss_score": 7.5,          "id": "GHSA-x84v-xcm2-53pg",          "severity": "(High):",          "summary": "Insufficiently Protected Credentials in Requests",          "url": "https://osv.dev/vulnerability/GHSA-x84v-xcm2-53pg"        },        {          "cvss_score": null,          "id": "PYSEC-2018-28",          "severity": null,          "summary": "",          "url": "https://osv.dev/vulnerability/PYSEC-2018-28"        },        {          "cvss_score": null,          "id": "PYSEC-2023-74",          "severity": null,          "summary": "",          "url": "https://osv.dev/vulnerability/PYSEC-2023-74"        }      ],      "vulnerable": true    },    "isError": false  }}

lookup

Look up a package by name and optional version specifier to find which versions are available and whether they have known vulnerabilities. Supports specifiers such as "requests", "numpy>=2.0", or "flask==3.0.0".

Parameters

  • dep_specs — package name or version specifier
  • cvss_threshold — filter to vulnerabilities at or above this CVSS score (0–10)
  • max_observed_score — return only the highest CVSS score per version rather than all individual vulnerabilities
  • count — limit the number of recent versions checked
  • retain_passing — include versions with no known vulnerabilities in the results

Example Request

json
{  "jsonrpc": "2.0",  "method": "tools/call",  "id": 2,  "params": {    "name": "lookup",    "arguments": {      "name": "requests>=2.32.0",      "retain_passing": true    }  }}

Example Response:

json
{  "jsonrpc": "2.0",  "id": 2,  "result": {    "content": [],    "structuredContent": {      "package": "requests",      "versions": [        {          "version": "2.32.0",          "vulnerabilities": [            {              "cvss_score": 5.3,              "id": "GHSA-9hjg-9r4m-mvj7",              "severity": "(Medium):",              "summary": "Requests vulnerable to .netrc credentials leak via malicious URLs",              "url": "https://osv.dev/vulnerability/GHSA-9hjg-9r4m-mvj7"            }          ],          "vulnerable": true        },        {          "version": "2.32.1",          "vulnerabilities": [            {              "cvss_score": 5.3,              "id": "GHSA-9hjg-9r4m-mvj7",              "severity": "(Medium):",              "summary": "Requests vulnerable to .netrc credentials leak via malicious URLs",              "url": "https://osv.dev/vulnerability/GHSA-9hjg-9r4m-mvj7"            }          ],          "vulnerable": true        },        {          "version": "2.32.2",          "vulnerabilities": [            {              "cvss_score": 5.3,              "id": "GHSA-9hjg-9r4m-mvj7",              "severity": "(Medium):",              "summary": "Requests vulnerable to .netrc credentials leak via malicious URLs",              "url": "https://osv.dev/vulnerability/GHSA-9hjg-9r4m-mvj7"            }          ],          "vulnerable": true        },        {          "version": "2.32.3",          "vulnerabilities": [            {              "cvss_score": 5.3,              "id": "GHSA-9hjg-9r4m-mvj7",              "severity": "(Medium):",              "summary": "Requests vulnerable to .netrc credentials leak via malicious URLs",              "url": "https://osv.dev/vulnerability/GHSA-9hjg-9r4m-mvj7"            }          ],          "vulnerable": true        },        {          "version": "2.32.4",          "vulnerabilities": [],          "vulnerable": false        },        {          "version": "2.32.5",          "vulnerabilities": [],          "vulnerable": false        }      ]    },    "isError": false  }}

來源:README.md,提交 5811ae9

工具

3

lookup

Look up a package by name and (optionally) version number to find which versions are available and/or have vulnerabilities.

輸入參數name必填limitcvss_filterretain_passing

is_vulnerable

Check if a specific package version has known vulnerabilities. Requires an exact version specifier (e.g., 'requests==2.31.0').

輸入參數name必填

most_recent_not_vulnerable

Find the most recent version of a package that has no known vulnerabilities.

輸入參數name必填

版本歷史

1
  1. v1.0.1最新Sep 16, 2026

評分

已滿足適用檢查項的 90%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通必需25 分
  • 已宣告認證方式必需10 分
  • 已列出工具必需15 分
  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分

    請在儲存庫或註冊中心條目中宣告授權條款。