项目简介

'atoma-sdk-typescript' 是 Atoma 网络提供的 TypeScript 客户端开发工具包。除了作为标准的 API 客户端库,该 SDK 还内置了作为 Model Context Protocol (MCP) 服务器运行的能力。通过将 SDK 的各种方法封装成 MCP 工具,它允许兼容 MCP 的 LLM 客户端(如 Claude Desktop, Cursor 等)直接发现并调用 Atoma 网络提供的 AI 服务功能。

主要功能点

当作为 MCP 服务器运行时,该项目提供以下核心功能作为 LLM 可调用的工具:

  • 对话补全 (Chat Completions): 允许 LLM 发起对话生成请求,利用 Atoma 网络支持的各种聊天模型。支持常规和机密计算模式。
  • 文本补全 (Completions): 提供传统的文本补全功能,使用兼容 OpenAI Completions API 的请求格式。支持常规和机密计算模式。
  • 文本嵌入 (Embeddings): 使 LLM 能够获取文本的向量嵌入表示,用于语义搜索、文本分析等任务。支持常规和机密计算模式。
  • 图像生成 (Image Generation): 允许 LLM 根据文本描述生成图像。支持常规和机密计算模式。
  • 模型列表查询 (Model Listing): 提供查询 Atoma 网络支持的可用 AI 模型列表的功能。
  • 节点交互 (Node Interaction): 包含与 Atoma 网络节点相关的操作,例如获取机密计算所需的节点公钥。
  • 机密计算 (Confidential Compute): 特别支持通过加密和可信执行环境 (TEE) 进行敏感数据处理的 AI 推理请求,确保数据隐私。

安装步骤

  1. 确保您的系统已安装 Node.js (推荐 v20 或更高版本)。

  2. 使用 npm, pnpm, bun 或 yarn 等包管理器安装 'atoma-sdk' 包:

    npm i atoma-sdk
    # 或者 pnpm add atoma-sdk
    # 或者 bun add atoma-sdk
    # 或者 yarn add atoma-sdk zod

    (注意:使用 Yarn 时,可能需要单独安装 zod 依赖。)

服务器配置

要将此 SDK 配置为 MCP 服务器供 LLM 客户端使用,您需要在客户端的配置文件中添加相应的服务器定义。例如,对于支持 MCP 的桌面应用(如 Claude Desktop 或 Cursor),您可以在其配置文件(如 'claude_desktop_config.json' 或 '.cursor/mcp.json')中添加类似以下 JSON 结构:

{
  "mcpServers": {
    "AtomaSDK": {
      "command": "npx",
      "args": [
        "-y", "--package", "atoma-sdk",
        "--",
        "mcp", "start",
        "--bearer-auth", "YOUR_ATOMA_BEARER_AUTH_TOKEN"
      ]
    }
  }
}

参数说明:

  • '"AtomaSDK"': 这是您给这个 MCP 服务器实例起的名字,LLM 客户端会用这个名字引用它。
  • '"command": "npx"': 指定启动服务器的可执行命令。'npx' 用于执行 Node.js 包内的命令。
  • '"args"': 传递给 'command' 的参数列表。
    • '"-y", "--package", "atoma-sdk"': 这部分告诉 'npx' 使用已安装的 'atoma-sdk' 包。
    • '"--"': 分隔符,表示后面的参数是传递给 'atoma-sdk' 包内的命令。
    • '"mcp", "start"': 这是 'atoma-sdk' 包提供的子命令,用于启动 MCP 服务器模式。
    • '"--bearer-auth", "YOUR_ATOMA_BEARER_AUTH_TOKEN"': 启动 MCP 服务器时传递 Atoma 网络 API 的认证令牌。请务必将 'YOUR_ATOMA_BEARER_AUTH_TOKEN' 替换为您实际的 Atoma 网络认证令牌。

完成配置后,您的 LLM 客户端在启动时应该能够发现并连接到此 MCP 服务器。

基本使用方法

一旦 MCP 服务器在您的 LLM 客户端中配置并启动,LLM 即可通过 MCP 协议与服务器通信。LLM 客户端通常会提供界面或通过 Prompt 中的特殊语法来列出可用的工具并进行调用。您可以让 LLM 尝试调用暴露出的工具,例如进行对话补全或生成图像,服务器会代表 LLM 向 Atoma 网络 API 发送请求并返回结果。

信息

分类

AI与计算