Token导航 LogoToken导航TokenDH.com
seer (The Zacillac) logo
开发工具未说明官方级别未说明来源级核验

seer (The Zacillac)

MCP Server

一个高性能的多接口域名工具套件,提供WHOIS、RDAP、DNS、SSL等信息查询功能,支持终端、Python、REST API和AI助手等多种使用方式。

工具数

15

提示词数

0

GitHub Stars

2

资源数

0
开发工具RustClaudeClaude DesktopClaude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

TheZacillac

提供方

TheZacillac

最后核验

2026/5/17 20:22

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

🔮 先知

域智能触手可及。

一个高性能、多界面的域实用程序套件-从终端、Python、REST API或AI助手查询WHOIS、RDAP、DNS、SSL等。

![CI](https://github.com/TheZacillac/seer/actions/workflows/ci.yml) ![Crates.io](https://crates.io/crates/seer-cli) ![License: MIT](LICENSE) ![Rust](https://www.rust-lang.org) ![Python](https://www.python.org)

特性 · 快速开始 · CLI使用情况 · python · REST API · MCP服务器

______________________________________________________________________

✨ 特性

🔍 查找和发现

  • 智能查找 --具有回退功能的并发RDAP+WHOIS
  • --注册人、注册商和到期数据
  • RDAP --域、IP和ASN的现代协议
  • 域名信息 --将RDAP+WHOIS合并为扁平结构
  • 反向DNS --IP地址的PTR查找
  • TLD信息 --WHOIS服务器、RDAP端点和注册表
  • 子域枚举 --通过证书透明度日志
  • 域可用性 --检查域是否已注册

🌐 DNS和传播

  • DNS解析 --13种带有自定义名称服务器的记录类型
  • DNS传播 --全球6个地区的29台服务器
  • DNS监控 --跟踪记录随时间变化
  • DNS比较 --比较两个名称服务器上的记录
  • DNSSEC验证 --检查DNSSEC配置

🛡️ 安全与健康

  • 域名状态 --HTTP状态、标题、SSL和过期
  • SSL链检查 --全链、SAN、关键细节、有效性
  • 域监视列表 --监控过期证书和注册
  • SSRF保护 --阻止对私有/保留IP的请求

⚡ 电源特性

  • 批量操作 --使用CSV导出处理域列表
  • 域名差异 --两个领域的并排比较
  • 现场提取--quiet --fields 用于可脚本化输出
  • 4种输出格式 --人、JSON、YAML、markdown
  • 交互式REPL --带有标签完成和历史记录
  • 语义退出代码 --用于CI/CD脚本编写
  • 壳牌完井 --bash、zsh、fish、PowerShell

🏗️ 五个接口,一个核心

┌──────────────────────────────────────────────────────────────────┐
│                        User Interfaces                           │
├─────────────┬─────────────┬──────────────┬───────────────────────┤
│  seer-cli   │   seer-py   │   seer-api   │       seer-api        │
│  Terminal   │   Python    │   REST API   │     MCP Server        │
└──────┬──────┴──────┬──────┴──────┬───────┴──────────┬────────────┘
       │             │             │                   │
       │             └─────────────┼───────────────────┘
       │                           │
       ▼                           ▼
┌──────────────────────────────────────────────────────────────────┐
│                          seer-core                                │
│                      Core Rust Library                            │
├──────────┬────────┬──────┬────────┬──────┬──────┬───────────────┤
│  WHOIS   │  RDAP  │ DNS  │ Status │ SSL  │ Bulk │  Diff/Watch   │
└──────────┴────────┴──────┴────────┴──────┴──────┴───────────────┘

______________________________________________________________________

🚀 快速开始

安装CLI

cargo install seer-cli

运行第一次查找

seer lookup example.com        # Smart RDAP + WHOIS lookup
seer dig example.com MX        # DNS query
seer status example.com        # HTTP, SSL, and expiration check
seer ssl example.com           # Full SSL chain inspection
seer                           # Launch interactive REPL

用作Rust库

[dependencies]
seer-core = "0.18"
tokio = { version = "1", features = ["full"] }
要求: Rust 1.70+·Python 3.9+(适用于Python绑定/API)

______________________________________________________________________

📦 包裹

类型安装描述
seer核心Rust库cargo add seer-core核心库——所有业务逻辑
seer cliRust二进制cargo install seer-cliThe seer 命令行工具
seer pyPython扩展maturin develop --release通过PyO3进行Python绑定
seer apiPython包pip install -e .REST API+MCP服务器

seer-cli vs seer-core — which do I need?

seer cliseer core
什么可执行二进制文件Rust库机箱
安装cargo install seer-clicargo add seer-core
使用快跑 seer 在您的终端use seer_core::* Rust代码
提供命令、REPL、格式化输出结构、客户端、异步API
取决于seer核心内部没什么——这是基础

______________________________________________________________________

💻 CLI使用情况

命令模式

# Smart lookup (concurrent RDAP + WHOIS)
seer lookup example.com

# Comprehensive domain info (merged RDAP + WHOIS)
seer info example.com

# WHOIS / RDAP
seer whois example.com
seer rdap example.com           # Domain
seer rdap 8.8.8.8               # IP address
seer rdap AS15169               # ASN

# DNS queries
seer dig example.com             # A records (default)
seer dig example.com MX          # Specific record type
seer dig example.com A -s 8.8.8.8  # Custom nameserver

# DNS propagation & monitoring
seer prop example.com A
seer follow example.com 20 0.5       # 20 checks, 30s interval
seer follow example.com 10 1 MX --changes-only

# DNSSEC & DNS comparison
seer dnssec example.com
seer compare example.com A 8.8.8.8 1.1.1.1

# Domain health & SSL
seer status example.com
seer ssl example.com

# Reverse DNS
seer reverse 8.8.8.8

# Discovery
seer avail example.com
seer subdomains example.com
seer tld .com

# Domain diff
seer diff example.com google.com

# Watchlist
seer watch add example.com
seer watch list
seer watch                        # Check all watched domains
seer watch remove example.com

# Lookup history
seer history example.com
seer history --clear

# Bulk operations (with CSV export)
seer bulk lookup domains.txt
seer bulk status domains.txt -o results.csv
seer bulk dig domains.txt MX
seer bulk avail domains.txt
seer bulk info domains.txt

# Scriptable field extraction
seer --quiet --fields registrar lookup example.com
seer --quiet --fields certificate.issuer status example.com

# Shell completions
seer completions bash >> ~/.bashrc
seer completions zsh >> ~/.zshrc

输出格式

seer --format human lookup example.com      # Colored, human-readable (default)
seer --format json lookup example.com       # JSON
seer --format yaml lookup example.com       # YAML
seer --format markdown lookup example.com   # Markdown table

交互式REPL

通过运行启动 seer 没有争论:

$ seer
seer> lookup example.com
seer> dig github.com MX
seer> status cloudflare.com
seer> set output json
seer> help
seer> exit

功能:命令历史记录(~/.seer_history),选项卡完成,加载微调器,持久会话状态。

______________________________________________________________________

🐍 Python库

import seer

# Smart lookup
result = seer.lookup("example.com")

# WHOIS / RDAP
whois = seer.whois("example.com")
rdap  = seer.rdap_domain("example.com")
rdap  = seer.rdap_ip("8.8.8.8")
rdap  = seer.rdap_asn(15169)

# DNS
records     = seer.dig("example.com", record_type="MX")
propagation = seer.propagation("example.com", record_type="A")

# Domain health & SSL
status = seer.status("example.com")
ssl    = seer.ssl("example.com")
dnssec = seer.dnssec("example.com")

# Availability & info
available = seer.availability("example.com")
info      = seer.info("example.com")

# Comparison & enumeration
diff       = seer.diff("example.com", "google.com")
comparison = seer.dns_compare("example.com", "A", "8.8.8.8", "1.1.1.1")
subdomains = seer.subdomains("example.com")

# Bulk operations
results = seer.bulk_lookup(["example.com", "google.com"], concurrency=10)
results = seer.bulk_status(["example.com", "google.com"])
results = seer.bulk_dig(["example.com", "google.com"], record_type="A")
results = seer.bulk_info(["example.com", "google.com"])

Example: Check SSL Certificate

status = seer.status("example.com")
if cert := status.get("certificate"):
    print(f"SSL Valid: {cert['is_valid']}")
    print(f"Expires:   {cert['valid_until']}")
    print(f"Days left: {cert['days_until_expiry']}")

______________________________________________________________________

🦀 Rust库

[dependencies]
seer-core = "0.18"
tokio = { version = "1", features = ["full"] }
use seer_core::{SmartLookup, DnsResolver, RecordType, StatusClient};

#[tokio::main]
async fn main() -> seer_core::Result {
    // Smart lookup (RDAP → WHOIS fallback)
    let lookup = SmartLookup::new();
    let result = lookup.lookup("example.com").await?;

    // DNS resolution
    let resolver = DnsResolver::new();
    let records = resolver.resolve("example.com", RecordType::MX, None).await?;
    for record in records {
        println!("{}: {}", record.record_type, record.data);
    }

    // Domain status check
    let client = StatusClient::new();
    let status = client.check("example.com").await?;
    println!("HTTP: {:?}", status.http_status);

    Ok(())
}

seer核心/README.md 以获取API的完整参考。

______________________________________________________________________

🌍 REST API

seer-api   # Starts on http://127.0.0.1:8000 (loopback-only by default)

部署说明(重大变更)

  • 默认绑定为 127.0.0.1 (是 0.0.0.0 在以前的版本中)。

要公开绑定,请设置两者 SEER_HOST=0.0.0.0SEER_API_KEY — 服务器拒绝在没有身份验证的情况下在非环回主机上启动 钥匙。

  • /docs, /redoc, /openapi.json 默认情况下禁用。

SEER_DOCS_ENABLED=true 重新启用。

  • 多工作人员部署需要 SEER_RATE_LIMIT_STORAGE. 随着

WEB_CONCURRENCY>1 默认的内存限制是服务器 拒绝启动——每个工人的限制将是微不足道的 可绕过。使用 redis://host:6379 或另一个共享商店。

端点方法描述
/lookup/{domain}GET智能查找(RDAP+WHOIS)
/lookup/bulkPOST批量智能查找
/whois/{domain}获取WHOIS查询
/rdap/domain/{domain}GETRDAP域查找
/rdap/ip/{ip}GETRDAP IP查找
/rdap/asn/{asn}GETRDAP ASN查找
/dns/{domain}/{record_type}GETDNS查询
/dns/bulkPOST批量DNS查询
/propagation/{domain}/{record_type}GETDNS传播检查
/propagation/bulkPOST批量传播检查
/status/{domain}GET域状态检查
/status/bulkPOST批量状态检查
/healthGET健康检查
# Examples
curl http://localhost:8000/lookup/example.com
curl http://localhost:8000/dns/example.com/MX
curl -X POST http://localhost:8000/lookup/bulk \
  -H "Content-Type: application/json" \
  -d '{"domains": ["example.com", "google.com"]}'

API文件(当 SEER_DOCS_ENABLED=true): Swagger用户界面 · 重文档

______________________________________________________________________

🤖 MCP服务器

通过以下方式将Seer与AI助手集成 模型上下文协议:

seer-mcp   # Runs on stdio transport

16种可用工具:

工具说明
seer_lookup智能域查找
seer_info全面的域名信息
seer_whoisWHOIS查询
seer_rdap_domainRDAP域查找
seer_rdap_ipRDAP IP查找
seer_rdap_asnRDAP ASN查找
seer_digDNS查询
seer_propagationDNS传播检查
seer_status域状态检查
seer_bulk_lookup批量智能查找
seer_bulk_whois批量WHOIS查询
seer_bulk_dig批量DNS查询
seer_bulk_status批量状态检查
seer_bulk_propagation批量传播检查
seer_bulk_info批量域信息

Claude Desktop configuration

添加 claude_desktop_config.json:

{
  "mcpServers": {
    "seer": {
      "command": "seer-mcp"
    }
  }
}

______________________________________________________________________

📡 DNS记录类型

类型描述类型描述
AIPv4地址CAACA授权
AAAAIPv6地址PTR指针记录
MX邮件交换SRV服务定位器
TXT文本记录DNSKEYDNSSEC公钥
NS名称服务器DS代表团签字人
SOA开始授权ANY所有记录
CNAME规范名称

______________________________________________________________________

🌏 全局DNS传播服务器

传播检查查询 29个域名服务器 穿过 6个地区:

区域服务器
🇺🇸 北美洲 谷歌 8.8.8.8 ·Cloudflare 1.1.1.1 ·OpenDNS·Quad9·Level3
🇪🇺 欧洲DNS。观看·Mullvad·dns0.eu·Yandex·未经审查的DNS
🌏 亚太阿里DNS·114DNS·腾讯DNSPod·TWNIC·海网
🌎 拉丁美洲Claro 巴西 · Telefonica 巴西 · Antel 乌拉圭 · Telmex · CenturyLink
🌍 非洲Liquid Telecom·SEACOM·Safaricom·MTN南非·埃及电信
🌐 中东阿联酋Etisalat·沙特STC·以色列Bezeq·土耳其电信·卡塔尔Ooredoo

______________________________________________________________________

⚙️ 配置

环境变量

变量描述默认值
RUST_LOG日志记录级别(trace / debug / info / warn / error)
SEER_CORS_ORIGINS用于REST API的逗号分隔CORS起源*
SEER_RATE_LIMITREST API速率限制(请求/分钟)30

配置文件

在以下位置初始化配置文件 ~/.seer/config.toml:

seer config --init

超时

客户端默认值
WHOIS10s
RDAP30秒
DNS5s(重试2次)
HTTP/SSL10s
传播时间:15秒

批量操作

  • 输入: 纯文本(每行一个域)或CSV(第一列)
  • 评论: 以开头的行 # 被跳过
  • 并发: 默认值10,最大值50
  • API限值: 每个请求最多100个域

______________________________________________________________________

🔮 路线图

  • 计划监视守护进程seer monitor --config monitors.toml 作为后台服务,提供过期域、SSL证书和意外DNS更改的通知(电子邮件、Slack、PagerDuty)。自然进化 watch, follow,以及 status 持续监控。

______________________________________________________________________

🛠️ 发展

建筑

cargo build --release                        # All Rust packages
cd seer-py && maturin develop --release      # Python bindings
cd seer-api && pip install -e .              # REST API + MCP server

测试

cargo test                    # All Rust tests
cargo test -p seer-core       # Core library only
cd seer-api && pytest         # Python API tests
RUST_LOG=debug cargo test     # With debug logging

代码检查

cargo fmt --all -- --check    # Format check
cargo clippy -- -D warnings   # Lint

项目结构

seer/
├── Cargo.toml                # Workspace root
├── seer-core/                # Core Rust library (all business logic)
│   └── src/
│       ├── lib.rs            # Module exports
│       ├── error.rs          # Centralized error types
│       ├── lookup.rs         # Smart lookup (RDAP + WHOIS)
│       ├── validation.rs     # Domain validation & SSRF protection
│       ├── config.rs         # Configuration management
│       ├── whois/            # WHOIS client, parser, server mapping
│       ├── rdap/             # RDAP client with IANA bootstrap
│       ├── dns/              # Resolver, propagation, DNSSEC, follow
│       ├── ssl/              # SSL certificate chain inspection
│       ├── status/           # HTTP, SSL, and expiration checking
│       ├── bulk/             # Concurrent bulk executor
│       ├── diff/             # Domain comparison
│       ├── availability/     # Domain availability checking
│       ├── subdomains/       # CT log enumeration
│       ├── tld/              # TLD information
│       ├── watchlist/        # Domain monitoring
│       ├── history/          # Lookup history tracking
│       ├── domain_info/      # Flat domain info structure
│       ├── cache/            # TTL and single-value caching
│       ├── retry/            # Network retry with classification
│       ├── logging/          # Structured logging + OpenTelemetry
│       ├── output/           # Formatters (human/JSON/YAML/markdown)
│       └── colors.rs         # Catppuccin color palette
│
├── seer-cli/                 # CLI application
│   └── src/
│       ├── main.rs           # Clap commands & dispatch
│       ├── display/          # Spinner and progress utilities
│       └── repl/             # Interactive REPL
│
├── seer-py/                  # Python bindings (PyO3)
│   ├── src/lib.rs            # Rust → Python bridge
│   └── python/seer/          # Python package wrapper
│
└── seer-api/                 # FastAPI REST server + MCP
    └── seer_api/
        ├── main.py           # FastAPI app
        ├── routers/          # API endpoint modules
        └── mcp/              # MCP server (16 tools)

______________________________________________________________________

🔧 技术栈

技术
核心Rust·Tokio·Reqwest(rustls)·Hickory解析器(DNSSEC)·Serde·OpenTetry
命令行界面Clap v4·Rustyline·指示性·彩色·交叉项
pythonPyO3(ABI3)·FastAPI·Pydantic·MCP
数据WHOIS服务器来自 WooMai/whis服务器 ·IANA RDAP引导

______________________________________________________________________

📄 许可证

麻省理工学院许可证——版权所有(c)2026 Zac Roach

许可证 全文。

目录标签

目录标签

开发工具RustClaude域名查询本地部署网络诊断信息安全API服务

支持客户端

Claude DesktopClaude

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

none

工具数量(toolCount,工具数)

15

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明none部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP