mcpField
1
1ly MCP Server

1ly MCP Server

本地服务
github.com/1lystore金融数据334 周前更新

关于 1ly MCP Server

1ly MCP Server 将 AI Agent 接入 1ly.store API 市场,用于发现、购买和销售 API 服务,也可发行及交易代币。它支持 Solana 和 Base 上的加密货币支付。

主要功能

  1. 01搜索 API 并查看详情
  2. 02通过加密货币支付调用付费 API
  3. 03创建商店和付费 API 链接
  4. 04评价购买记录
  5. 05发行并交易 Bags.fm 代币
  6. 06设置单次和每日支出上限

适用场景

  1. 01按查询词和价格查找 API
  2. 02调用市场中的付费 API
  3. 03发布可收费的 API 端点
  4. 04发行代币并领取费用分成

MCP 相关

该服务向 MCP 客户端提供买方、卖方、评价和代币工具。默认使用 stdio,也可选择 HTTP 传输。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"1ly": {
"command": "npx",
"args": [
"-y",
"@1ly/mcp-server"
],
"env": {
"ONELY_WALLET_SOLANA_KEY": "<ONELY_WALLET_SOLANA_KEY>",
"ONELY_WALLET_EVM_KEY": "<ONELY_WALLET_EVM_KEY>",
"ONELY_API_KEY": "<ONELY_API_KEY>",
"ONELY_WALLET_PROVIDER": "<ONELY_WALLET_PROVIDER>",
"ONELY_NETWORK": "<ONELY_NETWORK>",
"ONELY_SOLANA_RPC_URL": "<ONELY_SOLANA_RPC_URL>",
"ONELY_BUDGET_PER_CALL": "<ONELY_BUDGET_PER_CALL>",
"ONELY_BUDGET_DAILY": "<ONELY_BUDGET_DAILY>",
"ONELY_BUDGET_STATE_FILE": "<ONELY_BUDGET_STATE_FILE>",
"ONELY_SOLANA_DRY_RUN": "<ONELY_SOLANA_DRY_RUN>",
"ONELY_API_BASE": "<ONELY_API_BASE>"
}
}
}
}
启动命令npx -y @1ly/mcp-server
需要配置的环境变量
ONELY_WALLET_SOLANA_KEY密钥Path to Solana keypair JSON file (e.g. /home/user/.1ly/wallets/solana.json) or inline JSON byte array. Required for paid API calls and token tools (launch, trade, claim). Note: Claude Desktop does not expand ~, use absolute paths.
ONELY_WALLET_EVM_KEY密钥Path to EVM private key file or 0x-prefixed hex string. Required for payments on Base network.
ONELY_API_KEY密钥1ly.store seller API key. Auto-saved locally after running the 1ly_create_store tool — you do not need to set this manually. Required for seller tools: manage links, stats, withdrawals, keys, and profile.
ONELY_WALLET_PROVIDERWallet provider to use. 'raw' (default) uses local key files via ONELY_WALLET_SOLANA_KEY or ONELY_WALLET_EVM_KEY. 'coinbase' uses Coinbase Agentic Wallet (Base network only, requires the wallet app running locally).
ONELY_NETWORKPreferred blockchain network for payments. 'solana' (default) or 'base'. Determines which wallet is used when an API supports both networks.
ONELY_SOLANA_RPC_URLSolana RPC endpoint URL. Defaults to https://api.mainnet-beta.solana.com. Use a private RPC (e.g. Helius, Quicknode) for better reliability and rate limits.
ONELY_BUDGET_PER_CALLMaximum USD amount allowed per single paid API call. Defaults to 1.00. The server will refuse any call priced above this limit.
ONELY_BUDGET_DAILYMaximum total USD spending per calendar day (UTC). Defaults to 50.00. Resets at UTC midnight. The server will refuse calls that would exceed this limit.
ONELY_BUDGET_STATE_FILEPath to the local JSON file used to track daily spending. Defaults to ~/.1ly-mcp-budget.json. Created automatically with owner-only permissions (0600).
ONELY_SOLANA_DRY_RUNSet to '1' to simulate Solana transactions without broadcasting to the blockchain. Returns a fake signature. Use for testing only — no real payments will be made.
ONELY_API_BASEOverride the 1ly.store API base URL. Defaults to https://1ly.store. Only http://localhost:PORT is accepted as an alternative (for local development). Do not change in production.

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npm@1ly/mcp-server0.1.7

