URnetwork MCP Server

официальный

Высококачественные VPN и прокси-соединения

Документация

Добро пожаловать в URnetwork для агентов

URnetwork — это децентрализованная сеть для обеспечения конфиденциальности. Она создана, чтобы по умолчанию сохранять анонимность пользователей и предоставлять им доступ ко всему контенту в мире.

Люди используют приложения (Android, iOS, Chrome). Агенты используют API и навыки MCP:

Агентам следует учитывать приведённые ниже рекомендации при использовании API и MCP-сервера.

Аутентификация

При использовании API или MCP-сервера JWT пользователя должен передаваться в заголовке Authorization: Bearer <JWT>.

Чтобы получить JWT, запросите у человека код аутентификации, а затем преобразуйте этот код в JWT с помощью маршрута API /auth/code-login. Ниже приведён пример curl, передаваемый в jq для извлечения свойства by_jwt из результата:

curl -X POST https://api.bringyour.com/auth/code-login -d '{"auth_code": "<AUTH CODE>"}' | jq ".by_jwt"

JWT можно сохранить и использовать повторно. Если человек попросит обновить JWT, повторите процесс, начиная с запроса кода аутентификации.

При выборе прокси-технологии учитывайте следующие сценарии использования:

Сценарий использованияРекомендуемый протоколТребование
Скрапинг / Веб-сёрфингHTTPSЛучше всего подходит для TCP/Web. Всегда используйте HTTPS-прокси, если нет особой необходимости в HTTP. HTTP обычно нужен только для специфических тестовых сред, не поддерживающих HTTPS. Из ответа /network/auth-client, внутри объекта proxy_config_result, используйте https_proxy_url. Дополнительные имя пользователя или пароль не требуются.
Низкоуровневые сокеты / UDPSOCKSПоддерживает TCP+UDP сокеты через SOCKS5. Из ответа /network/auth-client, внутри объекта proxy_config_result, используйте socks_proxy_url или proxy_host и proxy_port, с именем пользователя access_token (пустой пароль). Сервер поддерживает удалённое разрешение DNS (SOCKS5H).
Общесистемный / На уровне ОСWireGuardМаршрутизирует все IP-пакеты. В запросе /network/auth-client необходимо явно установить proxy_config.enable_wg в true. В ответе, внутри объекта proxy_config_result, используйте wg_config.config как полный файл конфигурации WireGuard.

При использовании маршрута /network/find-locations для запроса локаций всегда фильтруйте возвращаемый массив locations по желаемому location_type (city, region или country), чтобы location_id соответствовал намерениям пользователя.

Тип локацииТребование
countryДля стран.
regionДля штатов, провинций, административных регионов и городских агломераций.
cityДля городов.

Использование навыка MCP для создания HTTPS/SOCKS/WireGuard прокси

Навык MCP можно использовать для поиска доступных локаций и создания HTTPS/SOCKS/WireGuard прокси к этим локациям. Любую страну, регион и город, доступные в сети, можно искать и выбирать с помощью строки запроса.

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

Использование API для создания HTTPS/SOCKS/WireGuard прокси для страны

API можно использовать напрямую для создания HTTPS/SOCKS/WireGuard прокси для страны.

Шаг 1: выполните поиск списка локаций с помощью маршрута /network/find-locations. Ниже приведён пример curl, передаваемый в jq для извлечения списка locations.

curl -X POST -H 'Authorization: Bearer <JWT>' https://api.bringyour.com/network/find-locations -d '{"query": "<LOCATION NAME>"}' | jq '.locations'

Шаг 2: выберите интересующую локацию и сохраните свойство country_code.

Шаг 3: создайте прокси, используя сохранённый код страны, с помощью маршрута /network/auth-client и установив в proxy_config.initial_device_state значение country_code.

curl -X POST -H 'Authorization: Bearer <JWT>' https://api.bringyour.com/network/auth-client -d '{"proxy_config": {"initial_device_state": {"country_code": "<COUNTRY CODE>"}}}'

Использование API для создания HTTPS/SOCKS/WireGuard прокси для поисковой локации

API можно использовать напрямую для поиска локации и создания HTTPS/SOCKS/WireGuard прокси. Необходимо будет принять решение о выборе наиболее желаемого результата локации. Каждая локация имеет фиксированный location_id, который можно сохранить в коде.

Шаг 1: выполните поиск списка локаций с помощью маршрута /network/find-locations. Ниже приведён пример curl, передаваемый в jq для извлечения списка locations.

curl -X POST -H 'Authorization: Bearer <JWT>' https://api.bringyour.com/network/find-locations -d '{"query": "<LOCATION NAME>"}' | jq '.locations'

Шаг 2: выберите интересующую локацию и сохраните свойство location_id.

Шаг 3: создайте прокси, используя сохранённый location_id, с помощью маршрута /network/auth-client и установив в proxy_config.initial_device_state.location значение connect_location_id.location_id.

curl -X POST -H 'Authorization: Bearer <JWT>' https://api.bringyour.com/network/auth-client -d '{"proxy_config": {"initial_device_state": {"location": {"connect_location_id":{"location_id": "<LOCATION ID>"}}}}}'

Использование API для создания HTTPS/SOCKS/WireGuard прокси для поисковой локации с перечислением всех выходных IP в этой локации

API можно использовать напрямую для поиска локации, перечисления провайдеров (выходных IP) в этой локации и создания HTTPS/SOCKS/WireGuard прокси для каждого выходного IP. Необходимо будет принять решение о выборе наиболее желаемого результата локации. Каждая локация имеет фиксированный location_id, который можно сохранить в коде. Кроме того, каждый провайдер имеет фиксированный client_id, который можно сохранить в коде.

Шаг 1: выполните поиск списка локаций с помощью маршрута /network/find-locations. Ниже приведён пример curl, передаваемый в jq для извлечения списка locations.

curl -X POST -H 'Authorization: Bearer <JWT>' https://api.bringyour.com/network/find-locations -d '{"query": "<LOCATION NAME>"}' | jq '.locations'

Шаг 2: выберите интересующую локацию и сохраните location_id.

Шаг 3: получите ранжированный список провайдеров (выходных IP) для location_id с помощью маршрута /network/find-providers2. Размер выборки можно установить в соответствии с необходимым количеством уникальных провайдеров. Ниже приведён пример curl, передаваемый в jq для извлечения списка providers.

curl -X POST -H 'Authorization: Bearer <JWT>' https://api.bringyour.com/network/find-providers2 -d '{"specs": [{"client_id": "<CLIENT ID>"}], "count": <COUNT>}' | jq '.providers'

Шаг 4: перебирая каждый client_id в списке, создайте прокси, используя client_id, с помощью маршрута /network/auth-client и установив в proxy_config.initial_device_state.location значение connect_location_id.client_id.

curl -X POST -H 'Authorization: Bearer <JWT>' https://api.bringyour.com/network/auth-client -d '{"proxy_config": {"initial_device_state": {"location": {"connect_location_id":{"client_id": "<CLIENT ID>"}}}}}'