MetalAPI
XAU3 997,89−1,54 %XAG53,936−1,51 %XPT1 554,47−0,83 %XPD1 047,03−0,44 %XCU6,5080+2,29 %WTI103,27+3,82 %BRENT111,70−1,30 %EUR1,120400−0,01 %GBP1,337500−0,01 %JPY0,0063761+0,14 %CHF1,213445−0,25 %TRY0,020125−0,12 %BTC80 329,75−0,55 %ETH2 329,36−1,13 %
Все статьи
ИИMCPClaudeРуководство

Подключите Claude и ChatGPT к актуальным ценам на золото через MCP

Подключите Claude, ChatGPT, Cursor и VS Code к ценам на золото и металлы через MCP-сервер MetalAPI: OAuth или ключ API, инструменты, безопасность и квоты.

Автор: MetalAPI Team··10 мин чтения

Зачем ассистенту инструмент для цен

Спросите чат-ассистента без инструментов о сегодняшней цене золота, и вы получите один из трёх ответов: отказ, число из обучающих данных или догадку, высказанную с неоправданной уверенностью. Ни один из них не полезен. Языковая модель учится на срезе текстов, который заканчивается за несколько месяцев до вашего разговора, а цены на золото, серебро и нефть меняются каждые несколько секунд, пока открыты рынки.

Обычный обходной путь — найти цену самому и вставить её в чат. Для одного вопроса это работает, а дальше начинаются проблемы. Нужно помнить, какую единицу вы скопировали (тройскую унцию или грамм?), в какой валюте и когда было получено число. Задайте уточняющий вопрос о диапазоне цен за прошлый месяц или о пересчёте в турецкие лиры — и вы снова в браузере.

Model Context Protocol (MCP) убирает этот шаг. Ассистент получает небольшой набор инструментов, которые может вызывать сам, и каждый ответ строится на свежем ответе API с собственной меткой времени, базовой валютой и единицей измерения. В этой статье показано, как подключить Claude, ChatGPT, Claude Code, Cursor и VS Code к MCP-серверу MetalAPI, что ассистент умеет после подключения и какие действуют меры защиты.

АспектВвод чисел вручнуюВызов инструмента MCP
СвежестьТо, что вы скопировали, и тогда, когда скопировалиСамая свежая цена, доступная на вашем тарифе, полученная в момент вопроса
Единицы и валютаЛегко перепутать тройские унции, граммы и валютыЯвные аргументы base и unit, которые повторяются в ответе
Метка времениОбычно теряется по дорогеКаждый ответ содержит timestamp и date
Уточняющие вопросыЕщё один поиск вручнуюАссистент вызывает другой инструмент
История и конвертацияОтдельный сайт или электронная таблицаИнструменты для временных рядов, OHLC, изменений и конвертации

Что такое MCP

MCP — открытый протокол, который Anthropic представила в 2024 году и который сейчас поддерживают многие ИИ-приложения. Он стандартизирует то, как ассистент взаимодействует с внешними инструментами и данными. MCP-сервер публикует список инструментов. У каждого инструмента есть имя, описание обычным языком, JSON-схема аргументов и необязательные аннотации, например «только чтение». MCP-клиент (Claude, ChatGPT, Cursor, VS Code и другие) читает этот список, позволяет модели решать, когда инструмент уместен, отправляет вызов на сервер и передаёт результат обратно модели.

Сама модель никогда не видит ваших учётных данных и не обращается к API напрямую. Она формирует структурированный запрос вида «вызови get_latest_prices с symbols: XAU и base: EUR», клиент его выполняет, а модель пишет ответ на основе вернувшегося JSON.

Сервер MetalAPI находится по адресу https://metalapi.com/mcp. Он работает по Streamable HTTP — удалённому транспорту из спецификации MCP — и не хранит состояние: каждый вызов — это независимый HTTPS-запрос с ответом в JSON, поэтому поддерживать долгоживущую сессию не нужно. Сервер опубликован в официальном MCP Registry как com.metalapi/metalapi. Если открыть этот URL в браузере, вы попадёте на обзорную страницу ИИ и MCP.

