SecOps Field Notes

io.github.getlarkwright由 GitHub 账号 getlarkwright 发布v0.1.1更新于 Nov 7, 2026

CVSS scoring, IOC extraction, email header triage, hash/JWT/timestamp decoding, CISA KEV lookup.

已验证STDIO仅桌面开发者工具安全与监控

概览

AI 生成的概览

本地 MCP 服务器,为助手提供安全研判工具:CVSS 评分、IOC 提取与去毒化、邮件头分析、哈希/JWT/时间戳解码以及 CISA KEV 查询。

可以做什么
  • 对 CVSS 3.1 向量或指标评分,并从文本中提取、还原和去毒化 IP、域名、URL、邮箱、CVE 编号与哈希
  • 分析原始邮件头:Received 链顺序与各跳延迟、来源 IP、SPF/DKIM/DMARC 结论及不一致告警
  • 按格式识别哈希类型,并将 JWT 解码为头部、载荷和可读时间
  • 在 epoch、FILETIME、ISO 8601 与 RFC 2822 之间转换时间戳,并逐层剥离 base64/hex/URL/HTML 实体/ROT13 编码
  • 查询某 CVE 是否在 CISA 已知被利用清单中,并读取最新安全简报
适用场景
适合事件研判、钓鱼邮件分析和漏洞报告等场景:分析人员需要反复为 CVE 评分、从报告中提取指标、检查邮件头或解码令牌与时间戳。它是本地辅助工具,用于在情报富化服务之前和之后的工作,而非替代这些服务。
运行要求
以 stdio 方式作为本地进程运行,可通过 npx(需 Node 18 或更高版本)或已发布的 Docker 镜像启动。无需账号、API 密钥、环境变量或请求头。仅 KEV 查询和最新简报会联网,其余功能离线可用。
安装前请注意
输入为手动粘贴的文本,因此邮件头、令牌和指标会传给助手;KEV 与简报查询会向 CISA 和某个 RSS 源发起请求。JWT 签名不会被验证,解码出的声明不能视为真实可信。它不做情报富化查询,也不读取本地磁盘。

安装

在 SourceWeft 中

  1. 打开 控制台中的 SecOps Field Notes,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

secops-field-notes-mcp

The things a security analyst does by hand a dozen times a shift, as tools your coding agent can call: score a CVE, pull the indicators out of a report and defang them for the ticket, read a phishing email's headers properly, work out what kind of hash that is, decode a JWT, turn a timestamp into something a human can read, peel a base64-of-hex payload, and check whether a CVE is on CISA's exploited-in-the-wild list.

Free, MIT, no account, no telemetry. Everything except the KEV lookup runs entirely on your machine.

Install

Pin the version.

Claude Code

claude mcp add secops-field-notes -- npx -y github:getlarkwright/secops-field-notes-mcp#v0.1.1

Claude Desktop, Cursor, or any client with a JSON config

json
{  "mcpServers": {    "secops-field-notes": {      "command": "npx",      "args": ["-y", "github:getlarkwright/secops-field-notes-mcp#v0.1.1"]    }  }}

Docker

json
{  "mcpServers": {    "secops-field-notes": {      "command": "docker",      "args": ["run", "-i", "--rm", "ghcr.io/getlarkwright/secops-field-notes-mcp:0.1.1"]    }  }}

Node 18 or newer for the npx route. Also in the official MCP registry as io.github.getlarkwright/secops-field-notes-mcp.

Tools

ToolWhat it answersNetwork
cvss_scoreCVSS 3.1 base score from a vector or the eight metrics, exactly as FIRST computes itnone
extract_iocsEvery IP, domain, URL, email, CVE id and hash in a blob of text — refanged on the way in, defanged on the way outnone
defang_texthxxp[://], [.], [at] and backnone
analyze_email_headersThe Received chain in order with hop delays, the origin IP, SPF/DKIM/DMARC, and the mismatches phishing triage looks fornone
identify_hashbcrypt, Argon2, yescrypt, Unix crypt, LM:NT, MD5/NTLM, SHA-1/224/256/384/512 — by shape, with what that impliesnone
decode_jwtHeader, payload, times as dates; flags alg:none, expiry, tokens that never expirenone
convert_timestampEpoch s/ms/µs, Windows FILETIME, ISO 8601, RFC 2822 — into every formnone
decode_layersChain base64 / hex / URL / HTML-entity / ROT13 decoding and see each layernone
lookup_kevIs this CVE exploited in the wild — CISA KEV date added, due date, ransomware use, required actionCISA feed, cached 1h
latest_field_noteWhat got exploited this weekRSS

analyze_email_headers

Paste the raw source. It unfolds the headers, reads the Received lines in chronological order (they are stored newest-first), computes the delay at each hop, finds the first public IP in the chain, reads the authentication verdicts, and then says what a triage analyst would say:

From        "IT Helpdesk" <[email protected]>Reply-To    [email protected]Auth        SPF pass · DKIM pass · DMARC failOrigin IP   192.0.2.44
Received chain (origin first, 3 hops):   1. [10.0.0.5] [192.0.2.44] → relay.example-news.com  2026-09-05 13:59:50Z   2. relay.example-news.com [198.51.100.9] → mx3.corp.example  2026-09-05 14:00:15Z  +25s   3. mx3.corp.example [203.0.113.30] → inbox.corp.example  2026-09-05 14:00:20Z  +5s
Warnings:  ! From domain (corp.example) ≠ Return-Path domain (mailer.example-news.com) …  ! Reply-To goes to a different domain (evil-mail.example) than From (corp.example) — classic BEC pattern.  ! DMARC verdict: fail.

cvss_score

The arithmetic is the FIRST specification's, including the Roundup function done in integer arithmetic so floating-point noise never pushes a 4.0 to a 4.1. Log4Shell's vector scores 10.0; AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H scores 9.8. Both are in the test suite.

What it does not do

  • No account, no signup, no key. No telemetry.
  • Nothing is read from your disk; every input is text you pass in.
  • No verification of JWT signatures — it decodes, and says so on every result.
  • One network call in the package: lookup_kev fetches CISA's public catalog (about 1.7 MB) and keeps it for an hour. Everything else never opens a socket.
  • It does not query VirusTotal, AbuseIPDB or any enrichment service. Those need keys and accounts; this server is for the work you do before and after them.

Licence

MIT © Larkwright LLC. Written by James Son — network, security, and automation engineer. The logic is the same as the free Field Kit desktop app's security tools, so the two stay in step. Corrections welcome.

来源:README.md,提交 ec9e614

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

1
  1. v0.1.1最新Nov 7, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分