Web3交易管理服务器

Okto Web3 MCP Server是一个用于Claude Desktop的模型上下文协议服务器,支持自动认证,使AI助手能够通过自然语言交互管理Web3交易和投资组合。

  • by okto-hq
  • JavaScript
  • 本地部署
  • 更新于
在 GitHub 查看 okto-hq/okto-mcp-server

使用说明

Okto Web3 MCP服务器

用于Claude Desktop中Okto Web3集成的模型上下文协议(MCP)服务器,支持自动身份验证。该服务器使AI助手能够通过自然语言交互管理Web3交易和投资组合。

特性

  • 查看投资组合详细信息,包括持有量和余额
  • 跨多个链获取帐户信息
  • 查看NFT收藏和作品集
  • 检查交易历史记录
  • 在地址之间转移令牌
  • 支持多个区块链网络
  • 查看支持的链和令牌
  • 具有自动浏览器启动功能的简单OAuth2身份验证流程
  • 支持桌面和Web应用程序凭据
  • 全球凭证存储,方便使用

安装和身份验证

手动安装

  1. 创建Google Cloud项目并获取凭据:

    a.创建谷歌云项目:

    • 首选 谷歌云控制台
    • 创建新项目或选择现有项目
    • 为您的项目启用必要的OAuth作用域

    b.创建OAuth 2.0凭据:

    • 转到“API和服务”>“凭据”
    • 点击“创建凭据”>“OAuth客户端ID”
    • 选择“桌面应用程序”或“Web应用程序”作为应用程序类型
    • 给它起个名字,然后单击“创建”
    • 对于Web应用程序,添加 http://localhost:3000/oauth2callback 到授权的重定向URI
    • 下载客户端OAuth密钥的JSON文件
    • 将密钥文件重命名为 gcp-oauth.keys.json
  2. 设置Okto凭据:

    从获取这些Okto凭据https://dashboard.okto.tech/:

    OKTO_ENVIRONMENT=sandbox
    OKTO_CLIENT_PRIVATE_KEY=your_private_key
    OKTO_CLIENT_SWA=your_swa
    
  3. 运行身份验证:

    您可以通过两种方式进行身份验证:

    a.全局身份验证(推荐):

    # First time: Place gcp-oauth.keys.json in your home directory's .okto-mcp folder
    mkdir -p ~/.okto-mcp
    mv gcp-oauth.keys.json ~/.okto-mcp/
    
    # Run authentication from anywhere
    npx @okto_web3/okto-mcp-server@latest auth
    

    b.本地身份验证:

    # Place gcp-oauth.keys.json in your current directory
    # The file will be automatically copied to global config
    npx @okto_web3/okto-mcp-server@latest auth
    

    身份验证过程将:

    • 寻找 gcp-oauth.keys.json 在当前目录或 ~/.okto-mcp/
    • 如果在当前目录中找到,请将其复制到 ~/.okto-mcp/
    • 打开默认浏览器进行谷歌身份验证
    • 将凭据另存为 ~/.okto-mcp/credentials.json

    备注:

    • 成功身份验证后,凭据将全局存储在 ~/.okto-mcp/ 并且可以从任何目录中使用
    • 支持桌面应用程序和Web应用程序凭据
    • 对于Web应用程序凭据,请确保添加 http://localhost:3000/oauth2callback 到您授权的重定向URI

Claude桌面配置

将以下内容添加到您的Claude Desktop配置文件中(通常位于 ~/Library/Application Support/Claude/claude_desktop_config.json 在 macOS 上:

{
  "mcpServers": {
    "okto": {
      "command": "node",
      "env": {
        "OKTO_ENVIRONMENT": "sandbox",
        "OKTO_CLIENT_PRIVATE_KEY": "your_private_key_here",
        "OKTO_CLIENT_SWA": "your_swa_here"
      },
      "args": [
        "/path/to/okto-mcp-server/build/index.js"
      ]
    }
  }
}

替换:

  • your_private_key_here 使用您的Okto客户端私钥
  • your_swa_here 与你的Okto客户SWA
  • /path/to/okto-mcp-server 使用安装服务器的实际路径

或者,如果你是通过npm安装的:

{
  "mcpServers": {
    "okto": {
      "command": "npx",
      "env": {
        "OKTO_ENVIRONMENT": "sandbox",
        "OKTO_CLIENT_PRIVATE_KEY": "your_private_key_here",
        "OKTO_CLIENT_SWA": "your_swa_here"
      },
      "args": [
        "@okto_web3/okto-mcp-server@latest"
      ]
    }
  }
}

可用工具

服务器提供以下可通过Claude Desktop使用的工具:

1.获取投资组合(get-portfolio)

检索详细的投资组合信息,包括持有量和余额。

2.获取帐户(get-account)

跨多个链检索帐户详细信息。

3.获取NFT集合(get-nft-collections)

列出与帐户关联的所有NFT集合。

4.获取订单历史记录(get-orders-history)

检索交易历史记录。

5.获取NFT投资组合(get-nft-portfolio)

显示详细的NFT持有信息。

6.获取代币(get-tokens)

列出所有可用令牌及其详细信息。

7.代币转移(token-transfer)

在地址之间传输令牌。

{
  "amount": "1000000000000000000",
  "recipient": "0x...",
  "token": "0x...",
  "caip2Id": "eip155:1"
}

8.获取锁链(get-chains)

列出所有支持的区块链网络。

安全说明

  • OAuth凭据安全地存储在您的本地环境中(~/.okto-mcp/)
  • 服务器使用脱机访问来维护持久身份验证
  • 切勿将您的凭据共享或提交给版本控制
  • 定期查看并撤销您Google帐户设置中未使用的访问权限
  • Okto凭据应安全地存储在环境变量中
  • 凭据是全局存储的,但只能由当前用户访问

故障排除

  1. 找不到OAuth密钥

    • 确保 gcp-oauth.keys.json 位于您当前的目录或 ~/.okto-mcp/
    • 检查文件权限
  2. 凭据格式无效

    • 确保您的OAuth密钥文件包含以下内容之一 web 或 installed 凭证
    • 对于web应用程序,请验证重定向URI是否配置正确
  3. 端口已在使用中

    • 如果端口3000已在使用中,请在运行身份验证之前将其释放
    • 您可以使用该端口查找并停止进程
  4. Okto身份验证失败

    • 验证您的环境变量是否设置正确
    • 检查您的Okto凭据是否有效
    • 确保您使用的是正确的环境(沙盒/生产环境)

许可证

国际协调委员会

支持

如果您遇到任何问题或有疑问,请在GitHub存储库上提交问题。