Skip to main content
Glama
gatefareio

gatefareio/mcp-server

Official
by gatefareio

@gatefare/mcp

npm version npm downloads bundle size License: MIT CI MCP Registry Base

Дайте своему ИИ-агенту кошелек и доступ к маркетплейсу.

@gatefare/mcp — это сервер протокола Model Context Protocol (MCP), который подключает Claude Desktop, Cursor или любого другого агента, совместимого с MCP, к каталогу платных HTTP API Gatefare. Платежи осуществляются в USDC в сети Base через открытый стандарт x402 — без SaaS-ключей, подписок и эскроу. Без кастодиального хранения: подписание происходит локально; закрытый ключ никогда не покидает ваш компьютер.

Демо: установка, список инструментов, реальный вызов к gatefare.io

┌─────────────┐                ┌──────────────┐                ┌─────────────────┐
│ Claude /    │   MCP stdio    │ @gatefare/mcp│  HTTP + x402   │ gatefare.io     │
│ Cursor /    │ ─────────────► │   (this repo)│ ─────────────► │ proxy +         │
│ your agent  │                │              │                │ catalog         │
└─────────────┘                └──────┬───────┘                └─────────────────┘
                                      │
                                      │ EIP-3009 sign
                                      ▼
                                ┌─────────────┐
                                │  Base USDC  │
                                └─────────────┘

Быстрый старт

1. Добавьте в свой клиент

Claude Desktop~/Library/Application Support/Claude/claude_desktop_config.json (macOS) или %APPDATA%\Claude\claude_desktop_config.json (Windows):

{
  "mcpServers": {
    "gatefare": {
      "command": "npx",
      "args": ["-y", "@gatefare/mcp"]
    }
  }
}

Cursor~/.cursor/mcp.json или .cursor/mcp.json на уровне проекта:

{
  "mcpServers": {
    "gatefare": {
      "command": "npx",
      "args": ["-y", "@gatefare/mcp"]
    }
  }
}

Перезапустите клиент. Теперь у агента есть 5 инструментов только для чтения — поиск и безопасность. Попробуйте:

"Найди в Gatefare API для погоды."

2. Добавьте кошелек для совершения платных вызовов

Добавьте env в тот же файл конфигурации:

{
  "mcpServers": {
    "gatefare": {
      "command": "npx",
      "args": ["-y", "@gatefare/mcp"],
      "env": {
        "WALLET_PRIVATE_KEY": "0xYOUR_KEY",
        "WALLET_BUDGET_USD": "5.00"
      }
    }
  }
}

Инструменты покупателя (call_api, get_wallet_balance, estimate_cost) станут доступны. Лимит WALLET_BUDGET_USD — это защитный механизм во время выполнения; для жесткого ограничения пополняйте кошелек только на ту сумму, которую готовы потратить.

"Какая сейчас погода в Лондоне? Потрать до $0.001."

3. (Опционально) Опубликуйте свои собственные API

Получите PAT на gatefare.io/dashboard/tokens и добавьте:

"env": {
  "GATEFARE_PAT": "gfpat_..."
}

Появятся инструменты издателя (register_api, list_my_apis, update_api, get_revenue, distribute).

"Опубликуй мой API по адресу https://api.example.com/sentiment за $0.001 за вызов."

Related MCP server: GoldBean

Инструменты

13 инструментов в 4 доменах. Инструменты автоматически регистрируются в зависимости от того, какие переменные окружения установлены — агент никогда не увидит инструмент, который не может использовать.

Поиск — всегда доступно

Инструмент

Описание

gatefare.search_apis

Полнотекстовый поиск по каталогу с фильтрами (цена, категория, сортировка)

gatefare.get_api

Полная информация об одном API по слагу или handle/urlName

gatefare.list_categories

Все категории с количеством API

gatefare.suggest

Автодополнение для поискового запроса

Покупатель — требуется WALLET_PRIVATE_KEY

Инструмент

Описание

gatefare.call_api

Совершить платный вызов. Автоматически обрабатывает 402 → подпись → повтор

gatefare.get_wallet_balance

Баланс USDC + ETH в сети Base, плюс оставшийся бюджет

gatefare.estimate_cost

Оценка общей стоимости для N запланированных вызовов

Издатель — требуется GATEFARE_PAT

Инструмент

Описание

gatefare.register_api

Опубликовать новый платный API

gatefare.list_my_apis

Ваши опубликованные API со статистикой

gatefare.update_api

Редактирование метаданных, цены, целевого URL

gatefare.get_revenue

Временные ряды доходов + итоги

