内容
# 基础范围
**链上AI智能体的只读安全层。**
`basescope`是一个[模型上下文协议](https://modelcontextprotocol.io)(MCP)服务器,为AI助手(如Claude、Cursor和任何MCP客户端)提供**安全、只读**的链上能力,适用于**Base**和其他EVM链。它的任务是在任何钱包签署任何交易之前回答一个问题:
> **"这个代币/合约/批准真的安全吗?"**
它会检查蜜罐、拉毯式局限权、隐藏税收、恶意地址和风险批准,同时查找余额、ENS名称、Basename(`*.base.eth`)、已验证的源代码、gas和价格。
### 为什么它与众不同
- 🔒 **设计上只读。** 没有任何代码路径可以签署或发送交易,**也无法配置任何私钥。** 它无法动用你的资金,因为它根本没有这样做的能力。它是检查者,而不是钱包——一个与具有交易能力的智能体安全相伴的检查者。
- 🔑 **无需API密钥。** 直接使用免费的公共数据源。(可选密钥可以提高速率限制,但不是必需的。)
- 🔵 **优先考虑Base,多链支持。** 为Base进行了优化,同时也支持Ethereum、Optimism、Arbitrum和Polygon。
- 🧩 **一个问题,交叉验证。** 代币安全性在**两个独立的来源**(GoPlus + honeypot.is)中交叉验证,以确保溯源,这样智能体可以看到它们何时存在分歧。
---
## 快速入门
将basescope添加到任何MCP客户端——**Claude Desktop** (`claude_desktop_config.json`),**Cursor** (`.cursor/mcp.json`),或任何其他客户端。无需安装步骤;`npx`会在首次运行时获取它:
```json
{
"mcpServers": {
"basescope": { "command": "npx", "args": ["-y", "basescope"] }
}
}
```
重启客户端并询问类似的问题 *"使用basescope检查Base上代币0x…是否安全。"*
<details>
<summary><b>是否更喜欢从源代码运行?</b></summary>
```bash
git clone https://github.com/chasdaddy/basescope.git
cd basescope
npm install
npm run build
```
然后将服务器`command`设置为`node`,参数为`["/absolute/path/to/basescope/dist/index.js"]`。
</details>
---
## 工具
所有工具都是只读的。`chain`接受`base`(默认)、`ethereum`、`optimism`、`arbitrum`或`polygon`。地址字段接受`0x`地址、ENS名称或Basename(`*.base.eth`)——Basename通过Base L2解析器自动解析。
| 工具 | 功能 |
| --- | --- |
| **check_token_safety** | 蜜罐/拉毯式局评估:蜜罐检查、买卖税、铸造/黑名单/暂停/自毁权限、已验证的源代码、持有者数量 → 归一化的`riskLevel`(`critical`/`high`/`medium`/`low`)。交叉验证GoPlus + honeypot.is。 |
| **check_address_safety** | 针对已知恶意数据库的声誉检查(钓鱼、制裁、诈骗、洗钱、混合器等)。 |
| **get_token_approvals** | 列出钱包的未完成ERC-20批准,并标记风险花费者——最主要的钱包排水向量——并优先显示风险花费者。 |
| **get_verified_source** | 合约的源代码是否已验证(通过Sourcify)+ 其名称、编译器和函数列表。 |
| **inspect_contract** | 地址是否为合约?字节码大小 + 交易数量。 |
| **get_token_info** | ERC-20名称/符号/小数位,以及可选的持有者余额。 |
| **get_native_balance** | 地址或ENS名称的原生币(ETH / POL / …)余额。 |
| **resolve_ens_name** / **reverse_ens_lookup** | ENS名称 → 地址,以及地址 → 主要ENS名称(还报告Base上的主要Basename)。 |
| **resolve_basename** | Basename(`*.base.eth`)→ 地址,通过Base L2解析器 — Coinbase的ENS兼容名称在Base主网。 |
| **get_gas** | 当前gas价格 + EIP-1559费用建议。 |
| **get_token_price** | 代币的当前USD价格(通过DefiLlama)。 |
| **list_supported_chains** | 该服务器可以读取的链。 |
### 示例 - “这个代币安全吗?”
```jsonc
// check_token_safety({ chain: "base", token: "0x…" })
{
"riskLevel": "critical",
"isHoneypot": true,
"buyTaxPct": 0,
"sellTaxPct": 99,
"flags": [
"不能出售全部余额",
"所有者可以铸造更多供应量",
"高卖出税率(99%)"
],
"sources": ["goplus", "honeypot.is"]
}
```
---
## 配置(所有配置均为可选)
所有功能无需配置即可使用。要使用您自己的RPC端点(建议用于更频繁的使用 — 公共RPC端点有限制),请设置以下任意一个:
```
BASE_RPC_URL, ETHEREUM_RPC_URL, OPTIMISM_RPC_URL, ARBITRUM_RPC_URL, POLYGON_RPC_URL
```
## 数据源
站在优秀的免费/开源服务的肩膀上:通过[viem](https://viem.sh) + 公共RPC进行链上读取,通过[GoPlus Security](https://gopluslabs.io)和[honeypot.is](https://honeypot.is)进行代币和地址安全检查,通过[Sourcify](https://sourcify.dev)进行源代码验证,通过[DefiLlama](https://defillama.com)获取价格。
## 限制
`basescope`报告**启发式信号和迹象**,而非保证,并且**不是财务建议**。安全API可能错误或过时;“低风险”结果并非安全承诺。请始终在交易前进行自己的研究。在Base(一个OP-Stack L2)上,`get_gas`仅报告L2费用——总成本还包括L1数据费用。
## 路线图
- 交易/调用数据模拟和解码(“这实际上会做什么?”)
- 可选的Etherscan V2备用源用于源代码和ABI/代理解析
- 更多链
## 许可证
MIT © 2026