AgentValet/AgentValet

AgentValet/AgentValet

от agentvalet
AgentValet - это брокер идентичности и полномочий для AI-агентов и MCP-серверов. Он выдаёт каждому агенту свой криптографический ключ, краткосрочные JWT-токены и требует человеческого одобрения для...

AgentValet

MCP server IETF AIMS aligned SPIFFE identity RFC 7591 AuthZEN 1.0 MIT license

AgentValet

Identity and credential governance broker for AI agents and MCP servers. It gives every agent its own cryptographic identity, scoped and short-lived credentials per platform, human approval gates on the actions that matter, and an immutable audit log of everything it did.

Open core. This repo holds the open-source MIT-licensed client surface: the MCP server, the CLI, the Claude Desktop bundle, and the runtime adapters. The managed proxy runs the credential vault, the policy engine, and the audit store. A self-host reference for the proxy is on the roadmap.

Live at agentvalet.ai. Docs at docs.agentvalet.ai.

Quickstart

npx @agentvalet/register

That generates an RS256 keypair for your agent, registers it, and wires up the config. The private key never leaves your machine. From then on your agent signs a short-lived JWT per request and calls platforms through the AgentValet proxy. Approve the agent in the dashboard, grant it scopes, and you are running.

Use as an MCP server

npx @agentvalet/register writes this block into your client's MCP config for you. To wire it up by hand — in Claude Desktop, Claude Code, Cursor, or any MCP-compatible client — add:

Инструменты были проиндексированы:
agent_register

agent_register: самостоятельно регистрирует этого агента у владельца. Аутентификация не требуется. Входные данные: owner_id (string), agent_name (string), requested_scopes (массив {platformId, scopes}). Пара ключей RSA агента генерируется на этой машине; отправляется только открытый ключ, а закрытый остаётся здесь. Возвращает: registration_token, poll_url, client_id, scope, keypair_source, key_stored_locally. Далее: как только владелец одобрит в панели управления, вызовите agent_status с registration_token, чтобы установить ключ. Аутентификация: не требуется.

Параметры
  • agent_namestringобязательный

    Человекочитаемое имя для этого агента.

  • owner_idstringобязательный

    Идентификатор владельца, под которым зарегистрировать этого агента.

  • requested_scopesobject[]обязательный

    Массив запросов на область видимости платформы

agent_status

agent_status: Опрашивает статус регистрации, используя токен из agent_register. Вход: token (string, required). При одобрении он устанавливает приватный ключ агента на этой машине (~/.agentvalet/agents/<agent_id>.key, а также идентификатор по умолчанию, если его нет) и активирует его для этой сессии, когда у сервера ещё не было идентификатора. Приватный ключ никогда не возвращается в результате. Возвращает: status ("pending"|"approved"|"rejected"|"expired"), agent_id, key_installed, key_path, activated, mcp_config (если одобрено). Аутентификация: Нет.

Параметры
  • tokenstringобязательный

    Токен регистрации, возвращаемый agent_register.

authzen_evaluate

authzen_evaluate: Оценивает, есть ли у этого агента доступ к определённому разрешению (scope) платформы. Вызывайте этот инструмент ПЕРЕД use_platform, если хотите выполнить предварительную проверку без обращения к вышестоящему серверу. Входные данные: platform_id (строка), scope (строка). Возвращает: decision (булево), reason ("approved"|"denied"|"revoked"|"scope_not_granted"). Аутентификация: Bearer agent JWT (отправляется автоматически этим MCP-сервером).

Параметры
  • platform_idstringобязательный

    Идентификатор платформы (например, airtable, github).

  • scopestringобязательный

    Область разрешений для оценки (например, records:read)

delete_platform

delete_platform: Удаляет данные на платформе, которую владелец подключил, через прокси AgentValet. Вызывает собственный публичный REST API платформы (например, GitHub REST API, Slack Web API, Stripe API); endpoint - это путь в этом API, точно как его определяет документация. Для платформы, чей callStyle равен 'graphql', передавайте "/" в качестве endpoint и помещайте операцию в body в виде {query, variables}: путь и HTTP-метод не имеют значения на этой платформе. Всегда отправляет DELETE. Это удаляет данные, и AgentValet не может обратить это действие. Может блокировать до 50 секунд в ожидании одобрения владельца. Входные данные: platform, endpoint, scope, body (необязательно), connection_id (необязательно), reason (необязательно). Аутентификация: Bearer JWT.

