Перейти к основному содержимому

Подключите пользовательский инструмент MCP

Практический пример Запрос общедоступной таблицы QC через локальный сервер MCP

Этот пример показывает существующую общедоступную таблицу RNA-seq QC через небольшой локальный сервер MCP. Считывает фиксированный CSV и предлагает две операции. Он не запрашивает сеть, не устанавливает пакеты и не изменяет набор данных.

Платформа
Ваш выбор хранится в разных главах.

Скачать реальный пример

Сохраните оба файла локально и отметьте их полные пути. Сервер использует стандартную библиотеку Python. Он считывает выбранный CSV при запуске, поэтому перезагрузите / подключите его намеренно, если вы замените этот ввод.

Добавить в Open-Science

  1. Открыть Settings → Connectors → Add connector → Local command.
  2. Установите Display name на GSE60450 QC.
  3. Выберите python3 — script file как Command или Other… с фактическим исполняемым путем Python на Windows.
  4. Открыть Advanced settings. Установите имя разъема/ID на gse60450-qc и опишите его как доступ только для чтения к сохраненной таблице QC.
  5. В Arguments поставьте абсолютный путь сценария на первую строку, а абсолютный путь CSV — на вторую. Каждая строка — это один аргумент. Не добавляйте кавычки вокруг пути только потому, что он содержит пробелы.
  6. Оставьте окружающую среду пустой для этого примера. Просмотрите скрипт сервера, проверьте I trust this connector, затем Add.
  7. Найдите GSE60450 и подтвердите наличие Connected и Main Agent.

Реальная локальная конфигурация MCP

/absolute/path/qc-mcp-server.py
/absolute/path/rnaseq-sample-qc.csv

Эти две линии являются шаблоном пути, а не буквальными путями для вставки без изменений. Если python3 недоступен для приложения, выберите «Другой» и фактический исполняемый путь. Выбранная пусковая установка должна существовать на этом компьютере.

Инструментальные входы и проверенные выходы

ИнструментВводРеальный ожидаемый контент
get_dataset_summaryПустой объектGSE60450, URL-адрес источника, имя файла ввода, строки 12 и идентификаторы полного образца
get_sample_qcsample_id струнаЧетыре количественных метрики QC выбранной выборки

Спросите у агента:

Используйте подключенный gse60450-qc Connector. Звоните get_dataset_summary, затем get_sample_qc для MCL1-DG_BC2CTUACXX_ACTTGA_L002_R1. Сообщайте только реальные ответы и сохраняйте CSV.

В этом примере нативное приложение вернуло Общие подсчеты 23,227,641, гены нулевого счета 8,664, гены, обнаруженные 18,515, и медиана 237 для этого образца. Звонок набора данных-резюме возвращал строки 12. Они соответствуют оригинальному сохраненному столу QC.

Пользовательский Connector успешно подключился

Проверить поведение сервера и ошибки

Сервер реализует инициализацию MCP, ping, обнаружение инструментов и вызовы через stdio. Его две схемы инструментов определены в загружаемом скрипте. Стандартным выходом является протокольный канал; Добавление обычных отладочных отпечатков может нарушить соединение. Локальная диагностика проводится по стандартной ошибке.

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

Не используйте протокол tools/list в качестве бизнес-инструмента через host.mcp; Приложение уже обнаруживает инструменты сервера во время подключения. Попытка звонка gse60450-qc/tools/list была отклонена как неизвестный инструмент. Используйте обнаруженные имена операций или проверьте собственную схему сервера.

Экспорт и переезд на другой компьютер

Выберите строку Actions → Export, выберите нужный формат и проверьте предварительный просмотр конфигурации. Реальный экспорт предупредил, что оба пути аргументации были локальными. Save configuration экспортирует настройки, а не интерпретатор Python, скрипт или CSV. Скопируйте эти файлы отдельно, обновите пути, подтвердите локальное доверие и повторите оба успешных вызова.

неудачаПроверить
Командование не может начатьсяИсполняемый путь, путь сценариев и разрешения файлов
CSV нельзя читатьВторой аргумент и фактическое местоположение файла
Подключенный, но инструмент недоступенЗадание агента, текущий каталог и точное название инструмента
Плохой входОбязательное sample_id оригинального полного идентификатора, а не компактной этикетки
Ошибка Connector после неудачного звонкаПроверять данные об ошибках сервера/приложения и повторно подключаться, когда это необходимо
Работает в терминале, но не в приложенииApp-visible executable/environment and protocol-only stdout (недоступная ссылка)

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

Ссылка на осуществление: ConnectorAddForm.tsx, Service.ts.

Для управления той же пользовательской конфигурацией MCP из скриптов используйте Команды Connector CLI или Методы SDK. Успешный тест на подключение обнаруживает инструменты; Проверить отдельный ограниченный бизнес-звонок, прежде чем вызывать операционную интеграцию.