Dropstone Docs

Серверы MCP

Добавьте локальные и удаленные инструменты MCP.

Вы можете добавлять внешние инструменты в Dropstone, используя Model Context Protocol, или MCP. Dropstone поддерживает как локальные, так и удаленные серверы.

После добавления инструменты MCP автоматически становятся доступны LLM наряду со встроенными инструментами.


Предостережения

Когда вы используете сервер MCP, он добавляется в контекст. Это может быстро накопиться, если у вас много инструментов. Поэтому мы рекомендуем осторожно выбирать, какие серверы MCP вы используете.

Совет:

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

Некоторые серверы MCP, такие как сервер GitHub MCP, имеют тенденцию добавлять много токенов и могут легко превысить лимит контекста.


Включение

Вы можете определить серверы MCP в вашей конфигурации Dropstone под mcp. Добавьте каждый MCP с уникальным именем. Вы можете ссылаться на этот MCP по имени при запросе к LLM.

{
  "$schema": "https://dropstone.io/schema/config.json",
  "mcp": {
    "name-of-mcp-server": {
      // ...
      "enabled": true,
    },
    "name-of-other-mcp-server": {
      // ...
    },
  },
}

Вы также можете отключить сервер, установив enabled в false. Это полезно, если вы хотите временно отключить сервер без удаления его из конфигурации.


Переопределение удаленных значений по умолчанию

Организации могут предоставлять серверы MCP по умолчанию через свою конечную точку .well-known/dropstone. Эти серверы могут быть отключены по умолчанию, позволяя пользователям выбирать нужные им.

Чтобы включить конкретный сервер из удаленной конфигурации вашей организации, добавьте его в локальную конфигурацию с enabled: true:

{
  "$schema": "https://dropstone.io/schema/config.json",
  "mcp": {
    "jira": {
      "type": "remote",
      "url": "https://jira.example.com/mcp",
      "enabled": true
    }
  }
}

Значения вашей локальной конфигурации переопределяют удаленные значения по умолчанию. Дополнительные сведения см. в разделе порядок приоритета конфигурации.


Локальные

Добавляйте локальные серверы MCP, используя type со значением "local" в объекте MCP.

{
  "$schema": "https://dropstone.io/schema/config.json",
  "mcp": {
    "my-local-mcp-server": {
      "type": "local",
      // Or ["bun", "x", "my-mcp-command"]
      "command": ["npx", "-y", "my-mcp-command"],
      "enabled": true,
      "environment": {
        "MY_ENV_VAR": "my_env_var_value",
      },
    },
  },
}

Команда определяет, как запускается локальный сервер MCP. Вы также можете передать список переменных окружения.

Например, вот как вы можете добавить тестовый сервер MCP @modelcontextprotocol/server-everything.

{
  "$schema": "https://dropstone.io/schema/config.json",
  "mcp": {
    "mcp_everything": {
      "type": "local",
      "command": ["npx", "-y", "@modelcontextprotocol/server-everything"],
    },
  },
}

И чтобы использовать его, я могу добавить use the mcp_everything tool в мои запросы.

use the mcp_everything tool to add the number 3 and 4

Параметры

Вот все параметры для настройки локального сервера MCP.

ПараметрТипОбязательноОписание
typeStringДаТип подключения сервера MCP, должен быть "local".
commandArrayДаКоманда и аргументы для запуска сервера MCP.
environmentObjectПеременные окружения для установки при запуске сервера.
enabledBooleanВключить или отключить сервер MCP при запуске.
timeoutNumberТайм-аут в мс для получения инструментов с сервера MCP. По умолчанию 5000 (5 секунд).

Удаленные

Добавляйте удаленные серверы MCP, установив type в "remote".

{
  "$schema": "https://dropstone.io/schema/config.json",
  "mcp": {
    "my-remote-mcp": {
      "type": "remote",
      "url": "https://my-mcp-server.com",
      "enabled": true,
      "headers": {
        "Authorization": "Bearer MY_API_KEY"
      }
    }
  }
}

url — это URL удаленного сервера MCP, а с помощью параметра headers вы можете передать список заголовков.


Параметры