Параметры
  • bodyobject

    Необязательное тело JSON-запроса, передаётся без изменений.

  • callerobject

    Необязательно. Кто тот человек, для которого сделан этот вызов, когда агент обслуживает много людей: { assertion: '<JWT от провайдера идентификации, зарегистрированного организацией>' } (проверено) или { source, id } (заявлено; учитывается только там, где платформа это допускает). На платформе с персональными токенами используется собственный upstream-токен человека; если он ещё не авторизовался, вызов вернёт consent_required с consent_url, который нужно ему передать.

  • connection_idstring

    Необязательно. Укажите конкретное соединение, если у платформы подключено более одного. Опустите, чтобы использовать соединение по умолчанию.

  • endpointstringобязательный

    Путь в API самой платформы (например, /repos/owner/name)

  • platformstringобязательный

    Идентификатор платформы (например, github, slack, stripe)

  • reasonstring

    Необязательно, но настоятельно рекомендуется. Одно предложение о том, ПОЧЕМУ вы удаляете это. Показывается проверяющему, если вызов требует одобрения. Не более 500 символов; обычный текст.

  • scopestringобязательный

    Требуемая область разрешений для этого удаления (например, repo:delete).

issue_child_agent

Выдаёт кратковременную учётную запись дочернего агента для сабагента, которого вы собираетесь породить. Дочерний агент получает собственный идентификатор агента, собственный урезанный набор разрешений (области дочернего агента должны быть подмножеством ваших) и собственный журнал аудита; его можно отозвать отдельно, не затрагивая вас или его собратьев. Возвращает bearer-токен, который сабагент должен отправлять в заголовке Authorization. TTL 60-3600 секунд (по умолчанию 900). Внедряйте в контекст сабагента ТОЛЬКО bearer_token, никогда не передавайте собственные учётные данные.

Параметры
  • grantsobject[]обязательный

    Массив платформенных грантов, которые применяются к дочернему элементу в ослабленном виде. Каждая область действия должна быть подмножеством ваших собственных предоставленных областей.

  • namestring

    Необязательное человекочитаемое имя для дочернего агента (1-200 символов).

  • ttl_secondsnumber

    Необязательное время жизни дочернего bearer-токена в секундах. 60-3600, по умолчанию 900.

list_my_pending_actions

list_my_pending_actions: Возвращает текущие ожидающие запросы на одобрение этого агента, а также любые завершённые за последние 24 часа. Используйте это при запуске сессии, когда пользователь упоминает предыдущее действие, или когда long-poll в use_platform завершился по таймауту и пользователь возвращается с вопросом о том, что произошло. Входные данные: отсутствуют. Возвращает: { pending: [{approval_id, platform_id, scope, created_at, expires_at}], recently_completed: [{approval_id, platform_id, scope, status, executed_at, result_summary, execution_error}] }. Аутентификация: Bearer JWT агента (отправляется автоматически).

Параметры

Без параметров.

list_platforms

list_platforms: Перечисляет платформы и области разрешений, к которым у этого агента есть доступ. Вызывайте его один раз на задачу, а не перед каждым вызовом. Входные данные: detail (необязательный: "compact" по умолчанию или "full"), platform (необязательный: platformId, возвращает эту одну платформу в полном виде). Возвращает (compact, по умолчанию): { detail: "compact", platforms: [{ platformId, platformName, scopes? (не-MCP: имена областей, которые нужно передать), scopeCount?, toolCount? и toolsEndpoint? (MCP: оттуда забираются список инструментов и схемы; область для инструмента - "<platformId>:<tool>", а имена инструментов в выводе compact идут без этого префикса), requireApproval? (только когда true), approvalScopes?, connections?, callStyle?, constraints?, connected?, health? }], version: "<hex>" }. connected: false значит, что платформа выдана, но за ней нет рабочих учётных данных, поэтому вызовы будут падать, пока владелец не переподключит её: скажите об этом пользователю, а не повторяйте попытки. health - последнее известное состояние подключения (active, reauth_needed, revoked, unknown). Используйте platform: "<id>", чтобы получить полный список областей одной платформы, unenforcedScopes, apiHints и lastProbeAt/lastSuccessAt; detail: "full" возвращает все платформы в полной форме { platforms: [{ platformId, platformName, scopes, requireApproval, approvalScopes?, connections?, callStyle?, apiHints? }], version }. Версия одна и та же, какой бы detail вы ни запросили. Платформа включает connections, когда у неё 2+ рабочих аккаунта или когда один аккаунт несёт контекст, который стоит знать; передайте выбранный connection_id в use_platform (пропустите, чтобы взять значение по умолчанию). Каждое подключение может нести identity (аккаунт, на который оно на самом деле указывает, например {email}) и hint (произвольный текст, который владелец написал для вас). Используйте их, чтобы разобрать инструкцию, где назван аккаунт, а не подключение: "send it from the aifirstpartner account" значит подключение, у которого совпадает identity.email или hint; если совпадений нет, спросите, а не угадывайте значение по умолчанию. Стиль вызова: callStyle присутствует только со значением "graphql" и говорит, как АДРЕСОВАТЬ…

Параметры
  • detailenum

    Необязательный. "compact" (по умолчанию): по одной короткой записи на платформу. "full": каждая платформа с полным списком scope, apiHints и unenforcedScopes.

  • platformstring

    Необязательно. platformId: возвращает только эту платформу, со всеми подробностями, с полями connected/health/lastProbeAt/lastSuccessAt.

read_platform

read_platform: Читает данные с платформы, которую подключил владелец, через прокси AgentValet. Вызывает собственный публичный REST API платформы (например, GitHub REST API, Slack Web API, Stripe API); endpoint содержит путь в этом API, в точности как указано в его документации. Платформу, которую list_platforms указывает с callStyle 'graphql', этим инструментом прочитать вообще нельзя: она предоставляет ЕДИНЫЙ endpoint, который принимает только POST {query, variables}, поэтому отправляйте запрос на чтение через write_platform (или use_platform с методом POST), даже если это чтение. Запрос GET туда возвращает ошибку вышестоящего сервиса, которая не называет ни платформу, ни причину; это не вина брокера. Всегда выполняет GET: используйте write_platform для создания или обновления, а delete_platform для удаления. Входные данные: platform, endpoint, scope, connection_id (необязательно), reason (необязательно). Возвращает: тело ответа вышестоящего API. Аутентификация: Bearer JWT.

Параметры
  • callerobject

    Необязательно. Кто тот человек, для которого сделан этот вызов, когда агент обслуживает много людей: { assertion: '<JWT от провайдера идентификации, зарегистрированного организацией>' } (проверено) или { source, id } (заявлено; учитывается только там, где платформа это допускает). На платформе с персональными токенами используется собственный upstream-токен человека; если он ещё не авторизовался, вызов вернёт consent_required с consent_url, который нужно ему передать.

  • connection_idstring

    Необязательно. Укажите конкретное соединение, если у платформы подключено более одного. Опустите, чтобы использовать соединение по умолчанию.

  • endpointstringобязательный

    Путь в собственном API платформы (например, /user/repos).

  • platformstringобязательный

    Идентификатор платформы (например, github, slack, stripe)

  • reasonstring

    Желательно, но не обязательно. Одно предложение о том, ПОЧЕМУ вы делаете этот вызов. Показывается человеку-одобрителю, если вызов проходит проверку. Максимум 500 символов; обычный текст.

  • scopestringобязательный

    Требуемая область разрешений для чтения (например, repo:read).

report_self_diagnostic

report_self_diagnostic: Отправляет самоотчёт (ошибка/предупреждение/информация) владельцу AgentValet. Используйте после того, как ошибка use_platform вернёт report_hint, ИЛИ заблаговременно, когда вы сталкиваетесь с проблемой, о которой пользователь должен знать. Входные параметры: severity (debug|info|warn|error|critical), message (строка, обязательный, макс. 4096 байт), code (строка, необязательный, макс. 128 символов), platform (строка, необязательный), endpoint (строка, необязательный), correlation_id (uuid строка, необязательный — скопируйте из report_hint от неудачного вызова, чтобы привязать этот отчёт к строке аудита на стороне брокера), context (объект, необязательный, JSON-сериализованный должен быть < 16 КиБ). Возвращает: { id, received_at } в случае успеха. Аутентификация: Bearer agent JWT (отправляется автоматически).