gatefare.distribute

Запуск ончейн-выплаты distribute() (деструктивное действие)

Безопасность — всегда доступно

Инструмент

Описание

gatefare.report_abuse

Сообщить о вредоносном / украденном API (DMCA, мошенничество, вредоносное ПО…)

Конфигурация

Переменная

По умолчанию

Требуется для

GATEFARE_BASE_URL

https://gatefare.io

— (переопределите для self-hosted)

WALLET_PRIVATE_KEY

Любой инструмент покупателя

WALLET_BUDGET_USD

без ограничений

Опциональный лимит расходов

WALLET_NETWORK

eip155:8453

eip155:84532 для тестовой сети Sepolia

GATEFARE_PAT

Любой инструмент издателя

LOG_LEVEL

info

debug для подробного вывода в stderr

Примеры

Поиск и покупка за один раз (Claude Desktop)

Вы: Найди мне API погоды дешевле $0.001 и вызови его для "Токио".

Claude: Вызываю gatefare.search_apis с max_price: 0.001 Найден demo-weather от @alice по цене $0.001/вызов. Вызываю gatefare.call_api с slug: "demo-weather", query: {city: "Токио"} В Токио 22°C, переменная облачность. Оплачено 0.001 USDC. Квитанция: settled-tx-0x9a…

Программный доступ — Python-агент

from mcp import ClientSession, StdioServerParameters
from mcp.client.stdio import stdio_client

server = StdioServerParameters(
    command="npx",
    args=["-y", "@gatefare/mcp"],
    env={"WALLET_PRIVATE_KEY": "0x...", "WALLET_BUDGET_USD": "1.00"},
)

async with stdio_client(server) as (r, w):
    async with ClientSession(r, w) as s:
        await s.initialize()
        result = await s.call_tool(
            "gatefare.call_api",
            arguments={"slug": "demo-weather", "query": {"city": "Tokyo"}},
        )
        print(result.content[0].text)

Смотрите examples/ для запускаемых вариантов: Claude Desktop, Cursor, Python, TypeScript и пошаговое руководство по поиску.

Не создаете ИИ-агента? Выбор правильного инструмента

Если вы хотите оплачивать API стандарта x402 из бэкенда (без агента), используйте официальные SDK x402 от Coinbase — x402-python (PyPI), coinbase/x402/go, …/java или @x402/fetch. Они обрабатывают процесс оплаты; этот MCP-сервер вам не нужен.

Если вы хотите просматривать каталог Gatefare из любого языка программирования, обращайтесь напрямую к REST API: gatefare.io/api/catalog (спецификация OpenAPI 3.1).

Полный разбор того, какой инструмент подходит для какого случая использования, находится в docs/integrations.md.

Прямой CLI (для отладки)

# Run the server in foreground; talks JSON-RPC over stdio.
npx -y @gatefare/mcp

# In another terminal, send a frame:
echo '{"jsonrpc":"2.0","id":1,"method":"tools/list","params":{}}' | \
  npx -y @gatefare/mcp

Ошибки

Результаты инструментов включают isError: true и структурированное тело { error: <code>, message: <human>, details?: <any> }. Коды стабильны — агенты могут использовать их для логики повторных попыток или отображения информации.

Код

Значение

INVALID_INPUT

Входные данные не прошли валидацию zod

WALLET_NOT_CONFIGURED

Установите WALLET_PRIVATE_KEY для инструментов покупателя

PAT_NOT_CONFIGURED

Установите GATEFARE_PAT для инструментов издателя

BUDGET_EXHAUSTED

Достигнут лимит бюджета

INSUFFICIENT_BALANCE

На кошельке недостаточно USDC

PRICE_TOO_HIGH

Цена сервера превышает ваш max_price

API_NOT_FOUND

Слаг не существует или приостановлен

UPSTREAM_ERROR

Платный API вернул не 2xx код, или его ответ 402 был некорректен

RATE_LIMITED

Gatefare ограничил частоту запросов

NETWORK_ERROR

Не удалось связаться с Gatefare

GATEFARE_API_ERROR

Gatefare вернул 4xx / 5xx ошибку

Как это работает (кратко)

  1. Агент вызывает gatefare.call_api { slug: "demo-weather", … }.

  2. Мы делаем GET https://gatefare.io/p/demo-weather (оплаты пока нет).

  3. Прокси Gatefare возвращает 402 Payment Required с accepts: [{network, payTo, maxAmountRequired, …}].

  4. Мы подписываем EIP-3009 transferWithAuthorization на точную сумму и получателя в настроенной сети.

  5. Мы повторяем запрос с подписанным заголовком X-Payment (JSON в base64, x402 v2).

  6. Gatefare проверяет подпись, проводит перевод USDC и проксирует вызов к целевому API.

  7. Мы передаем ответ (и квитанцию об оплате) обратно агенту.

