mcpField
T
TypeScript Definition Finder MCP Server

TypeScript Definition Finder MCP Server

ローカル
github.com/runninghare開発ツール084 週間前に更新

TypeScript Definition Finder MCP Server について

TypeScript Definition Finder MCP Serverは、AIコードエディターがコードベース内のTypeScriptシンボルの元の定義を探すためのサーバーです。外部パッケージからのインポートにも対応し、定義位置とコードスニペットを返します。

主な機能

  1. 01TypeScriptシンボルの定義を検索
  2. 02外部パッケージからのインポートに対応
  3. 03定義位置とコードスニペットを返却
  4. 04stdioでAIコードエディターに接続

活用シーン

  1. 01インポートしたクラスや関数の定義を追跡
  2. 02インターフェースやクラスの宣言元を特定
  3. 03Cursorでシンボル検索を明示的に実行

MCP 対応

MCPサーバーはstdio経由でAIコードエディターに`find_typescript_definition`ツールを提供し、シンボル定義の検索結果と関連するコードスニペットを返します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"ts-def": {
"command": "npx",
"args": [
"-y",
"@smithery/cli"
]
}
}
}
起動コマンドnpx -y @smithery/cli

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npm@smithery/cli

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

TypeScript 定義検索 MCP サーバー

Smithery バッジ

AI コードエディターがコードベース内の TypeScript シンボルの定義を見つけるのを支援する Model Context Protocol(MCP)サーバーです。このツールは、TypeScript プロジェクトでインポートされたシンボル、クラス、インターフェース、関数の元の定義を見つける必要がある場合に特に役立ちます。

機能

  • TypeScript シンボルの元の定義を検索します
  • 外部パッケージからインポートされたシンボルにも対応します
  • 定義の場所とコードスニペットの両方を返します
  • AI コードエディターとシームレスに連携できる stdio インターフェースに対応します

前提条件

  • Bun v1.2.2 以降
  • コンパイル済みサーバーの実行に必要な Node.js

インストール

Smithery 経由でのインストール

Smithery 経由で、TypeScript Definition Finder を Claude Desktop に自動インストールするには:

npx -y @smithery/cli install @runninghare/ts-def-mcp --client claude
手動インストール
  1. 依存関係をインストールします:
bun install
  1. プロジェクトをビルドします:
bun run build

使用方法

stdio サーバーを起動します:

node dist/run.js
ツールの説明

このサーバーは、次の機能を持つ find_typescript_definition ツールを提供します:

  • ツール名:find_typescript_definition
  • トリガーコマンド:/ts-def(参照先シンボルの定義を AI エディターに強制的に検索させたい場合、Cursor で便利です)
  • 目的:コードベース内の TypeScript シンボルの元の定義を特定します
入力パラメーター

このツールには、次の 3 つのパラメーターが必要です:

  1. file_path(文字列):

    • 現在の TypeScript ファイルの絶対パス
    • 例:/path/to/your/project/src/index.ts
  2. line_content(文字列):

    • 定義を検索するシンボルを含む行全体
    • ファイル内の正しい行を特定するために使用します
    • ファイルに記載されている行と完全に一致する必要があります
  3. column_number(数値):

    • シンボルの開始位置を示す、1 を起点とする列番号
    • シンボルの最初の文字の列位置と正確に一致する必要があります
例
  1. インポートされたシンボルの定義を検索する

次の import 文がある場合:

import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";

10 列目から始まる StdioServerTransport の定義を検索するには、次のように指定します:

{
  "file_path": "~/my-mcp-project/src/index.ts",
  "line_content": "import { StdioServerTransport } from \"@modelcontextprotocol/sdk/server/stdio.js\";",
  "column_number": 10
}

このツールの出力は次のようになります:

[
  {
    "file": "~/my-mcp-project/node_modules/@modelcontextprotocol/sdk/dist/esm/server/stdio.d.ts",
    "type": "Definition",
    "location": "Line 9, Column 22",
    "codeSnippet": "   8    */\n   9 > export declare class StdioServerTransport implements Transport {\n  10 +     private _stdin;\n  11 +     private _stdout;\n  12 +     private _readBuffer;\n  13 +     private _started;\n  14 +     constructor(_stdin?: Readable, _stdout?: Writable);\n  15 +     onclose?: () => void;\n  16 +     onerror?: (error: Error) => void;\n  17 +     onmessage?: (message: JSONRPCMessage) => void;\n  18 +     _ondata: (chunk: Buffer) => void;\n  19 +     _onerror: (error: Error) => void;\n  20 +     /**\n  21 +      * Starts listening for messages on stdin.\n  22 +      */\n  23 +     start(): Promise<void>;\n  24 +     private processReadBuffer;\n  25 +     close(): Promise<void>;\n  26 +     send(message: JSONRPCMessage): Promise<void>;\n  27   }\n"
  }
]
  1. ローカルシンボルの定義を検索する

ローカルクラスを使用する場合:

class MyService {
  private transport: StdioServerTransport;
}

20 列目から始まる StdioServerTransport の定義を検索するには、次のように指定します:

{
  "file_path": "/path/to/project/src/service.ts",
  "line_content": "  private transport: StdioServerTransport;",
  "column_number": 20
}
レスポンス形式

このツールは、次の情報を含む JSON レスポンスを返します:

  • 定義が見つかったファイルパス
  • 定義の行番号
  • 定義の実際のコードスニペット
Claude Desktop の例
2025-03-16_19-15-46

開発

このプロジェクトは、bun v1.2.2 で bun init を使用して作成されました。Bun は、高速なオールインワンの JavaScript ランタイムです。

開発モードでの実行

開発時は、Bun を使用してサーバーを直接実行できます:

bun run index.ts

ライセンス

[ライセンス情報をここに追加してください]

貢献

[貢献ガイドラインをここに追加してください]

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。