Вход через OAuth или ключ API

Каждый вызов сервера аутентифицируется. Есть два способа, и подходящий зависит от клиента:

  • OAuth 2.1 (вход в аккаунт) для приложений с экраном коннекторов, таких как Claude и ChatGPT. Клиент сам находит сервер авторизации: вызов без аутентификации получает ответ 401 с заголовком WWW-Authenticate, который указывает на метаданные защищённого ресурса. Затем клиент регистрируется через динамическую регистрацию клиентов и открывает страницу входа MetalAPI. Используется PKCE, поэтому встраивать в приложение секрет клиента не нужно. Вы входите в аккаунт (или создаёте бесплатный) и подтверждаете подключение.
  • Ключ API для инструментов разработчика, которые позволяют задавать HTTP-заголовки, таких как Claude Code, Cursor и VS Code. Вы передаёте тот же ключ, что и для REST API, в виде Authorization: Bearer mk_live_….

Оба способа ведут к одному и тому же аккаунту, тарифу и квоте. Разница есть только в списке инструментов: create_api_key доступен лишь при подключении через OAuth. Ключ, скопированный в файл конфигурации, не должен иметь возможности выпускать новые ключи, поэтому при подключении по ключу видно двенадцать инструментов вместо тринадцати.

Подключения через OAuth перечислены в личном кабинете в разделе Settings → Connected apps, где любое из них можно отключить. Ключи API можно перевыпустить или отозвать в разделе API keys. Относитесь к ключу в файле конфигурации MCP точно так же, как к ключу в исходном коде.

Подключение Claude и ChatGPT

Для Claude на claude.ai и в Claude Desktop:

  1. Откройте Settings → Connectors и выберите Add custom connector.
  2. Назовите его MetalAPI и укажите https://metalapi.com/mcp.
  3. Нажмите Connect, войдите в MetalAPI (или создайте бесплатный аккаунт) и нажмите Allow.

Для ChatGPT откройте Settings → Apps & Connectors и создайте коннектор в режиме разработчика с URL https://metalapi.com/mcp и аутентификацией OAuth. ChatGPT откроет страницу входа MetalAPI; подтвердите подключение, и инструменты станут доступны в ваших чатах. Возможность добавлять собственные коннекторы зависит от вашего тарифа ChatGPT, а в рабочем пространстве — от того, что разрешает администратор.

Названия пунктов меню в обоих приложениях время от времени меняются. В руководстве по настройке MCP всегда приведены актуальные шаги для каждого клиента.

В первом разговоре полезно назвать источник («По данным MetalAPI, сколько…»), чтобы ассистент обратился к инструменту, а не к своей памяти. После этого большинство ассистентов сами выбирают инструмент, когда вопрос касается цены.

Подключение Claude Code, Cursor и VS Code

Ассистенты для программирования обычно работают с ключом API. Создайте ключ в личном кабинете (для начала хватит тарифа Free) и используйте отдельный ключ для каждого инструмента, чтобы можно было отозвать один, не затрагивая остальные.

В Claude Code добавьте сервер из терминала:

Claude Code
claude mcp add --transport http metalapi https://metalapi.com/mcp \
  --header "Authorization: Bearer YOUR_API_KEY"

Если не хотите хранить ключ, добавьте сервер без --header и выполните /mcp в Claude Code, чтобы войти через OAuth.

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

~/.cursor/mcp.json
{
  "mcpServers": {
    "metalapi": {
      "url": "https://metalapi.com/mcp",
      "headers": { "Authorization": "Bearer YOUR_API_KEY" }
    }
  }
}

В VS Code с GitHub Copilot сохраните следующий код как .vscode/mcp.json. Благодаря блоку inputs VS Code один раз запросит ключ и надёжно его сохранит, так что сам ключ никогда не попадает в файл:

.vscode/mcp.json
{
  "inputs": [
    { "type": "promptString", "id": "metalapi-key", "description": "MetalAPI API key", "password": true }
  ],
  "servers": {
    "metalapi": {
      "type": "http",
      "url": "https://metalapi.com/mcp",
      "headers": { "Authorization": "Bearer ${input:metalapi-key}" }
    }
  }
}