Параметры
  • codestring

    Необязательный короткий машинный код (например, 'permission_denied').

  • contextobject

    Необязательный структурированный контекст (параметры запроса, сведения об ошибках). Избегайте секретов.

  • correlation_idstring

    Необязательный UUID: скопируйте из report_hint ошибки use_platform, чтобы привязать этот отчёт к строке аудита.

  • endpointstring

    Необязательный эндпоинт, который не сработал.

  • messagestringобязательный

    Повествование агента в одном предложении о том, что произошло.

  • platformstring

    Необязательный id платформы, к которой относится этот отчёт.

  • severityenumобязательный

    Уровень серьезности. error/critical запускают уведомление владельца.

request_platform_access

request_platform_access: Запрашивает у администратора организации доступ для этого агента к платформе, от которой он сейчас заблокирован. Вызывайте этот инструмент, когда use_platform возвращает ошибку доступа. Входные параметры: platform (строка, обязательный), scope (строка, опциональный: необходимый объём доступа), reason (строка, опциональный: причина запроса). Вызов ожидает решения администратора до ~50 секунд. Возвращает: { status: "approved"|"pending"|"denied", message }. При статусе "approved" повторите исходный вызов use_platform. При статусе "pending" запрос поставлен в очередь; повторите позже. Аутентификация: Bearer agent JWT (отправляется автоматически).

Параметры
  • platformstringобязательный

    Идентификатор платформы (например, github, slack)

  • reasonstring

    Необязательная краткая причина запроса

  • scopestring

    Необязательно, но требуется конкретная область доступа (например, repo:read)

use_platform

use_platform: Вызывает внешний API платформы (Airtable, GitHub, Slack, Metabase и т.д.) через прокси AgentValet. Входные данные: platform (string), endpoint (string), method (GET|POST|PUT|PATCH|DELETE), scope (string), body (object, необязательно — тело JSON-запроса для POST/PUT/PATCH/DELETE). Возвращает: тело ответа вышестоящего API. Может занимать до 50 секунд, если для действия требуется одобрение владельца: вызов блокируется в ожидании, затем прозрачно возвращает одобренный результат. Если одобрение не приходит вовремя, возвращает обёртку pending_approval, а действие выполняется асинхронно; пользователь получает уведомление о завершении. Аутентификация: Bearer JWT. Примечание: старые клиенты, передающие data вместо body, всё ещё принимаются для обратной совместимости, но body — каноническое имя.

Параметры
  • bodyobject

    Тело JSON-запроса для POST/PUT/PATCH/DELETE. Необязательно. Пересылается дословно в вышестоящий API.

  • callerobject

    Необязательно. Кто тот человек, для которого сделан этот вызов, когда агент обслуживает много людей: { assertion: '<JWT от провайдера идентификации, зарегистрированного организацией>' } (проверено) или { source, id } (заявлено; учитывается только там, где платформа это допускает). На платформе с персональными токенами используется собственный upstream-токен человека; если он ещё не авторизовался, вызов вернёт consent_required с consent_url, который нужно ему передать.

  • connection_idstring

    Необязательно. Укажите конкретное подключение, если у платформы несколько подключений (например, две организации GitHub). Значение — это идентификатор подключения, показанный в панели управления. Опустите, чтобы использовать подключение по умолчанию.

  • dataobject

    Устаревший псевдоним для body: используйте body. Сохранён для обратной совместимости.

  • endpointstringобязательный

    Путь API на целевой платформе (например, /v0/meta/bases или /api/dataset)

  • methodenumобязательный

    Какой HTTP-метод использовать

  • platformstringобязательный

    Идентификатор платформы (например, airtable, github, slack, metabase)

  • reasonstring

    Необязательно, но настоятельно рекомендуется. Одно предложение о том, зачем вы делаете этот вызов. Если действие требует одобрения владельца, оно показывается человеку, который принимает решение, — без этого их одобрение будет слепым «да» или «нет». Максимум 500 символов (длиннее — обрезается). Простой текст; разметка не отображается.

  • scopestringобязательный

    Область разрешений, необходимая для этого действия (например, records:read)

write_platform

write_platform: Создаёт или обновляет данные на платформе, которую подключил владелец, через прокси AgentValet. Вызывает собственный публичный REST API платформы (например, GitHub REST API, Slack Web API, Stripe API); endpoint - это путь в этом API, точно такой, как он определён в документации. Для платформы с callStyle 'graphql' передайте "/" в качестве endpoint, а операцию поместите в body как {query, variables}: путь и HTTP-метод на такой платформе не имеют значения. Принимает только POST, PUT или PATCH: для GET используйте read_platform, а для DELETE - delete_platform. Может блокироваться до 50 секунд в ожидании одобрения владельца, затем возвращает одобренный результат; в противном случае возвращает обёртку pending_approval. Входные данные: platform, endpoint, scope, method (необязательно, по умолчанию POST), body (необязательно), connection_id (необязательно), reason (необязательно). Аутентификация: Bearer JWT.