工具

23

收录的工具列表 · 更新于 3 周前

参数类型必填说明
querystring是搜索词(例如,“weather api”、“image generation”)
typeenum否按链接类型筛选:'api' 表示 API 端点,'standard' 表示数字产品api | standard
maxPricenumber否USD 计价的最高价格
minPricenumber否最低价格(美元)
limitnumber否结果数量(默认:10,最多:50)

详细介绍

@1ly/mcp-server

适用于 1ly.store 的 MCP 服务——让 AI Agent 能够使用加密货币发现、购买和销售 API。

概述

此 MCP 服务让 AI Agent 能够:

  • 购买 — 搜索、发现并支付 API/资源费用,自动完成加密货币支付(x402 协议)
  • 销售 — 创建商店,列出付费 API 端点或资源,并收取款项
  • 发行代币 — 在 Bags.fm 上创建和交易代币,并领取手续费分成

支持的网络: Solana(主网)、Base(主网)
支付货币: USDC 和 $1LY(仅限 Solana)

这是什么?

此 MCP 服务让 AI Agent(Claude、GPT、Cursor 等)能够:

  • 在 1ly.store 上创建商店
  • 使用 1ly 作为支付层,为你的 API/资源收款
  • 创建付费链接,让任何兼容 x402 的 Agent 都能调用并自动付款
  • 在 1ly 市场上列出付费链接,方便 Agent 即时发现
  • 在 1ly.store 上搜索 API 和服务
  • 获取定价、评价和使用情况的详情
  • 安全地调用付费 API,并自动完成加密货币支付(x402 协议)
  • 购买后留下评价(可选,但推荐)
  • 在 Bags.fm 上发行代币、交易 Solana 代币并领取手续费

快速开始

钱包路径规则: 钱包文件必须位于你的主目录(推荐)或 /tmp 中。出于安全考虑,其他位置的路径将被拒绝。直接从终端运行时支持 ~/,并会将其展开为你的主目录。 重要: Claude Desktop 和 Cursor 的配置 JSON 不会展开 ~。在 JSON 配置文件中始终使用绝对路径(例如 /Users/yourname/.1ly/wallets/solana.json)。

1. 安装并运行
选项 A:原始钱包(默认)
# Solana wallet
ONELY_WALLET_SOLANA_KEY="~/.1ly/wallets/solana.json" npx @1ly/mcp-server

# OR Base/EVM wallet
ONELY_WALLET_EVM_KEY="~/.1ly/wallets/evm.key" npx @1ly/mcp-server

# OR both wallets
ONELY_WALLET_SOLANA_KEY="~/.1ly/wallets/solana.json" \
ONELY_WALLET_EVM_KEY="~/.1ly/wallets/evm.key" \
npx @1ly/mcp-server
选项 B:Coinbase Agentic Wallet(仅限 Base)
ONELY_WALLET_PROVIDER="coinbase" npx @1ly/mcp-server

使用 Agentic Wallet 时,不要传入原始私钥。
确保 Coinbase Agentic Wallet 应用正在运行且已通过身份验证。

如果你尚未安装 Agentic Wallet:

npx skills add coinbase/agentic-wallet-skills
npx awal show
选项 C:DCP Local(推荐用于安全签名)
# Start DCP locally
dcp init
npx @dcprotocol/server

# Run MCP (auto-detects DCP at localhost:8420)
npx @1ly/mcp-server
选项 D:DCP Remote(中继)
# Pairing outputs these values
DCP_VAULT_ID="vault_..." \
DCP_RELAY_URL="wss://relay.dcp.1ly.store" \
DCP_VAULT_HPKE_PUBLIC_KEY="base64..." \
npx @1ly/mcp-server
2. 验证设置
ONELY_WALLET_SOLANA_KEY="~/.1ly/wallets/solana.json" npx @1ly/mcp-server --self-test