Подпись одноразовая, ограничена по времени и никогда не покидает ваш компьютер для любых целей, кроме этого конкретного перевода этому конкретному payTo. Закрытый ключ никогда не логируется.

Безопасность

  • Без кастодиального хранения. Закрытые ключи находятся в вашем окружении, подписание происходит локально, ни один сервис Gatefare их не видит.

  • Устойчивость к путанице сетей. Запросы от вредоносного шлюза, требующего Sepolia для пользователя основной сети, отклоняются — мы никогда не подписываем транзакции для сети, которую пользователь не настраивал.

  • Криптографически случайные нонсы. Никаких коллизий на основе Date.now().

  • Окно валидности ограничено 1 часом, даже если сервер запрашивает больше.

  • Строгая валидация ввода. Слаги имеют вид ^[a-z0-9_-]+$ и URL-кодируются; никакой навигации по путям. targetUrl блокирует file://, localhost, IP метаданных облаков, .local и .internal хосты при регистрации.

  • Гигиена секретов. Тесты гарантируют, что закрытый ключ и PAT никогда не появятся в stderr / stdout.

Разработка

git clone https://github.com/gatefareio/mcp-server.git
cd mcp-server
npm install
npm run typecheck
npm test                  # 138 unit tests
npm run test:e2e          # 10 e2e tests against live gatefare.io (set GATEFARE_E2E=1)
npm run build

Чтобы использовать локальную сборку в конфигурации клиента:

npm link
# in claude_desktop_config.json:
#   "command": "gatefare-mcp"

Архитектура

src/
├── index.ts        # entry — wires stdio transport
├── server.ts       # McpServer instance + tool registration
├── config.ts       # env parsing, capability detection
├── client.ts       # REST client (wraps fetch)
├── x402.ts         # 402 parsing + EIP-3009 signing
├── types.ts        # shared types + GatefareError
└── tools/
    ├── discovery.ts   # search_apis, get_api, list_categories, suggest
    ├── buyer.ts       # call_api, get_wallet_balance, estimate_cost
    ├── publisher.ts   # register_api, list_my_apis, update_api, get_revenue, distribute
    └── safety.ts      # report_abuse

Структура тестов

tests/
├── config.test.ts         # env parsing edges
├── client.test.ts         # HTTP client error mapping
├── x402.test.ts           # signing + parsing primitives
├── x402-flow.test.ts      # full 402 → sign → retry handshake (mocked fetch)
├── server.test.ts         # capability-driven tool registration
├── init.test.ts           # subprocess: bootstrap, env crashes, secret leakage
├── stdio-protocol.test.ts # stdout pollution + recovery from tool errors
├── stability.test.ts      # 100 concurrent calls, memory baseline, ReDoS
├── tools/
│   ├── discovery.test.ts
│   ├── buyer.test.ts
│   ├── buyer-flow.test.ts
│   ├── publisher.test.ts
│   └── safety.test.ts
└── integration/
    └── e2e.test.ts        # real gatefare.io, gated by GATEFARE_E2E=1

Вклад в проект

Проблемы и PR приветствуются. См. CONTRIBUTING.md для ознакомления с рабочим процессом, руководством по стилю и тем, как добавить новый инструмент.

Лицензия

MIT © Gatefare

Ссылки

A
license - permissive license
Not graded
quality - not tested
B
maintenance

Maintenance

Maintainers
15dResponse time
1wRelease cycle
4Releases (12mo)
Commit activity
Issues opened vs closed

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    MCP server for pay-per-call DeFi and crypto data via x402 micropayments on Base. 8 endpoints: token prices, TVL, funding rates, token security, gas tracker, whale monitoring, wallet profiling, and yield scanning.
    8
    46
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    55+ pay-per-call tools for AI agents over MCP: live telemetry, blockchain/on-chain checks, environmental, transit, finance, and network utilities. No API key or signup — agents pay per request with x402 USDC micropayments (Base and Solana).
    MIT
  • F
    license
    Not graded
    quality
    B
    maintenance
    MCP server exposing 1,000+ pay-per-call API endpoints across agent infrastructure (memory, coordination, secrets, verification), data, compute, finance, weather, geography, and reference categories — payments via x402 protocol in USDC on Base.

View all related MCP servers

Related MCP Connectors

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/gatefareio/mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server