Параметры
  • bodyobject

    Передаёт тело JSON-запроса без изменений во внешний API.

  • callerobject

    Необязательно. Кто тот человек, для которого сделан этот вызов, когда агент обслуживает много людей: { assertion: '<JWT от провайдера идентификации, зарегистрированного организацией>' } (проверено) или { source, id } (заявлено; учитывается только там, где платформа это допускает). На платформе с персональными токенами используется собственный upstream-токен человека; если он ещё не авторизовался, вызов вернёт consent_required с consent_url, который нужно ему передать.

  • connection_idstring

    Необязательно. Укажите конкретное соединение, если у платформы подключено более одного. Опустите, чтобы использовать соединение по умолчанию.

  • endpointstringобязательный

    Путь в собственном API платформы (например, /chat.postMessage)

  • methodenum

    POST создаёт, PUT заменяет, PATCH изменяет. По умолчанию: POST.

  • platformstringобязательный

    Идентификатор платформы (например, github, slack, stripe)

  • reasonstring

    Желательно, но не обязательно. Одно предложение о том, ПОЧЕМУ вы делаете этот вызов. Показывается человеку-одобрителю, если вызов проходит проверку. Максимум 500 символов; обычный текст.

  • scopestringобязательный

    Требуемый scope для этой записи (например, chat:write)

1.19.1основная
1.19.0
1.18.0
1.17.0
1.15.0
1.14.0
1.12.1
1.12.0
1.10.0
1.8.0
1.6.1
1.6.0
1.4.0
1.3.0
1.2.0
1.1.1
1.1.0
0.3.10
0.3.9
0.3.7
0.3.6
0.3.5
0.3.4
0.3.3
0.3.2
0.3.1
0.3.0
0.2.5
0.2.4
0.2.3
0.2.2
0.2.1
0.2.0
0.1.1
0.1.0

Выберите клиент, чтобы установить AgentValet/AgentValet:

Любой клиент

Конфиг добавления MCP сервера стандартный, обычно он не меняется вообще, поэтому подходит практически к любому ИИ клиенту, поддерживающему MCP.

{
  "mcpServers": {
    "agentvalet-agentvalet-0ln49omywq": {
      "command": "npx",
      "args": [
        "-y",
        "@agentvalet/mcp-server"
      ],
      "env": {
        "AGENT_ID": "agt_your_agent_id",
        "OWNER_ID": "your_owner_id",
        "PROXY_URL": "https://api.agentvalet.ai",
        "AGENT_PRIVATE_KEY_PATH": "~/.agentvalet/agent.key"
      }
    }
  }
}
CursorCursor

Перейдите по ссылке и сервер автоматически будет добавлен в Cursor. Либо откройте/создайте файл ~/.cursor/mcp.json(%USERPROFILE%\.cursor\mcp.json на Windows) и добавьте конфиг сервера:

{
  "mcpServers": {
    "agentvalet-agentvalet-0ln49omywq": {
      "command": "npx",
      "args": [
        "-y",
        "@agentvalet/mcp-server"
      ],
      "env": {
        "AGENT_ID": "agt_your_agent_id",
        "OWNER_ID": "your_owner_id",
        "PROXY_URL": "https://api.agentvalet.ai",
        "AGENT_PRIVATE_KEY_PATH": "~/.agentvalet/agent.key"
      }
    }
  }
}
VS Code

Создайте .vscode/mcp.json в проекте (ключ верхнего уровня — servers):

{
  "servers": {
    "agentvalet-agentvalet-0ln49omywq": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@agentvalet/mcp-server"
      ],
      "env": {
        "AGENT_ID": "agt_your_agent_id",
        "OWNER_ID": "your_owner_id",
        "PROXY_URL": "https://api.agentvalet.ai",
        "AGENT_PRIVATE_KEY_PATH": "~/.agentvalet/agent.key"
      }
    }
  }
}

Либо добавьте сервер через терминал:

