Token导航 LogoToken导航TokenDH.com
Portal MCP logo
运维云端未说明官方级别未说明来源级核验

Portal MCP

MCP Server

PortalMCP是一个通用AI网关,允许用户通过自然语言将各种AI客户端(如Claude、ChatGPT、Gemini等)连接到以太坊,进行余额查询、代币交换、NFT铸造和智能合约生成与部署。

工具数

17

提示词数

0

GitHub Stars

1

资源数

0
TypeScriptClaude云端部署Claude DesktopClaudeCursorWindsurfCline

安装说明

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

作者 / 组织

PortalFnd

提供方

PortalFnd

最后核验

2026/5/17 20:20

快速接入

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

详细介绍

🌐 PortalMCP

通往以太坊的通用人工智能网关

一台服务器。每一个AI,整个链条。

使用自然语言将任何模型上下文协议客户端(Claude、ChatGPT、Gemini、Cursor、Windsurf、Cline、自定义代理)插入以太坊。检查余额、交换代币、创建NFT、生成和部署智能合约。

![MCP SDK](https://github.com/modelcontextprotocol/typescript-sdk) ![Ethers](https://docs.ethers.org/v6/) ![TypeScript](https://www.typescriptlang.org/) ![License](./LICENSE) ![Release](./CHANGELOG.md)

快速启动 · 设置 · 工具 · 路线图 · 更新日志

______________________________________________________________________

✨ 为什么选择PortalMCP

大多数AI区块链集成将您锁定到一个LLM或一个客户端。PortalMCP符合规范 MCP服务器 --同一台服务器,在本地或您的VPS上运行,为每个支持MCP的客户端供电。

🔐 无监护权的 --私钥永远不会离开你的机器 🛰️ 直播链上下文 --资源将ETH余额、tx收据和令牌元数据直接传输到您的聊天中 🛡️ 安全第一 --每个工具都声明读取/破坏/幂等提示,以便客户端在广播之前进行确认 🧩 通用 --通过stdio和HTTP工作,与所有MCP客户端一起运行

______________________________________________________________________

🧭 兼容客户端

客户运输注意事项
🟣 克劳德桌面版 (macOS/Windows)stdio插入下面的配置
🌐 Claude.ai网络+移动HTTP添加为 *自定义连接器* (专业/团队/企业)
💻 克劳德代码/CLI要么
🧠 光标·风帆·Cline·继续·Zed AIstdio本地MCP
💬 ChatGPT (团队/企业)HTTPMCP连接器
🛠️ ChatGPT自定义GPTREST使用捆绑 openapi.json
✴️ 谷歌Gemini/Vertex代理HTTPMCP连接器
🐍 LangChain·LlamaIndex·OpenAI代理SDK通过他们的MCP适配器
🤖 任何HTTP代理HTTP纯JSON-RPC+SSE打开 /mcp

______________________________________________________________________

🎯 它能做什么

17 tools — click to expand

⚡ 通用

工具动作
eth_get_balance任何地址或默认钱包的ETH余额
eth_call_contract针对任何合约的只读调用+ABI
eth_send_transaction准备一个通用的未签名交易

📜 智能合约

工具动作
eth_generate_contract克劳德从自然语言中创作了《Solidity》
eth_compile_contractsolc编译→ 字节码+ABI
eth_deploy_contract为外部钱包签名准备部署tx
eth_deploy_contract_with_signer使用直接部署 DEPLOYER_PRIVATE_KEY

🪙 ERC-20代币

工具动作
eth_create_token生成ERC-20实体
eth_get_token_balance任何持有人的ERC-20余额
eth_transfer_token已签名的转账或未签名的交易准备

🖼️ ERC-721 NFT

工具动作
eth_create_nft_collection生成ERC-721实体
eth_mint_nft准备 mint / safeMint / mintWithURI
eth_get_nft_ownerownerOf() 查找

🏦 德菲

工具动作
eth_create_staking_contract生成立桩坚固性
eth_stake_tokens准备批准+股份交易
eth_swap_tokens通用Uniswap V3交换(任何ERC-20对)
eth_swap_eth_to_usdt上述便利别名

4 resources (live chain data as context)

URI返回
eth://wallet已配置签名者地址、网络、ETH余额
eth://balance/{address}任何地址的实时ETH余额
eth://tx/{hash}交易+收据(状态、气体、区块、日志、浏览器URL)
eth://token/{address}ERC-20元数据(名称、符号、小数、总供应量)

2 prompts (slash commands)

  • /swap_tokens --引导式代币交换流程
  • /deploy_erc20 --生成→ 编译→ 端到端部署

______________________________________________________________________

🚀 快速启动

git clone https://github.com/PortalFnd/PortalMCP.git
cd PortalMCP/portalmcp
npm install
cp .env.example .env
# fill in .env — ANTHROPIC_API_KEY, DEPLOYER_PRIVATE_KEY,
# and ETHEREUM_RPC_URL (or a real ALCHEMY_API_KEY)
npm run build
npm run smoke          # ✓ 17 tools / 1 resource / 3 templates / 2 prompts
npm start              # stdio (Claude Desktop, Cursor, …)
# or
npm run start:http     # Streamable HTTP on http://0.0.0.0:3333/mcp

______________________________________________________________________

🔌 客户端设置

🟣 Claude Desktop (stdio)

编辑 ~/Library/Application Support/Claude/claude_desktop_config.json (macOS)或 %APPDATA%\Claude\claude_desktop_config.json (Windows):

{
  "mcpServers": {
    "portalmcp": {
      "command": "node",
      "args": ["/absolute/path/to/PortalMCP/portalmcp/dist/index.js"],
      "env": {
        "ETHEREUM_NETWORK": "mainnet",
        "ETHEREUM_RPC_URL": "https://eth-mainnet.g.alchemy.com/v2/YOUR_KEY",
        "DEPLOYER_PRIVATE_KEY": "0x...",
        "ANTHROPIC_API_KEY": "sk-ant-..."
      }
    }
  }
}

重新启动克劳德桌面。17个工具, eth:// 资源,两个斜线命令会自动出现。

🌐 Claude.ai web / mobile (Streamable HTTP)

  1. 使用公共HTTPS URL(Caddy/CCloudflare Tunnel/Nginx)托管HTTP服务器。
  2. MCP_HTTP_TOKEN= 所以只有你才能称之为。
  3. 在Claude.ai中→ 设置→ 连接器→ 添加自定义连接器:

- 网址: https://your-host.example.com/mcp - 认证: Authorization: Bearer

  1. 适用于网络和移动应用程序。

🧠 Cursor / Windsurf / Cline / Continue

所有人都母语为MCP。在他们的MCP配置中添加一个条目,指向:

node /absolute/path/to/PortalMCP/portalmcp/dist/index.js

(与Claude Desktop的stdio命令相同。)

💬 ChatGPT, Gemini, custom agents

首选-MCP连接器 (ChatGPT团队/企业,Gemini/Vertex代理): 指向 https://your-host/mcp,可选地使用Bearer令牌。

传统REST (ChatGPT自定义GPT操作或任何HTTP代理):

npm run start:api
# OpenAPI spec: http://localhost:3001/openapi.json

______________________________________________________________________

💬 示例对话

从头开始部署令牌 *“部署一个名为PortalToken(PRTL)的ERC-20,初始供应量为1000000。”* → eth_generate_contract → 显示代码→ eth_compile_contracteth_deploy_contract_with_signer → 返回合约地址+Etherscan链接。
通用交换 *“将0.01 ETH兑换为USDC。”* → eth_swap_tokens { tokenIn:"ETH", tokenOut:"USDC", amount:"0.01" } --批准(如果需要)并通过Uniswap V3执行。
直播链环境 *“什么是平衡 vitalik.eth?"* → 客户端连接 eth://balance/0xd8dA… 资源直接进入对话。

______________________________________________________________________

⚙️ 配置

全部通过env变量(.env 文件或主机环境变量)。完整列表在 .env.example.

变量必需目的
ETHEREUM_NETWORKmainnet, sepolia, arbitrum, optimism, base, polygon,…(默认值 mainnet)
ETHEREUM_RPC_URL完整的JSON-RPC URL--覆盖Infura/Alchemy密钥设置
ALCHEMY_API_KEYaltKey only——PortalMCP打造现代 g.alchemy.com URL
INFURA_API_KEYaltInfura项目ID
DEPLOYER_PRIVATE_KEY0x-前缀十六进制--启用签名者支持的工具
ANTHROPIC_API_KEY生成For eth_generate_contract
ANTHROPIC_MODEL覆盖默认值 claude-sonnet-4-5-20250929
MCP_HTTP_PORT默认值 3333
MCP_HTTP_HOST默认值 0.0.0.0
MCP_HTTP_TOKEN🛡️HTTP传输的承载令牌
MCP_HTTP_CORS_ORIGIN默认值 *
💡 占位符检测 --任何以以下开头的env值 your_, changeme, xxx, placeholder, `` 被视为未凝固。停止无声的错误配置。

______________________________________________________________________

🌍 支持的网络

L1Ethereum mainnet · Sepolia · Goerli · Holesky L2Arbitrum · Optimism · Base · Polygon (+ every testnet) CustomAny EVM chain — BSC, Avalanche, Linea, zkSync, … — via ETHEREUM_RPC_URL

______________________________________________________________________

🛡️ 安全

  • 🚫 永不承诺 .env --已经在 .gitignore.
  • 🔑 DEPLOYER_PRIVATE_KEY 是一把上膛的枪。 使用专用的代理钱包,只保留您可能会损失的资金。
  • 🛰️ 始终设置 MCP_HTTP_TOKEN 在本地主机之外公开HTTP时,将TLS(Caddy/CCloudflare)放在前面。
  • 🧪 先测试网 --使用 sepolia 对于开发,只有在您验证了流程之后才能使用主网。
  • 🏷️ 工具注释 让客户端在破坏性交易之前提示——不要自动批准它们。
  • 👀 审核生成的Solidityeth_generate_contract 这是一个起点,而不是审计。

______________________________________________________________________

🧑‍💻 发展

npm install
npm run dev          # stdio, ts-node hot-reload
npm run dev:http     # HTTP, ts-node
npm run build        # tsc → dist/
npm run smoke        # assert MCP surface is registered
npm test             # Jest
脚本目的
npm startstdio MCP服务器(prod)
npm run start:http流式HTTP MCP服务器(prod)
npm run start:apiChatGPT操作/HTTP客户端的传统REST
npm run smoke注册烟雾测试——非常适合CI

回购布局

portalmcp/
├── src/
│   ├── index.ts              # stdio entrypoint
│   ├── mcp-http.ts           # Streamable HTTP entrypoint
│   ├── server-factory.ts     # createPortalServer() — shared wiring
│   ├── smoke-test.ts         # CI registration check
│   ├── tools/                # general · contracts · defi · tokens · nfts
│   ├── blockchain/           # EthereumService · CompilerService
│   ├── claude/               # ContractGenerator (Anthropic SDK)
│   ├── contracts/            # Solidity templates
│   └── adapters/             # Legacy REST / LangChain / OpenAI adapters
├── dist/                     # tsc output
├── .env.example
└── package.json

______________________________________________________________________

🏗️ 建筑

          stdio                                 Streamable HTTP (SSE)
┌─────────────────────┐                  ┌─────────────────────────────┐
│  Claude Desktop     │                  │   Claude.ai web + mobile    │
│  Cursor · Windsurf  │                  │   ChatGPT · Gemini          │
│  Cline · Continue   │                  │   Custom agents             │
└─────────┬───────────┘                  └──────────────┬──────────────┘
          │                                             │
          │        ┌──────────────────────┐             │
          └───────▶│   PortalMCP server   │◀────────────┘
                   │  (server-factory.ts) │
                   └──────────┬───────────┘
                              │
       ┌──────────────────────┼──────────────────────┐
       ▼                      ▼                      ▼
  EthereumService         Uniswap V3             Anthropic
  (ethers v6 +        (eth_swap_tokens)      (eth_generate_contract)
   Alchemy/Infura/
   custom RPC)

______________________________________________________________________

🗺️ 路线图亮点

Shipped ✅

MCP SDK 1.29 — stdio + HTTP

17 tools · 1 resource · 3 templates · 2 prompts

Tool annotations + outputSchema

Universal Uniswap V3 swap

L1 + L2 + testnets

Anthropic SDK 0.90 · Claude Sonnet 4.5

Smoke test for CI

Next 🔭

Elicitation (confirm destructive txs)

ENS / gas helpers

Tx simulation with revert decoding

Multi-DEX aggregation (1inch, 0x)

Aave / Compound read positions

Ledger hardware signer

Gnosis Safe + ERC-4337

Docker + Python SDK

完整计划 ROADMAP.md.

______________________________________________________________________

🤝 贡献

PR欢迎!优先领域:更多 outputSchema 覆盖率、附加工具、Docker打包、Python客户端、测试覆盖率。首先打开一个问题,进行非琐碎的更改。

______________________________________________________________________

内置于💜 由 门户基础

目录标签

目录标签

TypeScriptClaude云端部署AI网关本地部署以太坊集成智能合约代币交换NFT

支持客户端

Claude DesktopClaudeCursorWindsurfCline

接入字段

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

未说明

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

token

工具数量(toolCount,工具数)

17

资源数量(resourceCount,资源数)

0

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

0

权限和风险

未说明token部署方式未说明

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

安装前确认

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

仍需确认:installCommand

来源信息

继续浏览同类 MCP