Другие клиенты с поддержкой удалённых MCP-серверов по Streamable HTTP, например Windsurf, настраиваются так же: URL сервера плюс либо заголовок с bearer-токеном, либо вход через OAuth.

Как выглядит разговор

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

Вы спрашиваетеИнструментАргументы
Сколько сейчас стоит грамм золота в евро?get_latest_pricessymbols: XAU, base: EUR, unit: gram
Как менялась цена серебра за последние две недели?get_timeseries или get_fluctuationsymbols: XAG, start_date, end_date
Пересчитай 2,5 тройской унции платины в турецкие лиры.convertfrom: XPT, to: TRY, amount: 2.5
Какими сегодня были цена открытия, максимум, минимум и цена закрытия золота?get_ohlcsymbols: XAU
Сколько стоит грамм золота 18K в фунтах?get_carat_pricesbase: GBP (платные тарифы)
На каком я тарифе и сколько осталось квоты?get_accountНет

Ценовые инструменты возвращают компактный JSON. Блок rates в REST API перечисляет каждый символ дважды — как цену и как обратную величину — для совместимости со старыми интеграциями. MCP-сервер оставляет только цены по символам в поле prices. Это примерно вдвое сокращает число токенов и устраняет самую частую причину неверного прочтения данных. Вызов get_latest_prices с symbols: XAU,XAG, base: EUR и unit: gram возвращает примерно следующее:

Результат get_latest_prices (пример)
{
  "success": true,
  "timestamp": 1792834892,
  "date": "2026-10-24",
  "base": "EUR",
  "unit": "gram",
  "rate_limit": {
    "limit": 10000,
    "remaining": 9874,
    "reset": 1793491200,
    "used": 126,
    "plan": "Standard",
    "reset_date": "2026-11-01T00:00:00.000Z"
  },
  "prices": {
    "XAU": 110.4064149,
    "XAG": 1.489616277
  }
}

Числа в этой статье приведены для примера. В реальных ответах используются самые свежие цены, доступные на вашем тарифе.

Поскольку каждый ответ содержит timestamp, base и unit, хороший ответ звучит как «в такое-то время золото стоило около 110 € за грамм», а не просто «110 €». Если в ответе нет этого контекста, попросите его добавить.

Ассистенты умеют и выстраивать цепочки вызовов. Если попросить сравнить соотношение цен золота и серебра сегодня и месяц назад, ассистент может получить цены обоих металлов на обе даты и сам выполнить деление. Если попросить график, клиент, умеющий выполнять код, может построить его по результату get_timeseries.

13 инструментов

Сервер предоставляет тринадцать инструментов. Семь из них возвращают рыночные данные, и каждый их вызов засчитывается как один запрос в рамках месячного лимита вашего тарифа — точно так же, как вызов REST. Остальные бесплатны.

ИнструментЧто делаетКвота
get_latest_pricesПоследние цены на металлы, энергоносители, валюты и криптовалюты в любой базовой валюте и единице массы1 запрос
get_historical_pricesЦены закрытия за прошедший день1 запрос
convertПересчитывает сумму между двумя символами — по последней цене или на прошедшую дату1 запрос
get_timeseriesДневные цены закрытия между двумя датами (до 30 дней за вызов на Free, до 365 на платных тарифах)1 запрос
get_fluctuationНачальная и конечная цена, абсолютное и процентное изменение между двумя датами1 запрос
get_ohlcЦена открытия, максимум, минимум и цена закрытия за день1 запрос
get_carat_pricesЦены на золото по каратам, например 22K или 18K (платные тарифы)1 запрос
list_symbolsВсе коды символов с названием, категорией и единицей измеренияБесплатно
get_accountВаш тариф, месячный лимит, использование и дата обновления квотыБесплатно
list_plansВсе тарифы с лимитами, месячными и годовыми ценамиБесплатно
list_api_keysВаши активные ключи API в маскированном видеБесплатно
create_api_keyСоздаёт ключ для ваших собственных приложений; только для подключений через OAuth; сначала запрашивает подтверждениеБесплатно
get_upgrade_linkГотовит ссылку на оплату через Stripe или, для подписчиков, ссылку на портал управления оплатой; сначала запрашивает подтверждениеБесплатно