code --add-mcp "{\"name\":\"agentvalet-agentvalet-0ln49omywq\",\"type\":\"stdio\",\"command\":\"npx\",\"args\":[\"-y\",\"@agentvalet/mcp-server\"],\"env\":{\"AGENT_ID\":\"agt_your_agent_id\",\"OWNER_ID\":\"your_owner_id\",\"PROXY_URL\":\"https://api.agentvalet.ai\",\"AGENT_PRIVATE_KEY_PATH\":\"~/.agentvalet/agent.key\"}}"
ClaudeClaude Desktop

Откройте Settings → Developer → Edit Config — это откроет файл claude_desktop_config.json:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json

Впишите сервер и полностью перезапустите Claude Desktop:

{
  "mcpServers": {
    "agentvalet-agentvalet-0ln49omywq": {
      "command": "npx",
      "args": [
        "-y",
        "@agentvalet/mcp-server"
      ],
      "env": {
        "AGENT_ID": "agt_your_agent_id",
        "OWNER_ID": "your_owner_id",
        "PROXY_URL": "https://api.agentvalet.ai",
        "AGENT_PRIVATE_KEY_PATH": "~/.agentvalet/agent.key"
      }
    }
  }
}
Claude CodeClaude Code

Добавьте сервер одной командой в терминале:

claude mcp add agentvalet-agentvalet-0ln49omywq --env AGENT_ID=agt_your_agent_id --env OWNER_ID=your_owner_id --env PROXY_URL=https://api.agentvalet.ai --env AGENT_PRIVATE_KEY_PATH=~/.agentvalet/agent.key -- npx -y @agentvalet/mcp-server

Либо через JSON-конфиг:

claude mcp add-json agentvalet-agentvalet-0ln49omywq "{\"command\":\"npx\",\"args\":[\"-y\",\"@agentvalet/mcp-server\"],\"env\":{\"AGENT_ID\":\"agt_your_agent_id\",\"OWNER_ID\":\"your_owner_id\",\"PROXY_URL\":\"https://api.agentvalet.ai\",\"AGENT_PRIVATE_KEY_PATH\":\"~/.agentvalet/agent.key\"}}"
CodexCodex

Добавьте сервер командой в терминале:

codex mcp add agentvalet-agentvalet-0ln49omywq --env AGENT_ID=agt_your_agent_id --env OWNER_ID=your_owner_id --env PROXY_URL=https://api.agentvalet.ai --env AGENT_PRIVATE_KEY_PATH=~/.agentvalet/agent.key -- npx -y @agentvalet/mcp-server

Либо вручную в ~/.codex/config.toml(%USERPROFILE%\.codex\config.toml на Windows):

[mcp_servers.agentvalet-agentvalet-0ln49omywq]
command = "npx"
args = ["-y", "@agentvalet/mcp-server"]

[mcp_servers.agentvalet-agentvalet-0ln49omywq.env]
AGENT_ID = "agt_your_agent_id"
OWNER_ID = "your_owner_id"
PROXY_URL = "https://api.agentvalet.ai"
AGENT_PRIVATE_KEY_PATH = "~/.agentvalet/agent.key"
PerplexityPerplexity

MCP доступен подписчикам Perplexity Pro / Max / Enterprise. Локальные серверы — только в приложении для macOS.

  1. Откройте Настройки аккаунта → Connectors.
  2. Установите вспомогательное приложение PerplexityXPC (один раз).
  3. Нажмите Add Connector → вкладка Simple.
  4. В поле Server Name укажите AgentValet/AgentValet, а в поле команды запуска — строку ниже:
npx -y @agentvalet/mcp-server

Нажмите Save и дождитесь статуса Running.

WindsurfWindsurf

Откройте Windsurf Settings → Cascade → MCP Servers или отредактируйте файл ~/.codeium/windsurf/mcp_config.json:

{
  "mcpServers": {
    "agentvalet-agentvalet-0ln49omywq": {
      "command": "npx",
      "args": [
        "-y",
        "@agentvalet/mcp-server"
      ],
      "env": {
        "AGENT_ID": "agt_your_agent_id",
        "OWNER_ID": "your_owner_id",
        "PROXY_URL": "https://api.agentvalet.ai",
        "AGENT_PRIVATE_KEY_PATH": "~/.agentvalet/agent.key"
      }
    }
  }
}
ClineCline

В панели Cline нажмите иконку MCP Servers → Configure → Configure MCP Servers (или отредактируйте ~/.cline/mcp.json) и добавьте сервер:

