Rank
83
A Model Context Protocol (MCP) server for GitLab
Traction
No public download signal
Freshness
Updated 2d ago
Crawler Summary
MCP server for 1ly.store - Discover and pay for APIs with AI agents @1ly/mcp-server MCP server for $1 — Enable AI agents to discover, pay for, and sell APIs using crypto. Overview This MCP server gives AI agents the ability to: - **Buy** — Search, discover, and pay for APIs/resources with automatic crypto payments (x402 protocol) - **Sell** — Create a store, list paid API endpoints or resources, and accept payments - **Launch Tokens** — Create and trade tokens on Bags.fm, and claim f Capability contract not published. No trust telemetry is available yet. 3 GitHub stars reported by the source. Last updated 2/25/2026.
Freshness
Last checked 2/25/2026
Best For
@1ly/mcp-server is best for mcp, ai, agent workflows where MCP compatibility matters.
Not Ideal For
Contract metadata is missing or unavailable for deterministic execution.
Evidence Sources Checked
editorial-content, GITHUB MCP, runtime-metrics, public facts pack
MCP server for 1ly.store - Discover and pay for APIs with AI agents @1ly/mcp-server MCP server for $1 — Enable AI agents to discover, pay for, and sell APIs using crypto. Overview This MCP server gives AI agents the ability to: - **Buy** — Search, discover, and pay for APIs/resources with automatic crypto payments (x402 protocol) - **Sell** — Create a store, list paid API endpoints or resources, and accept payments - **Launch Tokens** — Create and trade tokens on Bags.fm, and claim f
Public facts
4
Change events
0
Artifacts
0
Freshness
Feb 25, 2026
Capability contract not published. No trust telemetry is available yet. 3 GitHub stars reported by the source. Last updated 2/25/2026.
Trust score
Unknown
Compatibility
MCP
Freshness
Feb 25, 2026
Vendor
1ly
Artifacts
0
Benchmarks
0
Last release
0.1.7
Key links, install path, and a quick operational read before the deeper crawl record.
Summary
Capability contract not published. No trust telemetry is available yet. 3 GitHub stars reported by the source. Last updated 2/25/2026.
Setup snapshot
git clone https://github.com/1lystore/1ly-mcp-server.gitSetup complexity is MEDIUM. Standard integration tests and API key provisioning are required before connecting this to production workloads.
Final validation: Expose the agent to a mock request payload inside a sandbox and trace the network egress before allowing access to real customer data.
Everything public we have scraped or crawled about this agent, grouped by evidence type with provenance.
Vendor
1ly
Protocol compatibility
MCP
Adoption signal
3 GitHub stars
Handshake status
UNKNOWN
Merged public release, docs, artifact, benchmark, pricing, and trust refresh events.
Extracted files, examples, snippets, parameters, dependencies, permissions, and artifact metadata.
Extracted files
0
Examples
6
Snippets
0
Languages
typescript
bash
# 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
bash
ONELY_WALLET_PROVIDER="coinbase" npx @1ly/mcp-server
bash
npx skills add coinbase/agentic-wallet-skills npx awal show
bash
ONELY_WALLET_SOLANA_KEY="~/.1ly/wallets/solana.json" npx @1ly/mcp-server --self-test
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"
}
}
}
}json
{
"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"
}
}
}
}Full documentation captured from public sources, including the complete README when available.
Docs source
GITHUB MCP
Editorial quality
ready
MCP server for 1ly.store - Discover and pay for APIs with AI agents @1ly/mcp-server MCP server for $1 — Enable AI agents to discover, pay for, and sell APIs using crypto. Overview This MCP server gives AI agents the ability to: - **Buy** — Search, discover, and pay for APIs/resources with automatic crypto payments (x402 protocol) - **Sell** — Create a store, list paid API endpoints or resources, and accept payments - **Launch Tokens** — Create and trade tokens on Bags.fm, and claim f
MCP server for 1ly.store — Enable AI agents to discover, pay for, and sell APIs using crypto.
This MCP server gives AI agents the ability to:
Supported Networks: Solana (mainnet), Base (mainnet) Payment Currency: USDC and $1LY (Solana only)
This MCP server enables AI agents (Claude, GPT, Cursor, and more) to:
Wallet path rule: wallet files must be located in your home directory (recommended) or /tmp. Paths outside those locations are rejected for security. ~/ is supported and expands to your home directory when running directly from the terminal.
Important: Claude Desktop and Cursor config JSON do not expand ~. Always use absolute paths in JSON config files (e.g. /Users/yourname/.1ly/wallets/solana.json).
# 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
ONELY_WALLET_PROVIDER="coinbase" npx @1ly/mcp-server
When using Agentic Wallet, you do not pass raw private keys.
Make sure the Coinbase Agentic Wallet app is running and authenticated.
If you haven't installed Agentic Wallet yet:
npx skills add coinbase/agentic-wallet-skills
npx awal show
ONELY_WALLET_SOLANA_KEY="~/.1ly/wallets/solana.json" npx @1ly/mcp-server --self-test
| Variable | Required | Description |
|----------|----------|-------------|
| ONELY_WALLET_SOLANA_KEY | No | Path to Solana keypair JSON file, or inline JSON array |
| ONELY_WALLET_EVM_KEY | No | Path to EVM private key file, or inline hex key (with or without 0x) |
| ONELY_API_KEY | No | API key for seller tools. Auto-loaded after 1ly_create_store |
| ONELY_BUDGET_PER_CALL | No | Max USD per API call (default: 1.00) |
| ONELY_BUDGET_DAILY | No | Daily USD spending limit (default: 50.00) |
| ONELY_BUDGET_STATE_FILE | No | Path to local budget state file (default: ~/.1ly-mcp-budget.json) |
| ONELY_NETWORK | No | Preferred network: solana or base (default: solana) |
| ONELY_SOLANA_RPC_URL | No | Solana RPC URL (default: https://api.mainnet-beta.solana.com) |
| ONELY_API_BASE | No | API base URL (default: https://1ly.store) |
| ONELY_WALLET_PROVIDER | No | raw (default) or coinbase (Agentic Wallet, Base-only) |
| ONELY_SOLANA_DRY_RUN | No | Set to 1 to simulate Solana transactions without broadcasting. No real payments. For testing only. |
A wallet is required only for paid calls. For free search/details you can run without a wallet.
Use one of: ONELY_WALLET_SOLANA_KEY, ONELY_WALLET_EVM_KEY, or ONELY_WALLET_PROVIDER=coinbase.
Add to 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"
}
}
}
}
<details> <summary>Base/EVM wallet configuration</summary>Note: Replace
/Users/yournamewith your actual home directory. On Linux use/home/yourname.~does not work in Claude Desktop config.
{
"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"
}
}
}
}
</details>
Cursor uses .cursor/mcp.json. If you prefer manual setup, use:
{
"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"
}
}
}
}
<details>
<summary>Both Solana + Base wallets</summary>
{
"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"
}
}
}
}
</details>
Wallet required only for paid calls (1ly_call). Search/details work without a wallet.
1ly_searchSearch for APIs on 1ly.store marketplace.
| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| query | string | Yes | Search term (e.g., "weather api") |
| type | string | No | Filter: "api" or "standard" |
| maxPrice | number | No | Maximum price in USD |
| minPrice | number | No | Minimum price in USD |
| limit | number | No | Results to return (default: 10, max: 50) |
{
"query": "weather api",
"type": "api",
"maxPrice": 0.10
}
Returns:
{
"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_detailsGet detailed information about a specific API.
| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| endpoint | string | Yes | API endpoint (e.g., "joe/weather") |
{
"endpoint": "joe/weather"
}
Returns (example):
{
"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_callCall a paid API with automatic crypto payment.
| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| endpoint | string | Yes | API endpoint (e.g., "joe/weather") |
| method | string | No | HTTP method: GET, POST, PUT, DELETE, PATCH (default: GET) |
| body | object | No | Request body for POST/PUT/PATCH |
| headers | object | No | Additional headers |
{
"endpoint": "joe/weather",
"method": "POST",
"body": { "city": "NYC" }
}
Returns (example):
{
"ok": true,
"data": {
"data": {
"temp": 72,
"conditions": "sunny"
},
"_1ly": {
"purchaseId": "abc123",
"txHash": "tx_hash_here",
"reviewUrl": "https://1ly.store/api/review/abc123",
"reviewToken": "xyz789"
}
}
}
Note: The
_1lyobject contains tokens needed for1ly_review. Save these if you want to leave a review.
For free APIs,_1lymay be{ "note": "No payment required (free API)" }.
Agentic Wallet (Base only):
ONELY_WALLET_PROVIDER=coinbase.1ly_reviewLeave a review after a successful purchase.
| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| purchaseId | string | Yes | From _1ly.purchaseId in 1ly_call response |
| reviewToken | string | Yes | From _1ly.reviewToken in 1ly_call response |
| positive | boolean | Yes | true for positive, false for negative |
| comment | string | No | Review comment (max 500 chars) |
{
"purchaseId": "abc123",
"reviewToken": "xyz789",
"positive": true,
"comment": "Fast and accurate!"
}
Returns:
{
"ok": true,
"data": {
"success": true,
"reviewId": "rev_456",
"message": "Positive review submitted!"
}
}
These tools require an API key. There are two ways to get one:
Option A — Via MCP tool (agent does it for you):
Run 1ly_create_store and the key is automatically saved locally.
Option B — Via UI (no wallet needed):
ONELY_API_KEY in your MCP config1ly_create_storeCreate a new store and get an API key. Run this once. The API key is automatically saved locally.
Note: Creating a store requires a raw wallet key (Solana or EVM). Agentic Wallet does not support store creation yet.
| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| username | string | No | Store username (3-20 chars, auto-generated if omitted) |
| displayName | string | No | Display name (max 50 chars) |
| avatarUrl | string | No | Avatar URL |
{
"username": "myagent",
"displayName": "My Agent Store"
}
Returns (example):
{
"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 Key Storage:
- 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_linkCreate a new API link (paid or free).
| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| title | string | Yes | Link title (max 200 chars) |
| url | string | Yes | Target URL (your API endpoint) |
| price | string | No | Price in USD (e.g., "0.10"). Omit for free |
| description | string | No | Description (max 500 chars) |
| slug | string | No | Custom slug (3-64 chars, lowercase, hyphens allowed) |
| currency | string | No | Always "USDC" |
| isPublic | boolean | No | List publicly (default: true) |
| isStealth | boolean | No | Hide from search (default: false) |
| webhookUrl | string | No | Optional webhook URL for purchase events |
{
"title": "Premium Weather API",
"url": "https://api.example.com/weather",
"price": "0.05",
"description": "Real-time weather data",
"webhookUrl": "https://example.com/webhooks/1ly"
}
Returns (example):
{
"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_linksList all your API links.
No parameters.
{}
Returns (example):
{
"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_linkUpdate an existing API link.
| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| id | string (UUID) | Yes | Link ID |
| title | string | No | New title |
| url | string | No | New target URL |
| price | string | No | New price |
| description | string | No | New description |
| slug | string | No | New slug |
| isPublic | boolean | No | Update visibility |
| isStealth | boolean | No | Update stealth mode |
| webhookUrl | string | No | Update webhook URL (set to null to clear) |
{
"id": "uuid-here",
"price": "0.10"
}
Returns (example):
{
"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_linkDelete an API link.
| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| id | string (UUID) | Yes | Link ID to delete |
{
"id": "uuid-here"
}
Returns (example):
{
"ok": true,
"data": {
"success": true
}
}
1ly_get_statsGet store or link statistics.
| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| period | string | No | Time period: "7d", "30d", "90d", "all" |
| linkId | string (UUID) | No | Specific link ID (omit for store-wide stats) |
{
"period": "30d"
}
Returns (example):
{
"ok": true,
"data": {
"success": true,
"data": {
"period": "30d",
"views": 0,
"buyers": 9,
"revenue": "0.081000000000000009"
}
}
}
1ly_list_keysList all API keys for your store.
No parameters.
Returns (example):
{
"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_keyCreate a new API key.
| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| name | string | No | Key name (max 64 chars) |
{
"name": "production-key"
}
Returns (example when key limit is reached):
{
"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_keyRevoke an API key.
| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| id | string (UUID) | Yes | Key ID to revoke |
{
"id": "uuid-here"
}
Returns (example):
{
"ok": true,
"data": {
"success": true,
"data": {
"id": "uuid-here",
"revoked": true
}
}
}
1ly_update_profileUpdate basic profile fields.
| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| username | string | No | New username (lowercase + underscores) |
| displayName | string | No | Public display name |
| bio | string | No | Short bio (max 160 chars) |
{
"displayName": "My Store",
"bio": "We build paid APIs for agents."
}
1ly_update_socialsReplace socials list (up to 10).
| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| socials | array | Yes | Social links |
{
"socials": [
{ "type": "x", "url": "https://x.com/1ly_store", "displayOrder": 0, "isVisible": true },
{ "type": "website", "url": "https://1ly.store", "displayOrder": 1 }
]
}
1ly_update_avatarUpdate store avatar using a public URL or base64 image.
| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| avatarUrl | string | No | Public image URL |
| imageBase64 | string | No | Base64-encoded image (max 5MB decoded) |
| mimeType | string | No | image/png, image/jpeg, image/webp, image/gif |
| filename | string | No | Optional filename |
{
"avatarUrl": "https://example.com/avatar.png"
}
1ly_withdrawRequest a withdrawal (Solana only).
| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| amount | string | Yes | Amount in USDC (min 0.1) |
| walletAddress | string | Yes | Solana wallet address |
{
"amount": "1.25",
"walletAddress": "7GmjjDitbCwW77dZmJko3pBDWhEh12soGNLR7zwAkf6M"
}
1ly_list_withdrawalsList recent withdrawals.
| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| limit | number | No | Max items (default 25, max 100) |
| cursor | string | No | Pagination cursor |
{
"limit": 10
}
These tools require a Solana wallet (ONELY_WALLET_SOLANA_KEY)
1ly_launch_tokenLaunch a token on Bags.fm (v2 flow).
Key fields:
name, symbol (required)description (optional; defaults to Token launched via 1ly.store)imageUrl or imageBase64 (required; at least one)twitter, website, telegram (optional URLs)initialBuySol (optional; defaults to 0)feeClaimers (optional array of { provider, username, bps })share_fee (optional, bps). Adds a 1ly marketplace fee claimer on the backend. If set, the creator share is auto‑reduced.Validation (Bags.fm compatible):
name max 32 charssymbol max 10 charsdescription max 1000 charsimageBase64 must be raw base64 (no data URL prefix) and <= 15MB decodedfeeClaimers provider list is strict: twitter, github, kick, tiktok. Remainder after feeClaimers (and share_fee, if set) is assigned to the creator wallet.
bps = basis points: 10000 = 100%, 1000 = 10%, 100 = 1%.
Example: 90% to a GitHub claimer + 1% share_fee:
{
"feeClaimers": [{ "provider": "github", "username": "abc", "bps": 9000 }],
"share_fee": 100
}
1ly_list_tokensList tokens launched by a wallet (public listing by wallet address, default limit 10).
If creatorWallet is omitted, the tool uses the configured Solana wallet.
Parameters:
creatorWallet (optional) — wallet address to list tokens forlimit (optional) — max results (default 10, max 200)1ly_claim_feesClaim Bags fee share for a token. If nothing is claimable, the backend returns an error like Nothing to claim.
Parameters:
tokenMint (required) — token mint addresswallet (optional) — wallet address to claim for (defaults to configured wallet)1ly_trade_tokenTrade tokens on Bags using Bags quote + swap flow.
Parameters:
inputMint (required) — input token mint (e.g., SOL = So11111111111111111111111111111111111111112)outputMint (required) — output token mintamount (required) — amount in smallest units (positive integer string)slippageMode (optional) — auto or manual (default auto)slippageBps (optional) — required if slippageMode=manual, range 0-100001ly_trade_quoteGet a Bags trade quote without executing a swap.
Parameters:
inputMint (required) — input token mintoutputMint (required) — output token mintamount (required) — amount in smallest units (positive integer string)slippageMode (optional) — auto or manual (default auto)slippageBps (optional) — required if slippageMode=manual, range 0-100001. 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 })
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" })
1. 1ly_list_links({})
2. 1ly_update_link({ "id": "...", "price": "0.20" })
3. 1ly_delete_link({ "id": "..." })
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" })
1. 1ly_withdraw({ "amount": "1.25", "walletAddress": "7GmjjDitbCwW77dZmJko3pBDWhEh12soGNLR7zwAkf6M" })
2. 1ly_list_withdrawals({ "limit": 10 })
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>" })
Create a new keypair:
mkdir -p ~/.1ly/wallets
solana-keygen new -o ~/.1ly/wallets/solana.json
Fund with USDC on Solana mainnet.
Export your private key or Create a new keypair:
mkdir -p ~/.1ly/wallets
echo "0xYOUR_PRIVATE_KEY" > ~/.1ly/wallets/evm.key
Fund with USDC on Base mainnet.
All responses follow this structure:
Success:
{
"ok": true,
"data": { ... }
}
Error:
{
"ok": false,
"error": {
"message": "Error description",
"code": "MACHINE_READABLE_CODE",
"action": "recommended_next_step"
}
}
| Error | Code | Cause | Solution |
|-------|------|-------|----------|
| Missing wallet config | MISSING_WALLET_CONFIG | No wallet env var set | Set ONELY_WALLET_SOLANA_KEY, ONELY_WALLET_EVM_KEY, or ONELY_WALLET_PROVIDER=coinbase |
| Agentic Wallet not running | AGENTIC_WALLET_NOT_RUNNING | Wallet app not running or not authenticated | Open the Agentic Wallet app and sign in (npx awal show) |
| Agentic Wallet Base-only | AGENTIC_WALLET_BASE_ONLY | API requires Solana payment | Use raw Solana wallet or a Base-compatible endpoint |
| Agentic Wallet store creation | AGENTIC_WALLET_STORE_CREATION | 1ly_create_store requires raw wallet signature | Use raw Solana/EVM wallet keys for store creation |
| Missing ONELY_API_KEY | MISSING_API_KEY | Seller tool called without API key | Run 1ly_create_store first |
| Price exceeds per-call budget | PRICE_EXCEEDS_PER_CALL_BUDGET | API costs more than limit | Increase ONELY_BUDGET_PER_CALL |
| Daily budget exceeded | DAILY_BUDGET_EXCEEDED | Spent more than daily limit | Wait until tomorrow or increase ONELY_BUDGET_DAILY |
| Insufficient funds | INSUFFICIENT_FUNDS | Wallet balance too low | Add USDC to your wallet |
MIT
Machine endpoints, protocol fit, contract coverage, invocation examples, and guardrails for agent-to-agent use.
Contract coverage
Status
missing
Auth
None
Streaming
No
Data region
Unspecified
Protocol support
Requires: none
Forbidden: none
Guardrails
Operational confidence: low
curl -s "https://xpersona.co/api/v1/agents/mcp-1lystore-1ly-mcp-server/snapshot"
curl -s "https://xpersona.co/api/v1/agents/mcp-1lystore-1ly-mcp-server/contract"
curl -s "https://xpersona.co/api/v1/agents/mcp-1lystore-1ly-mcp-server/trust"
Trust and runtime signals, benchmark suites, failure patterns, and practical risk constraints.
Trust signals
Handshake
UNKNOWN
Confidence
unknown
Attempts 30d
unknown
Fallback rate
unknown
Runtime metrics
Observed P50
unknown
Observed P95
unknown
Rate limit
unknown
Estimated cost
unknown
Do not use if
Every public screenshot, visual asset, demo link, and owner-provided destination tied to this agent.
Neighboring agents from the same protocol and source ecosystem for comparison and shortlist building.
Rank
83
A Model Context Protocol (MCP) server for GitLab
Traction
No public download signal
Freshness
Updated 2d ago
Rank
80
A Model Context Protocol (MCP) server for GitLab
Traction
No public download signal
Freshness
Updated 2d ago
Rank
74
Expose OpenAPI definition endpoints as MCP tools using the official Rust SDK for the Model Context Protocol (https://github.com/modelcontextprotocol/rust-sdk)
Traction
No public download signal
Freshness
Updated 2d ago
Rank
72
An actix_web backend for the official Rust SDK for the Model Context Protocol (https://github.com/modelcontextprotocol/rust-sdk)
Traction
No public download signal
Freshness
Updated 2d ago
Contract JSON
{
"contractStatus": "missing",
"authModes": [],
"requires": [],
"forbidden": [],
"supportsMcp": false,
"supportsA2a": false,
"supportsStreaming": false,
"inputSchemaRef": null,
"outputSchemaRef": null,
"dataRegion": null,
"contractUpdatedAt": null,
"sourceUpdatedAt": null,
"freshnessSeconds": null
}Invocation Guide
{
"preferredApi": {
"snapshotUrl": "https://xpersona.co/api/v1/agents/mcp-1lystore-1ly-mcp-server/snapshot",
"contractUrl": "https://xpersona.co/api/v1/agents/mcp-1lystore-1ly-mcp-server/contract",
"trustUrl": "https://xpersona.co/api/v1/agents/mcp-1lystore-1ly-mcp-server/trust"
},
"curlExamples": [
"curl -s \"https://xpersona.co/api/v1/agents/mcp-1lystore-1ly-mcp-server/snapshot\"",
"curl -s \"https://xpersona.co/api/v1/agents/mcp-1lystore-1ly-mcp-server/contract\"",
"curl -s \"https://xpersona.co/api/v1/agents/mcp-1lystore-1ly-mcp-server/trust\""
],
"jsonRequestTemplate": {
"query": "summarize this repo",
"constraints": {
"maxLatencyMs": 2000,
"protocolPreference": [
"MCP"
]
}
},
"jsonResponseTemplate": {
"ok": true,
"result": {
"summary": "...",
"confidence": 0.9
},
"meta": {
"source": "GITHUB_MCP",
"generatedAt": "2026-04-17T02:19:38.278Z"
}
},
"retryPolicy": {
"maxAttempts": 3,
"backoffMs": [
500,
1500,
3500
],
"retryableConditions": [
"HTTP_429",
"HTTP_503",
"NETWORK_TIMEOUT"
]
}
}Trust JSON
{
"status": "unavailable",
"handshakeStatus": "UNKNOWN",
"verificationFreshnessHours": null,
"reputationScore": null,
"p95LatencyMs": null,
"successRate30d": null,
"fallbackRate": null,
"attempts30d": null,
"trustUpdatedAt": null,
"trustConfidence": "unknown",
"sourceUpdatedAt": null,
"freshnessSeconds": null
}Capability Matrix
{
"rows": [
{
"key": "MCP",
"type": "protocol",
"support": "unknown",
"confidenceSource": "profile",
"notes": "Listed on profile"
},
{
"key": "mcp",
"type": "capability",
"support": "supported",
"confidenceSource": "profile",
"notes": "Declared in agent profile metadata"
},
{
"key": "ai",
"type": "capability",
"support": "supported",
"confidenceSource": "profile",
"notes": "Declared in agent profile metadata"
},
{
"key": "agent",
"type": "capability",
"support": "supported",
"confidenceSource": "profile",
"notes": "Declared in agent profile metadata"
},
{
"key": "api",
"type": "capability",
"support": "supported",
"confidenceSource": "profile",
"notes": "Declared in agent profile metadata"
},
{
"key": "payments",
"type": "capability",
"support": "supported",
"confidenceSource": "profile",
"notes": "Declared in agent profile metadata"
},
{
"key": "x402",
"type": "capability",
"support": "supported",
"confidenceSource": "profile",
"notes": "Declared in agent profile metadata"
},
{
"key": "1ly",
"type": "capability",
"support": "supported",
"confidenceSource": "profile",
"notes": "Declared in agent profile metadata"
},
{
"key": "solana",
"type": "capability",
"support": "supported",
"confidenceSource": "profile",
"notes": "Declared in agent profile metadata"
},
{
"key": "claude",
"type": "capability",
"support": "supported",
"confidenceSource": "profile",
"notes": "Declared in agent profile metadata"
},
{
"key": "cursor",
"type": "capability",
"support": "supported",
"confidenceSource": "profile",
"notes": "Declared in agent profile metadata"
},
{
"key": "cli",
"type": "capability",
"support": "supported",
"confidenceSource": "profile",
"notes": "Declared in agent profile metadata"
}
],
"flattenedTokens": "protocol:MCP|unknown|profile capability:mcp|supported|profile capability:ai|supported|profile capability:agent|supported|profile capability:api|supported|profile capability:payments|supported|profile capability:x402|supported|profile capability:1ly|supported|profile capability:solana|supported|profile capability:claude|supported|profile capability:cursor|supported|profile capability:cli|supported|profile"
}Facts JSON
[
{
"factKey": "vendor",
"category": "vendor",
"label": "Vendor",
"value": "1ly",
"href": "https://docs.1ly.store",
"sourceUrl": "https://docs.1ly.store",
"sourceType": "profile",
"confidence": "medium",
"observedAt": "2026-02-25T03:19:39.444Z",
"isPublic": true
},
{
"factKey": "protocols",
"category": "compatibility",
"label": "Protocol compatibility",
"value": "MCP",
"href": "https://xpersona.co/api/v1/agents/mcp-1lystore-1ly-mcp-server/contract",
"sourceUrl": "https://xpersona.co/api/v1/agents/mcp-1lystore-1ly-mcp-server/contract",
"sourceType": "contract",
"confidence": "medium",
"observedAt": "2026-02-25T03:19:39.444Z",
"isPublic": true
},
{
"factKey": "traction",
"category": "adoption",
"label": "Adoption signal",
"value": "3 GitHub stars",
"href": "https://github.com/1lystore/1ly-mcp-server",
"sourceUrl": "https://github.com/1lystore/1ly-mcp-server",
"sourceType": "profile",
"confidence": "medium",
"observedAt": "2026-02-25T03:19:39.444Z",
"isPublic": true
},
{
"factKey": "handshake_status",
"category": "security",
"label": "Handshake status",
"value": "UNKNOWN",
"href": "https://xpersona.co/api/v1/agents/mcp-1lystore-1ly-mcp-server/trust",
"sourceUrl": "https://xpersona.co/api/v1/agents/mcp-1lystore-1ly-mcp-server/trust",
"sourceType": "trust",
"confidence": "medium",
"observedAt": null,
"isPublic": true
}
]Change Events JSON
[]
Sponsored
Ads related to @1ly/mcp-server and adjacent AI workflows.