TypeScript Definition Finder
TypeScript 정의 찾기 MCP 서버
AI 코드 편집기가 코드베이스에서 TypeScript 심볼 정의를 찾을 수 있도록 돕는 모델 컨텍스트 프로토콜(MCP) 서버입니다. 이 도구는 TypeScript 프로젝트에서 가져온 심볼, 클래스, 인터페이스 또는 함수의 원래 정의를 찾아야 할 때 특히 유용합니다.
특징
TypeScript 기호의 원래 정의를 찾습니다.
외부 패키지에서 가져온 심볼로 작동합니다.
정의 위치와 코드 조각을 모두 반환합니다.
AI 코드 편집기와의 원활한 통합을 위해 stdio 인터페이스를 지원합니다.
Related MCP server: agent-workspace-mcp
필수 조건
Bun v1.2.2 이상
컴파일된 서버를 실행하기 위한 Node.js
설치
Smithery를 통해 설치
Smithery를 통해 Claude Desktop용 TypeScript Definition Finder를 자동으로 설치하려면 다음을 수행합니다.
지엑스피1
수동 설치
종속성 설치:
bun install프로젝트를 빌드하세요:
bun run build용법
stdio 서버를 시작합니다.
node dist/run.js도구 설명
서버는 다음과 같은 기능을 갖춘 find_typescript_definition 도구를 제공합니다.
도구 이름 :
find_typescript_definition트리거 명령 :
/ts-def(AI 편집기가 참조된 심볼 정의를 찾도록 하려는 경우Cursor에서 유용함)목적 : 코드베이스에서 TypeScript 심볼의 원래 정의를 찾습니다.
입력 매개변수
이 도구에는 세 가지 매개변수가 필요합니다.
file_path(문자열):현재 TypeScript 파일의 절대 경로
예:
/path/to/your/project/src/index.ts
line_content(문자열):정의를 찾고자 하는 기호가 포함된 전체 줄
파일에서 올바른 줄을 찾는 데 사용됩니다.
파일에서 나타나는 것과 정확히 일치하는 줄이어야 합니다.
column_number(숫자):기호가 시작되는 1부터 시작하는 열 번호
기호의 첫 번째 문자의 정확한 열 위치여야 합니다.
예시
가져온 심볼 정의 찾기
다음과 같은 수입 진술이 주어졌습니다.
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"
}
]로컬 심볼 정의 찾기
로컬 클래스 사용의 경우:
class MyService {
private transport: StdioServerTransport;
}20열에서 시작하는 StdioServerTransport 의 정의를 찾으려면 다음을 사용하세요.
{
"file_path": "/path/to/project/src/service.ts",
"line_content": " private transport: StdioServerTransport;",
"column_number": 20
}응답 형식
이 도구는 다음을 포함하는 JSON 응답을 반환합니다.
정의가 발견된 파일 경로
정의의 줄 번호
정의의 실제 코드 조각
클로드 데스크톱 예제
개발
이 프로젝트는 bun v1.2.2에서 bun init 사용하여 생성되었습니다. Bun은 빠른 올인원 JavaScript 런타임입니다.
개발 모드에서 실행
개발을 위해 Bun을 사용하여 서버를 직접 실행할 수 있습니다.
bun run index.ts특허
[여기에 라이센스 정보를 추가하세요]
기여하다
[여기에 기여 지침을 추가하세요]
Available Tools
1 toolfind_typescript_definitionB
Use /ts-def to trigger this tool. This tool can find the definition of a TypeScript symbol in your codebase. When you encounter an imported symbol (e.g., 'import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js"'), this tool will locate its original definition file and code. Simply provide the current file path, the symbol you want to find (e.g., 'StdioServerTransport'), and the line content containing that symbol.
| Name | Required | Description | Default |
|---|---|---|---|
| file_path | Yes | The absolute path to the current typescript file (e.g., '/remote/.../src/index.ts') | |
| symbol | Yes | The TypeScript symbol (variable, class name, interface, type, etc.) you want to find the definition of. This symbol must be present in the line_content. | |
| line_content | Yes | The entire line containing the symbol you want to find the definition of. The line content will be used to find both the line number in the file and the exact position of the symbol. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. While it explains what the tool does (finds definitions) and provides usage examples, it doesn't disclose important behavioral traits like error conditions, performance characteristics, rate limits, authentication needs, or what happens when symbols aren't found. For a tool with zero annotation coverage, this leaves significant gaps in understanding its behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is appropriately sized and front-loaded, starting with the triggering mechanism and core purpose. Each sentence adds value: the first explains triggering, the second states the purpose, the third provides usage context, and the fourth explains parameter usage. There's minimal redundancy, though the final sentence could be slightly more concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given there's no output schema and no annotations, the description provides adequate basic information about what the tool does and how to use it. However, for a tool that performs code analysis (potentially complex), it lacks information about return format, error handling, and limitations. The description is complete enough for basic understanding but leaves important contextual gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 100%, so the schema already fully documents all three parameters. The description adds some context about how parameters relate ('symbol must be present in the line_content') and provides examples, but doesn't add significant semantic meaning beyond what's already in the schema descriptions. This meets the baseline expectation when schema coverage is complete.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'find the definition of a TypeScript symbol in your codebase' with specific examples. It uses the verb 'find' and identifies the resource 'TypeScript symbol definition'. However, since there are no sibling tools mentioned, it cannot demonstrate differentiation from alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for when to use the tool: 'When you encounter an imported symbol... this tool will locate its original definition file and code.' It gives specific examples and explains the triggering mechanism ('/ts-def'). However, it doesn't explicitly state when NOT to use it or mention any alternatives since no siblings exist.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
1 tool update
- First observed
find_typescript_definition
TDQS
Scored across 1 tool
With only one tool, there is no possibility of ambiguity or overlap between tools. The tool's purpose is clearly defined and distinct.
The single tool name 'find_typescript_definition' follows a clear verb_noun pattern, and with only one tool, consistency is inherently perfect.
A single tool is too few for a server named 'TypeScript Definition Finder', as it suggests a limited scope that might not cover related operations like searching multiple symbols or handling different import types. Typically, such a domain would benefit from additional tools for broader functionality.
The tool surface is severely incomplete for the domain. While it can find definitions, there are obvious gaps such as listing available symbols, handling bulk searches, or providing context about dependencies, which limits agent effectiveness in TypeScript code exploration.
Maintenance
Related MCP Connectors
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
A Model Context Protocol server for Wix AI tools
Coding agents in multi-service codebases routinely rebuild existing helpers, trust stale type definitions, and modify API contracts without knowing who consumes them. Carrick solves this by indexing your entire TypeScript ecosystem across service and repository boundaries. By integrating deeply with the TypeScript compiler, Carrick traces every route, type, and cross-service call while recording function behaviour so agents search by intent rather than name. Delivered via MCP for AI agents and LSP for IDEs, Carrick ensures models see existing endpoints and utilities before generating new code. The scanner is source-available and runs from your CLI or CI pipeline.
An MCP server that gives your AI access to the source code and docs of all public github repos
Related MCP Servers
AlicenseNot gradedqualityAmaintenanceA Model Context Protocol server that enhances AI agents by providing deep semantic understanding of codebases, enabling more intelligent interactions through advanced code search and contextual awareness.91MIT- AlicenseAqualityDmaintenanceA TypeScript-aware MCP server that provides coding agents with repository discovery, code intelligence, and web project context for local codebases. It enables deep symbol navigation, diagnostic reporting, and structural analysis of monorepos without requiring full IDE integration.715 npm1MIT
- AlicenseNot gradedqualityAmaintenanceA self-hosted MCP and HTTP server for TypeScript code intelligence, providing AI agents with fast semantic code navigation tools like finding definitions, references, implementations, file outlines, dependency graphs, and search.344 npmAGPL 3.0
- AlicenseNot gradedqualityCmaintenanceA local MCP server that gives AI coding agents symbol definitions, dependency graphs, and a live architecture vocabulary for TypeScript/JavaScript repos, with no network or embeddings.16 npmMIT