{
  "mcpServers": {
    "agentvalet-agentvalet-0ln49omywq": {
      "command": "npx",
      "args": [
        "-y",
        "@agentvalet/mcp-server"
      ],
      "env": {
        "AGENT_ID": "agt_your_agent_id",
        "OWNER_ID": "your_owner_id",
        "PROXY_URL": "https://api.agentvalet.ai",
        "AGENT_PRIVATE_KEY_PATH": "~/.agentvalet/agent.key"
      },
      "disabled": false,
      "autoApprove": []
    }
  }
}
Continue

Создайте файл в .continue/mcpServers/ (например agentvalet-agentvalet-0ln49omywq.yaml) или добавьте блок в config.yaml. MCP работает только в режиме agent:

mcpServers:
  - name: agentvalet-agentvalet-0ln49omywq
    command: npx
    args:
      - "-y"
      - "@agentvalet/mcp-server"
    env:
      AGENT_ID: agt_your_agent_id
      OWNER_ID: your_owner_id
      PROXY_URL: https://api.agentvalet.ai
      AGENT_PRIVATE_KEY_PATH: ~/.agentvalet/agent.key
Zed

Выполните agent: add context server или откройте настройки (zed: open settings file) и добавьте сервер в объект context_servers:

{
  "context_servers": {
    "agentvalet-agentvalet-0ln49omywq": {
      "command": "npx",
      "args": [
        "-y",
        "@agentvalet/mcp-server"
      ],
      "env": {
        "AGENT_ID": "agt_your_agent_id",
        "OWNER_ID": "your_owner_id",
        "PROXY_URL": "https://api.agentvalet.ai",
        "AGENT_PRIVATE_KEY_PATH": "~/.agentvalet/agent.key"
      }
    }
  }
}

Похожие MCP-сервера

ark-forge/arkforge-mcp

ark-forge/arkforge-mcp

от ark-forge

ArkForge - MCP-сервер, сторонний прокси, подписывающий HTTP-запросы Ed25519 и фиксирующий их в неизменяемом реестре. Независимое криптографическое доказательство для аудита AI-агентов, вебхуков и м...

Python⭐ 2
8randonpickart5/alderpost-mcp

8randonpickart5/alderpost-mcp

от 8randonpickart5

MCP-сервер с 8 эндпоинтами разведданных: анализ доменов, компаний, угроз, комплаенса, лидов, спорта, недвижимости и здоровья. Каждый запрос оплачивается через x402 USDC на Base — результат в виде о...

JavaScript⭐ 2
UPinar/contrastapi

UPinar/contrastapi

от upinar

MCP сервер для AI-агентов, предоставляющий 54 инструмента threat intelligence: поиск CVE/KEV/CWE, композитный риск (CVSS+EPSS+KEV), анализ доменов, IP, IOC, кодовая безопасность, MITRE ATLAS (AI/ML атаки). Бесплатный, без ключа. Полезен для исследователей.

Python⭐ 33
behrensd/mcp-firewall

behrensd/mcp-firewall

от behrensd

mcpwall — прокси-фильтр для MCP: блокирует опасные вызовы, сканирует утечки, аудит. Встаёт между AI-клиентом и сервером, применяет YAML-правила. Защищает от утечек ключей и команд. Полезен для Clau...

TypeScript⭐ 5
qianniuspace/mcp-security-audit

qianniuspace/mcp-security-audit

от qianniuspace

MCP-сервер Security Audit Tool проверяет npm-зависимости на уязвимости в реальном времени. Он подключается к удалённому реестру npm и выдаёт отчёты с уровнями критичности, CVSS-оценками и рекомендациями по исправлению. Полезен разработчикам для автоматизации безопасности в MCP-среде.

TypeScript⭐ 57
alberthild/shieldapi-mcp

alberthild/shieldapi-mcp

от alberthild

MCP-сервер для безопасности AI-агентов: детекция промпт-инъекций, сканирование навыков на уязвимости цепочки поставок, проверка URL, паролей, email и IP. Бесплатно 10 вызовов в день без регистрации...

JavaScript⭐ 1
© Каталог MCP, 2026. Все права защищены.
Проект не аффилирован с Anthropic и любыми упомянутыми продуктами.
Все названия и торговые марки принадлежат их владельцам.
Контакты для связи: hi@mcp-katalog.ru

Лука Никитин