MCP-Typescribe
一个 MCP 服务器,它通过提供对 TypeScript 类型定义和文档的结构化访问,使 LLM 能够理解和使用它们未经过训练的 TypeScript API。
README
MCP-Typescribe - 提供 LLM API 信息的 MCP 服务器
问题
大型语言模型 (LLM) 在代码生成和开发者生产力方面取得了令人难以置信的进步。然而,它们面临一个关键限制:它们只能可靠地使用在训练期间见过的 API 和库。这为采用新工具、SDK 或内部 API 造成了瓶颈——LLM 根本不知道如何有效地使用它们。
虽然可以向工具提供源代码访问权限(在与可以获得源代码的 API 交互时)或访问文档文件(例如 TypeScript 类型定义文件),但这对于大型 API 来说扩展性不好。 LLM 需要一种更有效的方式来了解更多关于 API 的信息。将所有文档放入每个请求的上下文中效率低下、不可行,并且会导致不良结果。
因此:
更大的新的或内部 API 对 LLM 仍然“不可见”。
开发人员必须手动指导 LLM 或提供示例用法。
API 发布与其被 AI 工具广泛理解之间存在滞后,从而减缓了创新。
想法
本项目是模型上下文协议 (MCP) 的开源实现——该协议旨在为 LLM 提供对信息的上下文、实时访问。 在这种情况下,它是 API 文档,特别是目前本项目中的 TypeScript 定义。
我们的目标是:
将 TypeScript(和其他)定义解析为机器可读的格式。
通过 Claude、Cline、Cursor 或 Windsurf 等工具和其他自定义界面,将此上下文动态地提供给 LLM。
通过让 LLM 查询、计划和适应不熟悉的 API 而无需重新训练,从而实现代理行为。
这实现了什么
即插即用的 API 支持基于 LLM 的编码助手。
更快地加入新的或专有的 SDK。
朝着更自主、上下文感知的编码代理迈出一步。
项目概览

该项目提供了一种让 AI 代理有效地探索和理解未知 TypeScript API 的方法。 它加载 TypeDoc 生成的 JSON 文档,并通过一组查询端点公开它,这些端点允许代理搜索符号、获取有关 API 特定部分的详细信息,并了解不同组件之间的关系。
当前功能
- TypeDoc 集成:加载和索引 TypeDoc JSON 文档以进行高效查询
- 全面的查询能力:提供广泛的工具来探索 TypeScript API
- MCP 协议:遵循模型上下文协议,以便与 AI 代理无缝集成
查询能力
服务器提供以下工具来查询 API:
search_symbols:按名称查找符号,可以选择按类型进行过滤get_symbol_details:获取有关特定符号的详细信息list_members:列出类或接口的方法和属性get_parameter_info:获取有关函数参数的信息find_implementations:查找接口或子类的实现search_by_return_type:查找返回特定类型的函数search_by_description:在 JSDoc 注释中搜索get_type_hierarchy:显示继承关系find_usages:查找类型/函数的使用位置
开始使用
前提条件
- Node.js
- npm
安装
- 克隆存储库
- 安装依赖项:
npm install
用法
-
为您的 TypeScript API 生成 TypeDoc JSON:
npx typedoc --json docs/api.json --entryPointStrategy expand path/to/your/typescript/files如果您(仅)有一个现有的
.d.ts文件,您可以像这样创建一个 api json 文件:创建一个单独的
tsconfig.docs.json:{ "extends": "./tsconfig.json", "files": ["existing.d.ts"], "typedocOptions": { "entryPoints": ["existing.d.ts"], "json": "docs/api.json", "pretty": false } }然后执行
npx typedoc --tsconfig tsconfig.docs.json -
构建项目:
npm run build -
探索 MCP 服务器:
npx @modelcontextprotocol/inspector node ./dist/mcp-server/index.js run-server docs/api.json -
将 AI 代理连接到服务器以查询 API
例如,在 VSCode 中使用 cline,在
cline_mcp_settings.json中指定以下 MCP 服务器:{ "mcpServers": { "typescribe": { "command": "npx", "args": [ "-y", "mcp-typescribe@latest", "run-server", "<PATH_TO_API_DOT_JSON>" ], "env": {} } } } -
启用服务器并可能自动批准各种工具。 告诉代理使用“typescribe”工具来了解您的 API。
项目结构
src/sample-api/: 用于测试的示例 TypeScript API - 它使用一种奇怪的类似德语的方言来命名 API,以测试 LLM 是否会幻觉 APIsrc/mcp-server/: MCP 服务器实现utils/: 实用函数schemas/: MCP 工具的 JSON 模式core/: 核心功能server.ts: MCP 服务器实现index.ts: 入口点
tests/: API 功能的测试
开发
运行测试
npm test
构建
npm run build
许可证
MIT
版权所有 2025 yWorks GmbH - https://www.yworks.com
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。