配置

HTTP 模式(云端 MCP)

通过 HTTP 运行 MCP(用于云端托管或 mcp.1ly.store):

# HTTP transport
MCP_TRANSPORT=http npx @1ly/mcp-server

# Custom host/port
MCP_TRANSPORT=http MCP_HTTP_HOST=0.0.0.0 MCP_HTTP_PORT=3000 npx @1ly/mcp-server
环境变量
变量必填描述
ONELY_WALLET_SOLANA_KEY否Solana 密钥对 JSON 文件的路径,或内联 JSON 数组
ONELY_WALLET_EVM_KEY否EVM 私钥文件的路径,或内联十六进制密钥(带或不带 0x)
ONELY_API_KEY否卖家工具的 API 密钥。在 1ly_create_store 后自动加载
ONELY_BUDGET_PER_CALL否每次 API 调用的最高美元金额(默认值:1.00)
ONELY_BUDGET_DAILY否每日美元支出限额(默认值:50.00)
ONELY_BUDGET_STATE_FILE否本地预算状态文件的路径(默认值:~/.1ly-mcp-budget.json)
ONELY_NETWORK否首选网络:solana 或 base(默认值:solana)
ONELY_SOLANA_RPC_URL否Solana RPC URL(默认值:https://api.mainnet-beta.solana.com)
ONELY_API_BASE否API 基础 URL(默认值:https://1ly.store)
ONELY_WALLET_PROVIDER否raw(默认值)或 coinbase(Agentic Wallet,仅限 Base)
ONELY_SOLANA_DRY_RUN否设置为 1 可模拟 Solana 交易而不广播。不会进行真实支付。仅供测试。
MCP_TRANSPORT否设置为 http 可运行 HTTP MCP 服务(默认值:stdio)
MCP_HTTP_HOST否HTTP MCP 服务的主机(默认值:0.0.0.0)
MCP_HTTP_PORT否HTTP MCP 服务的端口(默认值:3000)
DCP_VAULT_ID否DCP 中继的 Vault ID(远程模式)
DCP_RELAY_URL否中继 URL(例如:wss://relay.dcp.1ly.store)
DCP_RELAY_TOKEN否中继配对令牌(如有需要)
DCP_VAULT_HPKE_PUBLIC_KEY否Vault 的 Base64 HPKE 公钥(远程模式)
DCP_RELAY_PLAINTEXT否设置为 1 可禁用 HPKE(仅限开发环境)

仅付费调用需要钱包。免费搜索和详情查询无需钱包即可运行。 请使用以下其中一项:ONELY_WALLET_SOLANA_KEY、ONELY_WALLET_EVM_KEY 或 ONELY_WALLET_PROVIDER=coinbase。

Claude Desktop 配置

将以下内容添加到 claude_desktop_config.json:

{
  "mcpServers": {
    "1ly": {
      "command": "npx",
      "args": ["@1ly/mcp-server"],
      "env": {
        "ONELY_WALLET_SOLANA_KEY": "/Users/yourname/.1ly/wallets/solana.json",
        "ONELY_BUDGET_PER_CALL": "1.00",
        "ONELY_BUDGET_DAILY": "50.00"
      }
    }
  }
}

注意: 将 /Users/yourname 替换为你的实际主目录。在 Linux 上使用 /home/yourname。在 Claude Desktop 配置中,~ 无效。

Base/EVM 钱包配置
{
  "mcpServers": {
    "1ly": {
      "command": "npx",
      "args": ["@1ly/mcp-server"],
      "env": {
        "ONELY_WALLET_EVM_KEY": "/Users/yourname/.1ly/wallets/evm.key",
        "ONELY_BUDGET_PER_CALL": "1.00",
        "ONELY_BUDGET_DAILY": "50.00"
      }
    }
  }
}
Cursor 一键安装

安装 MCP 服务

Cursor 使用 .cursor/mcp.json。如果你更喜欢手动配置,请使用:

{
  "mcpServers": {
    "1ly": {
      "command": "npx",
      "args": ["@1ly/mcp-server"],
      "env": {
        "ONELY_WALLET_SOLANA_KEY": "/absolute/path/to/solana.json",
        "ONELY_BUDGET_PER_CALL": "1.00",
        "ONELY_BUDGET_DAILY": "50.00"
      }
    }
  }
}
同时配置 Solana 和 Base 钱包
{
  "mcpServers": {
    "1ly": {
      "command": "npx",
      "args": ["@1ly/mcp-server"],
      "env": {
        "ONELY_WALLET_SOLANA_KEY": "~/.1ly/wallets/solana.json",
        "ONELY_WALLET_EVM_KEY": "~/.1ly/wallets/evm.key",
        "ONELY_BUDGET_PER_CALL": "1.00",
        "ONELY_BUDGET_DAILY": "50.00"
      }
    }
  }
}

工具参考

买家工具

仅付费调用(1ly_call)需要钱包。搜索和详情查询无需钱包。

1ly_search

在 1ly.store 市场中搜索 API。

参数类型必填描述
querystring是搜索词(例如,“weather api”)
typestring否筛选条件:"api" 或 "standard"
maxPricenumber否最高价格(美元)
minPricenumber否最低价格(美元)
limitnumber否返回结果数量(默认值:10,最多:50)
{
  "query": "weather api",
  "type": "api",
  "maxPrice": 0.10
}

返回:

{
  "ok": true,
  "data": {
    "results": [
      {
        "title": "Real-time Weather",
        "endpoint": "/api/link/joe/weather",
        "price": "$0.010000000000000000 USDC",
        "type": "api",
        "seller": "Joe's APIs",
        "stats": { "buyers": 150, "rating": "95%" }
      }
    ],
    "total": 42,
    "showing": 10
  }
}

1ly_get_details

获取特定 API 的详细信息。

参数类型必填描述
endpointstring是API 端点(例如,"joe/weather")
{
  "endpoint": "joe/weather"
}

返回(示例):

{
  "ok": true,
  "data": {
    "endpoint": "/api/link/joe/weather",
    "fullUrl": "https://1ly.store/api/link/joe/weather",
    "link": {
      "title": "Real-time Weather",
      "description": "Global weather data",
      "slug": "weather",
      "price": "0.010000000000000000",
      "currency": "USDC"
    },
    "paymentInfo": { "networks": ["solana", "base"] },
    "reviews": {
      "stats": { "total": 50, "positive": 48 },
      "recent": [{ "positive": true, "comment": "Fast!" }]
    }
  }
}

1ly_call

通过自动加密货币付款调用付费 API。

参数类型必填描述
endpointstring是API 端点(例如,"joe/weather")
methodstring否HTTP 方法:GET、POST、PUT、DELETE、PATCH(默认值:GET)
bodyobject否POST/PUT/PATCH 请求正文
headersobject否其他请求头
{
  "endpoint": "joe/weather",
  "method": "POST",
  "body": { "city": "NYC" }
}

返回值(示例):

{
  "ok": true,
  "data": {
    "data": {
      "temp": 72,
      "conditions": "sunny"
    },
    "_1ly": {
      "purchaseId": "abc123",
      "txHash": "tx_hash_here",
      "reviewUrl": "https://1ly.store/api/review/abc123",
      "reviewToken": "xyz789"
    }
  }
}

注意: _1ly 对象包含 1ly_review 所需的令牌。若要留下评价,请保存这些令牌。
对于免费 API,_1ly 可能为 { "note": "No payment required (free API)" }。

Agentic Wallet(仅限 Base):

  • 设置 ONELY_WALLET_PROVIDER=coinbase。
  • 确保 Coinbase Agentic Wallet 已安装、正在运行并已完成身份验证。
  • 无需本地私钥。

1ly_review

购买成功后留下评价。

参数类型必填描述
purchaseIdstring是来自 1ly_call 返回值中的 _1ly.purchaseId
reviewTokenstring是来自 1ly_call 返回值中的 _1ly.reviewToken
positiveboolean是正面评价填 true,负面评价填 false
commentstring否评价内容(最多 500 个字符)
{
  "purchaseId": "abc123",
  "reviewToken": "xyz789",
  "positive": true,
  "comment": "Fast and accurate!"
}

返回值:

{
  "ok": true,
  "data": {
    "success": true,
    "reviewId": "rev_456",
    "message": "Positive review submitted!"
  }
}

卖家工具(收款)

这些工具需要 API 密钥。有两种获取方式:

选项 A — 通过 MCP 工具(由 Agent 代为操作): 运行 1ly_create_store,API 密钥会自动保存在本地。

选项 B — 通过 UI(无需钱包):

  1. 前往 1ly.store 并登录
  2. 打开 Settings → 启用 Developer Mode
  3. 在控制面板中创建 API 密钥
  4. 在 MCP 配置中将其设置为 ONELY_API_KEY
1ly_create_store

创建新商店并获取 API 密钥。只需运行一次。 API 密钥会自动保存在本地。

注意: 创建商店需要原始钱包密钥(Solana 或 EVM)。Agentic Wallet 暂不支持创建商店。

参数类型必填描述
usernamestring否商店用户名(3-20 个字符;若省略则自动生成)
displayNamestring否显示名称(最多 50 个字符)
avatarUrlstring否头像 URL
{
  "username": "myagent",
  "displayName": "My Agent Store"
}

返回值(示例):

{
  "ok": true,
  "data": {
    "success": true,
    "data": {
      "store": {
        "username": "myagent",
        "displayName": "My Agent Store",
        "storeUrl": "https://1ly.store/myagent",
        "createdBy": "agent",
        "avatarUrl": null
      },
      "apiKey": "1ly_live_...",
      "apiKeyPrefix": "1ly_live_..."
    },
    "meta": {
      "savedKeyPath": "~/Library/Application Support/1ly/onely_api_key.json"
    }
  }
}

API 密钥存储位置:

  • macOS:~/Library/Application Support/1ly/onely_api_key.json
  • Linux:~/.config/1ly/onely_api_key.json
  • Windows:%APPDATA%\1ly\onely_api_key.json

1ly_create_link

创建新的 API 链接(付费或免费)。

参数类型必填描述
titlestring是链接标题(最多 200 个字符)
urlstring是目标 URL(你的 API 端点)
pricestring否以 USD 计价的价格(例如,"0.10")。免费时省略
descriptionstring否描述(最多 500 个字符)
slugstring否自定义 slug(3-64 个字符,小写,可使用连字符)
currencystring否始终为 "USDC"
isPublicboolean否公开列出(默认值:true)
isStealthboolean否从搜索结果中隐藏(默认值:false)
webhookUrlstring否可选的购买事件 webhook URL
{
  "title": "Premium Weather API",
  "url": "https://api.example.com/weather",
  "price": "0.05",
  "description": "Real-time weather data",
  "webhookUrl": "https://example.com/webhooks/1ly"
}

返回值(示例):

{
  "ok": true,
  "data": {
    "success": true,
    "data": {
      "id": "uuid-here",
      "slug": "premium-weather-api",
      "fullUrl": "https://1ly.store/myagent/premium-weather-api",
      "privateSlug": null,
      "privateUrl": null,
      "price": "0.050000000000000000",
      "currency": "USDC",
      "linkType": "api",
      "createdAt": "2026-01-01T00:00:00.000Z"
    }
  }
}

1ly_list_links

列出你的所有 API 链接。

无参数。

{}

返回值(示例):

{
  "ok": true,
  "data": {
    "success": true,
    "data": {
      "links": [
        {
          "id": "uuid-here",
          "url": "https://api.example.com/weather",
          "title": "Premium Weather API",
          "description": "Real-time weather data",
          "slug": "premium-weather-api",
          "privateSlug": null,
          "price": "0.050000000000000000",
          "currency": "USDC",
          "isPaid": true,
          "isPublic": true,
          "isActive": true,
          "linkType": "api",
          "isStealth": false,
          "createdAt": "2026-01-01T00:00:00.000Z",
          "updatedAt": "2026-01-01T00:00:00.000Z"
        }
      ]
    }
  }
}

1ly_update_link

更新现有 API 链接。

参数类型必填描述
idstring (UUID)是链接 ID
titlestring否新标题
urlstring否新的目标 URL
pricestring否新价格
descriptionstring否新描述
slugstring否新 slug
isPublicboolean否更新可见性
isStealthboolean否更新隐身模式
webhookUrlstring否更新 webhook URL(设为 null 可清除)
{
  "id": "uuid-here",
  "price": "0.10"
}

返回值(示例):

{
  "ok": true,
  "data": {
    "success": true,
    "data": {
      "id": "uuid-here",
      "profileId": "profile-id",
      "url": "https://api.example.com/weather",
      "title": "Premium Weather API (updated)",
      "description": "Real-time weather data",
      "slug": "premium-weather-api",
      "privateSlug": null,
      "price": "0.100000000000000000",
      "currency": "USDC",
      "isPaid": true,
      "isPublic": true,
      "isActive": true,
      "linkType": "api",
      "isStealth": false,
      "displayOrder": 1,
      "createdAt": "2026-01-01T00:00:00.000Z",
      "updatedAt": "2026-01-01T00:00:00.000Z"
    }
  }
}

1ly_delete_link

删除 API 链接。

参数类型必填描述
idstring (UUID)是要删除的链接 ID
{
  "id": "uuid-here"
}

返回值(示例):

{
  "ok": true,
  "data": {
    "success": true
  }
}

1ly_get_stats

获取商店或链接统计信息。

参数类型必填描述
periodstring否时间段:"7d"、"30d"、"90d"、"all"
linkIdstring (UUID)否指定链接 ID(省略则获取整个商店的统计信息)
{
  "period": "30d"
}

返回值(示例):

{
  "ok": true,
  "data": {
    "success": true,
    "data": {
      "period": "30d",
      "views": 0,
      "buyers": 9,
      "revenue": "0.081000000000000009"
    }
  }
}

1ly_list_keys

列出商店的所有 API 密钥。

无参数。

返回值(示例):

{
  "ok": true,
  "data": {
    "success": true,
    "data": {
      "keys": [
        {
          "id": "uuid-here",
          "name": "Agent Key",
          "keyPrefix": "1ly_live_...",
          "isActive": true,
          "lastUsedAt": "2026-01-01T00:00:00.000Z",
          "createdAt": "2026-01-01T00:00:00.000Z"
        }
      ]
    }
  }
}

1ly_create_key

创建新的 API 密钥。

参数类型必填描述
namestring否密钥名称(最多 64 个字符)
{
  "name": "production-key"
}

达到密钥数量上限时的返回值(示例):

{
  "ok": false,
  "error": {
    "message": "Create key failed | status=400 | ... | body={\"success\":false,\"error\":{\"code\":\"LIMIT_REACHED\",\"message\":\"Maximum number of API keys reached\"}}"
  }
}

1ly_revoke_key

撤销 API 密钥。

参数类型必填描述
idstring (UUID)是要撤销的密钥 ID
{
  "id": "uuid-here"
}

返回值(示例):

{
  "ok": true,
  "data": {
    "success": true,
    "data": {
      "id": "uuid-here",
      "revoked": true
    }
  }
}

1ly_update_profile

更新基本个人资料字段。

参数类型必填描述
usernamestring否新用户名(小写字母 + 下划线)
displayNamestring否公开显示名称
biostring否简短简介(最多 160 个字符)
{
  "displayName": "My Store",
  "bio": "We build paid APIs for agents."
}

1ly_update_socials

替换社交账号列表(最多 10 个)。

参数类型必填描述
socialsarray是社交链接
{
  "socials": [
    { "type": "x", "url": "https://x.com/1ly_store", "displayOrder": 0, "isVisible": true },
    { "type": "website", "url": "https://1ly.store", "displayOrder": 1 }
  ]
}

1ly_update_avatar

使用公开 URL 或 base64 图片更新商店头像。

参数类型必填描述
avatarUrlstring否公开图片 URL
imageBase64string否Base64 编码的图片(解码后最大 5MB)
mimeTypestring否image/png、image/jpeg、image/webp、image/gif
filenamestring否可选文件名
{
  "avatarUrl": "https://example.com/avatar.png"
}

1ly_withdraw

申请提现(仅限 Solana)。

参数类型必填描述
amountstring是USDC 金额(最低 0.1)
walletAddressstring是Solana 钱包地址
{
  "amount": "1.25",
  "walletAddress": "7GmjjDitbCwW77dZmJko3pBDWhEh12soGNLR7zwAkf6M"
}

1ly_list_withdrawals

列出近期提现记录。

参数类型必填描述
limitnumber否最大项目数(默认 25,最多 100)
cursorstring否分页游标
{
  "limit": 10
}

代币工具(Bags.fm)

这些工具需要 Solana 钱包(ONELY_WALLET_SOLANA_KEY)

1ly_launch_token

在 Bags.fm 上发行代币(v2 流程)。

关键字段:

  • name、symbol(必填)
  • description(可选;默认为 Token launched via 1ly.store)
  • imageUrl 或 imageBase64(必填;至少提供一个)
  • twitter、website、telegram(可选 URL)
  • initialBuySol(可选;默认为 0)
  • feeClaimers(可选数组,元素格式为 { provider, username, bps })
  • share_fee(可选,单位为 bps)。在后端添加 1ly 市场费用领取方。如果设置了此项,创建者的分成会自动减少。

验证规则(兼容 Bags.fm):

  • name 最多 32 个字符
  • symbol 最多 10 个字符
  • description 最多 1000 个字符
  • imageBase64 必须是原始 Base64(不含 data URL 前缀),解码后不得超过 15MB

feeClaimers 的 provider 列表是固定的:twitter、github、kick、tiktok。扣除 feeClaimers(以及设置的 share_fee)后,剩余部分将分配给创建者钱包。

bps = 基点:10000 = 100%、1000 = 10%、100 = 1%。
示例:90% 分配给 GitHub 领取方,另设 1% 的 share_fee:

{
  "feeClaimers": [{ "provider": "github", "username": "abc", "bps": 9000 }],
  "share_fee": 100
}
1ly_list_tokens

列出由某个钱包发行的代币(按钱包地址公开列出,默认限制为 10 个)。 如果省略 creatorWallet,工具将使用已配置的 Solana 钱包。

参数:

  • creatorWallet(可选)— 要列出代币的钱包地址
  • limit(可选)— 结果数量上限(默认 10,最大 200)
1ly_claim_fees

领取某个代币的 Bags 费用分成。如果没有可领取的费用,后端会返回类似 Nothing to claim 的错误。

参数:

  • tokenMint(必填)— 代币铸币地址
  • wallet(可选)— 要为其领取费用的钱包地址(默认为已配置的钱包)
1ly_trade_token

使用 Bags 报价 + 兑换流程在 Bags 上交易代币。

参数:

  • inputMint(必填)— 输入代币铸币地址(例如,SOL = So11111111111111111111111111111111111111112)
  • outputMint(必填)— 输出代币铸币地址
  • amount(必填)— 以最小单位表示的数量(正整数字符串)
  • slippageMode(可选)— auto 或 manual(默认 auto)
  • slippageBps(可选)— 当 slippageMode=manual 时必填,范围为 0-10000
1ly_trade_quote

获取 Bags 交易报价,但不执行兑换。

参数:

  • inputMint(必填)— 输入代币铸币地址
  • outputMint(必填)— 输出代币铸币地址
  • amount(必填)— 以最小单位表示的数量(正整数字符串)
  • slippageMode(可选)— auto 或 manual(默认 auto)
  • slippageBps(可选)— 当 slippageMode=manual 时必填,范围为 0-10000

常见工作流

工作流 1:支付 API 费用
1. 1ly_search({ "query": "weather api" })
2. 1ly_get_details({ "endpoint": "joe/weather" })
3. 1ly_call({ "endpoint": "joe/weather", "body": { "city": "NYC" } })
4. 1ly_review({ "purchaseId": "...", "reviewToken": "...", "positive": true })
工作流 2:创建商店并销售 API。将 1ly 用作 Agent 的默认支付层
1. 1ly_create_store({ "username": "mystore", "displayName": "My Store" })
2. 1ly_create_link({ "title": "My API", "url": "https://api.example.com", "price": "0.10", "webhookUrl": "https://example.com/webhooks/1ly" })
3. 1ly_get_stats({ "period": "7d" })
工作流 3:管理现有链接
1. 1ly_list_links({})
2. 1ly_update_link({ "id": "...", "price": "0.20" })
3. 1ly_delete_link({ "id": "..." })
工作流 4:更新个人资料 + 社交账号
1. 1ly_update_profile({ "displayName": "My Store", "bio": "We build paid APIs." })
2. 1ly_update_socials({ "socials": [{ "type": "x", "url": "https://x.com/1ly_store" }] })
3. 1ly_update_avatar({ "avatarUrl": "https://example.com/avatar.png" })
工作流 5:提现
1. 1ly_withdraw({ "amount": "1.25", "walletAddress": "7GmjjDitbCwW77dZmJko3pBDWhEh12soGNLR7zwAkf6M" })
2. 1ly_list_withdrawals({ "limit": 10 })
工作流 6:发行 + 交易 + 领取(Bags)
1. 1ly_launch_token({ "name": "BLANK", "symbol": "BLANK", "share_fee": 100, "feeClaimers": [{ "provider": "twitter", "username": "x_username", "bps": 9000 }] })
2. 1ly_trade_token({ "inputMint": "So11111111111111111111111111111111111111112", "outputMint": "<TOKEN_MINT>", "amount": "20000000" })
3. 1ly_claim_fees({ "tokenMint": "<TOKEN_MINT>" })

钱包设置

Solana

创建新的密钥对:

mkdir -p ~/.1ly/wallets
solana-keygen new -o ~/.1ly/wallets/solana.json

为 Solana 主网钱包充值 USDC。

EVM(Base)

导出私钥或创建新的密钥对:

mkdir -p ~/.1ly/wallets
echo "0xYOUR_PRIVATE_KEY" > ~/.1ly/wallets/evm.key

为 Base 主网钱包充值 USDC。


错误处理

所有响应均遵循以下结构:

成功:

{
  "ok": true,
  "data": { ... }
}

错误:

{
  "ok": false,
  "error": {
    "message": "Error description",
    "code": "MACHINE_READABLE_CODE",
    "action": "recommended_next_step"
  }
}
常见错误
错误代码原因解决方案
Missing wallet configMISSING_WALLET_CONFIG未设置钱包环境变量设置 ONELY_WALLET_SOLANA_KEY、ONELY_WALLET_EVM_KEY 或 ONELY_WALLET_PROVIDER=coinbase
Agentic Wallet not runningAGENTIC_WALLET_NOT_RUNNING钱包应用未运行或尚未通过身份验证打开 Agentic Wallet 应用并登录(npx awal show)
Agentic Wallet Base-onlyAGENTIC_WALLET_BASE_ONLYAPI 需要使用 Solana 付款使用原始 Solana 钱包或兼容 Base 的端点
Agentic Wallet store creationAGENTIC_WALLET_STORE_CREATION1ly_create_store 需要原始钱包签名使用原始 Solana/EVM 钱包密钥创建商店
Missing ONELY_API_KEYMISSING_API_KEY调用卖家工具时未提供 API 密钥先运行 1ly_create_store
Price exceeds per-call budgetPRICE_EXCEEDS_PER_CALL_BUDGETAPI 费用超过限额提高 ONELY_BUDGET_PER_CALL
Daily budget exceededDAILY_BUDGET_EXCEEDED花费超过每日限额等到明天或提高 ONELY_BUDGET_DAILY
Insufficient fundsINSUFFICIENT_FUNDS钱包余额过低向钱包添加 USDC

安全


链接

许可证

MIT

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。