MCP-Typescribe — сервер MCP, предоставляющий информацию API LLM
Проблема
Большие языковые модели (LLM) достигли невероятных успехов в генерации кода и производительности разработчиков. Однако они сталкиваются с ключевым ограничением: они могут надежно использовать только API и библиотеки, которые они видели во время обучения. Это создает узкое место для принятия новых инструментов, SDK или внутренних API — LLM просто не знают, как использовать их эффективно.
Хотя инструментам можно предоставить доступ к исходному коду (при взаимодействии с API, для которых доступны исходники) или доступ к файлам документации (например, файлам определения типов TypeScript), это не очень хорошо масштабируется для больших API. LLM-специалистам нужен более эффективный способ узнать больше об API. Помещение всей документации в контекст для каждого запроса неэффективно, неосуществимо и приводит к плохим результатам.
Как результат:
Более крупные новые или внутренние API остаются «невидимыми» для LLM.
Разработчики должны вручную направлять студентов LLM или предоставлять примеры использования.
Инновации замедляются из-за задержки между выпуском API и его широким пониманием инструментами ИИ.
Идея
Этот проект представляет собой реализацию Model Context Protocol (MCP) с открытым исходным кодом — протокола, разработанного для предоставления LLM контекстного доступа к информации в реальном времени. В данном случае это документация API, и в частности, на данный момент в этом проекте — определения TypeScript.
Наша цель:
Преобразовывать определения TypeScript (и другие) в машиночитаемый формат.
Предоставляйте этот контекст динамически студентам LLM с помощью таких инструментов, как Claude, Cline, Cursor или Windsurf, а также других пользовательских интерфейсов.
Обеспечьте агентное поведение, позволив LLM запрашивать, планировать и адаптироваться к незнакомым API без переобучения.
Что это дает
Поддержка API Plug-and-play для помощников по кодированию на базе LLM.
Более быстрая интеграция новых или фирменных SDK.
Шаг к более автономным, контекстно-зависимым агентам кодирования.
Обзор проекта
Этот проект предоставляет агентам ИИ возможность эффективно исследовать и понимать неизвестные API TypeScript. Он загружает документацию JSON, сгенерированную TypeDoc, и предоставляет ее через набор конечных точек запросов, которые позволяют агентам искать символы, получать подробную информацию о конкретных частях API и понимать отношения между различными компонентами.
Текущие возможности
- Интеграция TypeDoc : загружает и индексирует документацию TypeDoc JSON для эффективного выполнения запросов.
- Расширенные возможности запросов : предоставляет широкий спектр инструментов для исследования API TypeScript.
- Протокол MCP : следует протоколу контекста модели для бесшовной интеграции с агентами ИИ.
Возможности запроса
Сервер предоставляет следующие инструменты для запросов к API:
search_symbols
: Поиск символов по имени с дополнительной фильтрацией по типуget_symbol_details
: Получить подробную информацию о конкретном символеlist_members
: Список методов и свойств класса или интерфейсаget_parameter_info
: Получить информацию о параметрах функцииfind_implementations
: Поиск реализаций интерфейсов или подклассовsearch_by_return_type
: Поиск функций, возвращающих определенный типsearch_by_description
: Поиск в комментариях JSDocget_type_hierarchy
: Показать отношения наследованияfind_usages
: Найти, где используется тип/функция
Начиная
Предпосылки
- Node.js
- нпм
Установка
- Клонировать репозиторий
- Установите зависимости:
Использование
- Сгенерируйте TypeDoc JSON для вашего API TypeScript:Если у вас (только) есть существующий файл
.d.ts
, вы можете создать файл api json следующим образом:Создайте отдельныйtsconfig.docs.json
:Тогда сделай - Создайте проект:
- Исследуйте сервер MCP:
- Подключите агента ИИ к серверу для запроса APIНапример, для cline в VSCode укажите следующий сервер MCP в
cline_mcp_settings.json
: - Включите сервер и, скорее всего, автоматически одобрите различные инструменты. Попросите агента использовать инструмент "typescribe", чтобы узнать о вашем API.
Структура проекта
src/sample-api/
: пример API TypeScript для тестирования — он использует странный диалект, похожий на немецкий, для имен API, чтобы проверить, что LLM не галлюцинирует APIsrc/mcp-server/
: Реализация сервера MCPutils/
: Вспомогательные функцииschemas/
: Схемы JSON для инструментов MCPcore/
: Основная функциональностьserver.ts
: Реализация сервера MCPindex.ts
: Точка входа для экспорта библиотекиcli.ts
: точка входа для CLI/бинарного файла
tests/
: Тесты функциональности API
Разработка
Проведение тестов
Здание
Лицензия
Массачусетский технологический институт
Авторские права 2025 yWorks GmbH - https://www.yworks.com
This server cannot be installed
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Сервер MCP, который позволяет LLM-специалистам понимать и работать с API TypeScript, которым они не обучались, предоставляя структурированный доступ к определениям и документации типов TypeScript.
Related MCP Servers
- -securityFlicense-qualityA TypeScript-based server that provides a memory system for Large Language Models (LLMs), allowing users to interact with multiple LLM providers while maintaining conversation history and offering tools for managing providers and model configurations.Last updated -20JavaScript
- AsecurityFlicenseAqualityA template for creating Model Context Protocol (MCP) servers in TypeScript, offering features like container-based dependency injection, a service-based architecture, and integration with the LLM CLI for architectural design feedback through natural language.Last updated -15TypeScript
- -securityFlicense-qualityA TypeScript-based MCP server that enables users to manage text notes and generate summaries, showcasing key MCP concepts like resource representation and LLM integration.Last updated -1,667JavaScript
- -securityFlicense-qualityA TypeScript-based MCP server that enables LLM agents to interact with Gel databases through natural language, providing tools to learn database schemas, validate and execute EdgeQL queries.Last updated -5TypeScript