При подключении клиента сервер также отправляет краткие инструкции: что означают коды символов, что цены на металлы указаны за тройскую унцию, если не задана единица измерения, и что инструменты данных расходуют квоту. Клиенты передают их модели, поэтому корректно работающий ассистент запрашивает только нужные символы. Меньше символов — короче ответы и меньше токенов.

Безопасность: только чтение по умолчанию и никаких платежей

Подключение ассистента к аккаунту вызывает резонный вопрос: что он может изменить? Благодаря архитектуре ответ получается коротким.

  • Одиннадцать из тринадцати инструментов только читают данные. У них есть аннотация MCP readOnlyHint, и они могут лишь читать цены, ваш тариф, использование и маскированные данные ключей.
  • Два инструмента записи сначала спрашивают. create_api_key и get_upgrade_link помечены как действия, которые что-то изменяют, поэтому MCP-клиенты запрашивают ваше подтверждение перед их запуском.
  • Сервер никогда ничего не списывает. get_upgrade_link создаёт сессию оплаты Stripe для запрошенного тарифа или ссылку на портал управления оплатой, если подписка у вас уже есть, и возвращает URL. Вы открываете его, проверяете цену и оплачиваете сами. Ассистент не может провести платёж.
  • Новые ключи показываются один раз. Ключ, созданный через create_api_key, возвращается полностью лишь однажды, как и в личном кабинете, а хранится только его хеш.
  • Узкая область доступа. Подключение даёт доступ только к MetalAPI: ценам, вашему тарифу, использованию и ключам API. Сервер никогда не видит ваших разговоров, файлов или других коннекторов.
  • Журналирование, как у трафика API. Вызовы рыночных данных отображаются в журнале запросов личного кабинета как /mcp/ с именем инструмента — рядом с вашими запросами REST.

Одну общую привычку при работе с MCP стоит сохранять с любым сервером: читайте запросы на подтверждение, которые показывает клиент, а не одобряйте их машинально, и удаляйте коннекторы, которыми больше не пользуетесь.

Квоты, свежесть данных и тарифы

Вызовы MCP расходуют тот же лимит, что и REST API. Вызов инструмента данных стоит один запрос независимо от числа возвращаемых символов, а list_symbols и инструменты аккаунта ничего не стоят. Действуют и поминутные лимиты — от 10 запросов в минуту на Free.

Цены настолько свежие, насколько позволяет ваш тариф. На тарифе Free ассистент видит дневные цены; на платных тарифах данные обновляются с интервалом от 30 минут до 5 секунд:

ТарифЦена в месяцЗапросов в месяцИнтервал обновления
Free0 $100Раз в день
Lite4,99 $1 00030 минут
Standard11,99 $10 00010 минут
Advanced24,99 $50 0001 минута
Pro49,99 $100 0001 минута
Ultra99,99 $500 00015 секунд
Business149,99 $500 00015 секунд
Enterprise299,99 $1 500 0005 секунд

Ста запросов в месяц хватит для отдельных вопросов в чате. Если вы используете ассистента для анализа, который загружает много рядов, или встраиваете его в агента, работающего по расписанию, время от времени просите его вызвать get_account: инструмент сообщает, сколько запросов использовано, сколько осталось и когда лимит обновится. Когда месячный лимит исчерпан, инструменты данных до 1-го числа месяца (UTC) возвращают ошибку превышения квоты со ссылкой на смену тарифа, а инструменты аккаунта продолжают работать. Полное сравнение — на странице тарифов.

Начать можно за пару минут: зарегистрируйте бесплатный аккаунт, следуйте руководству по настройке MCP для своего клиента и задайте первый вопрос. На странице ИИ и MCP кратко описана настройка, а в документации API — REST-эндпоинты, на которых построен каждый инструмент.

Попробуйте на своих данных

Создайте бесплатный аккаунт и отправьте первый запрос меньше чем за две минуты. 100 запросов в месяц, без банковской карты.

Читайте также