ПараметрТипОбязательноОписание
typeStringДаТип подключения сервера MCP, должен быть "remote".
urlStringДаURL удаленного сервера MCP.
enabledBooleanВключить или отключить сервер MCP при запуске.
headersObjectЗаголовки для отправки с запросом.
oauthObjectКонфигурация аутентификации OAuth. См. раздел OAuth ниже.
timeoutNumberТайм-аут в мс для получения инструментов с сервера MCP. По умолчанию 5000 (5 секунд).

OAuth

Dropstone автоматически обрабатывает аутентификацию OAuth для удаленных серверов MCP. Когда серверу требуется аутентификация, Dropstone:

  1. Обнаруживает ответ 401 и инициирует поток OAuth
  2. Использует Dynamic Client Registration (RFC 7591), если поддерживается сервером
  3. Безопасно сохраняет токены для будущих запросов

Автоматическое

Для большинства серверов MCP с поддержкой OAuth специальная конфигурация не требуется. Просто настройте удаленный сервер:

{
  "$schema": "https://dropstone.io/schema/config.json",
  "mcp": {
    "my-oauth-server": {
      "type": "remote",
      "url": "https://mcp.example.com/mcp"
    }
  }
}

Если серверу требуется аутентификация, Dropstone предложит вам аутентифицироваться при первом использовании. Если нет, вы можете вручную запустить поток с помощью dropstone mcp auth <server-name>.


Предварительно зарегистрированные

Если у вас есть учетные данные клиента от поставщика сервера MCP, вы можете их настроить:

{
  "$schema": "https://dropstone.io/schema/config.json",
  "mcp": {
    "my-oauth-server": {
      "type": "remote",
      "url": "https://mcp.example.com/mcp",
      "oauth": {
        "clientId": "{env:MY_MCP_CLIENT_ID}",
        "clientSecret": "{env:MY_MCP_CLIENT_SECRET}",
        "scope": "tools:read tools:execute"
      }
    }
  }
}

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

Вы можете вручную запустить аутентификацию или управлять учетными данными.

Аутентифицируйтесь на конкретном сервере MCP:

dropstone mcp auth my-oauth-server

Список всех серверов MCP и их статус аутентификации:

dropstone mcp list

Удалить сохраненные учетные данные:

dropstone mcp logout my-oauth-server

Команда mcp auth откроет ваш браузер для авторизации. После авторизации Dropstone безопасно сохранит токены в ~/.local/share/dropstone/mcp-auth.json.


Отключение OAuth

Если вы хотите отключить автоматический OAuth для сервера (например, для серверов, использующих ключи API), установите oauth в false:

{
  "$schema": "https://dropstone.io/schema/config.json",
  "mcp": {
    "my-api-key-server": {
      "type": "remote",
      "url": "https://mcp.example.com/mcp",
      "oauth": false,
      "headers": {
        "Authorization": "Bearer {env:MY_API_KEY}"
      }
    }
  }
}

Параметры OAuth

ПараметрТипОписание
oauthObject | falseОбъект конфигурации OAuth или false для отключения автоматического обнаружения OAuth.
clientIdStringID клиента OAuth. Если не предоставлен, будет предпринята попытка динамической регистрации.
clientSecretStringСекрет клиента OAuth, если требуется сервером авторизации.
scopeStringОбласти OAuth для запроса во время авторизации.

Отладка

Если удаленный сервер MCP не может аутентифицироваться, вы можете диагностировать проблемы с помощью:

# Просмотр статуса аутентификации для всех серверов с поддержкой OAuth
dropstone mcp auth list

# Отладка подключения и потока OAuth для конкретного сервера
dropstone mcp debug my-oauth-server

Команда mcp debug показывает текущий статус аутентификации, проверяет подключение HTTP и пытается выполнить обнаружение OAuth.


Управление

Ваши MCP доступны как инструменты в Dropstone наряду со встроенными инструментами. Поэтому вы можете управлять ими через конфигурацию Dropstone как любым другим инструментом.


Глобальное

Это означает, что вы можете включать или отключать их глобально.

{
  "$schema": "https://dropstone.io/schema/config.json",
  "mcp": {
    "my-mcp-foo": {
      "type": "local",
      "command": ["bun", "x", "my-mcp-command-foo"]
    },
    "my-mcp-bar": {
      "type": "local",
      "command": ["bun", "x", "my-mcp-command-bar"]
    }
  },
  "tools": {
    "my-mcp-foo": false
  }
}

Мы также можем использовать шаблон glob для отключения всех совпадающих MCP.

{
  "$schema": "https://dropstone.io/schema/config.json",
  "mcp": {
    "my-mcp-foo": {
      "type": "local",
      "command": ["bun", "x", "my-mcp-command-foo"]
    },
    "my-mcp-bar": {
      "type": "local",
      "command": ["bun", "x", "my-mcp-command-bar"]
    }
  },
  "tools": {
    "my-mcp*": false
  }
}

Здесь мы используем шаблон glob my-mcp* для отключения всех MCP.


По агентам

Если у вас большое количество серверов MCP, вы можете захотеть включить их только для конкретного агента и отключить глобально. Для этого:

  1. Отключите его как инструмент глобально.
  2. В вашей конфигурации агента включите сервер MCP как инструмент.
{
  "$schema": "https://dropstone.io/schema/config.json",
  "mcp": {
    "my-mcp": {
      "type": "local",
      "command": ["bun", "x", "my-mcp-command"],
      "enabled": true
    }
  },
  "tools": {
    "my-mcp*": false
  },
  "agent": {
    "my-agent": {
      "tools": {
        "my-mcp*": true
      }
    }
  }
}

Шаблоны glob

Шаблон glob использует простые шаблоны регулярных выражений:

  • * соответствует нулю или более любых символов (например, "my-mcp*" соответствует my-mcp_search, my-mcp_list и т. д.)
  • ? соответствует ровно одному символу
  • Все остальные символы совпадают буквально

Note:

Инструменты сервера MCP регистрируются с именем сервера в качестве префикса, поэтому для отключения всех инструментов сервера используйте:

"mymcpservername_*": false

Примеры

Ниже приведены примеры некоторых распространенных серверов MCP. Свяжитесь с нами, если вы хотите, чтобы был задокументирован еще один.


Sentry

Добавьте сервер Sentry MCP для взаимодействия с вашими проектами и проблемами Sentry.

{
  "$schema": "https://dropstone.io/schema/config.json",
  "mcp": {
    "sentry": {
      "type": "remote",
      "url": "https://mcp.sentry.dev/mcp",
      "oauth": {}
    }
  }
}

После добавления конфигурации аутентифицируйтесь в Sentry:

dropstone mcp auth sentry

Это откроет окно браузера для завершения потока OAuth и подключения Dropstone к вашей учетной записи Sentry.

После аутентификации вы можете использовать инструменты Sentry в своих запросах для запроса проблем, проектов и данных об ошибках.

Show me the latest unresolved issues in my project. use sentry

Context7

Добавьте сервер Context7 MCP для поиска в документации.

{
  "$schema": "https://dropstone.io/schema/config.json",
  "mcp": {
    "context7": {
      "type": "remote",
      "url": "https://mcp.context7.com/mcp"
    }
  }
}

Если вы зарегистрировались на бесплатную учетную запись, вы можете использовать свой ключ API и получить более высокие лимиты скорости.

{
  "$schema": "https://dropstone.io/schema/config.json",
  "mcp": {
    "context7": {
      "type": "remote",
      "url": "https://mcp.context7.com/mcp",
      "headers": {
        "CONTEXT7_API_KEY": "{env:CONTEXT7_API_KEY}"
      }
    }
  }
}

Здесь мы предполагаем, что у вас установлена переменная окружения CONTEXT7_API_KEY.

Добавьте use context7 в ваши запросы для использования сервера Context7 MCP.

Configure a Cloudflare Worker script to cache JSON API responses for five minutes. use context7

Альтернативно, вы можете добавить что-то подобное в ваш AGENTS.md.

When you need to search docs, use `context7` tools.

Grep by Vercel

Добавьте Grep by Vercel сервер MCP для поиска фрагментов кода на GitHub.

{
  "$schema": "https://dropstone.io/schema/config.json",
  "mcp": {
    "gh_grep": {
      "type": "remote",
      "url": "https://mcp.grep.app"
    }
  }
}

Поскольку мы назвали наш сервер MCP gh_grep, вы можете добавить use the gh_grep tool в ваши запросы, чтобы агент его использовал.

What's the right way to set a custom domain in an SST Astro component? use the gh_grep tool

Альтернативно, вы можете добавить что-то подобное в ваш AGENTS.md.

If you are unsure how to do something, use `gh_grep` to search code examples from GitHub.
Ctrl+I