MCP-Typescribe

MCP-Typescribe

An MCP server that enables LLMs to understand and work with TypeScript APIs they haven't been trained on by providing structured access to TypeScript type definitions and documentation.

Category
Visit Server

README

npm version

MCP-Typescribe - an MCP Server providing LLMs API information

The Problem

Large Language Models (LLMs) have made incredible strides in code generation and developer productivity. However, they face a key limitation: they can only reliably use APIs and libraries they’ve seen during training. This creates a bottleneck for adopting new tools, SDKs, or internal APIs — LLMs simply don’t know how to use them effectively.

While tools can be given source code access (when interacting with APIs for which the sources are available) or access to documentation files (e.g. typescript type definition files), this doesn't scale well for large APIs. LLMs need a more efficient way to learn more about an API. Putting all the documentation into context for every request is inefficient, unfeasible, and leads to poor results.

As a result:

Larger new or internal APIs remain "invisible" to LLMs.

Developers must manually guide LLMs or provide example usage.

Innovation is slowed by the lag between an API’s release and its widespread understanding by AI tools.

The Idea

This project is an open-source implementation of the Model Context Protocol (MCP)—a protocol designed to provide LLMs with contextual, real-time access to information. In this case it's the API documentation, and particularly for now in this project TypeScript definitions.

Our goal is to:

Parse TypeScript (and other) definitions into a machine-readable format.

Serve this context dynamically to LLMs through tools like Claude, Cline, Cursor, or Windsurf and other custom interfaces.

Enable agentic behavior by letting LLMs query, plan, and adapt to unfamiliar APIs without retraining.

What This Enables

Plug-and-play API support for LLM-based coding assistants.

Faster onboarding for new or proprietary SDKs.

A step toward more autonomous, context-aware coding agents.

Project Overview

Image

This project provides a way for AI agents to efficiently explore and understand unknown TypeScript APIs. It loads TypeDoc-generated JSON documentation and exposes it through a set of query endpoints that allow agents to search for symbols, get detailed information about specific parts of the API, and understand relationships between different components.

Current Features

  • TypeDoc Integration: Loads and indexes TypeDoc JSON documentation for efficient querying
  • Comprehensive Query Capabilities: Provides a wide range of tools for exploring TypeScript APIs
  • MCP Protocol: Follows the Model Context Protocol for seamless integration with AI agents

Query Capabilities

The server provides the following tools for querying the API:

  • search_symbols: Find symbols by name with optional filtering by kind
  • get_symbol_details: Get detailed information about a specific symbol
  • list_members: List methods and properties of a class or interface
  • get_parameter_info: Get information about function parameters
  • find_implementations: Find implementations of interfaces or subclasses
  • search_by_return_type: Find functions returning a specific type
  • search_by_description: Search in JSDoc comments
  • get_type_hierarchy: Show inheritance relationships
  • find_usages: Find where a type/function is used

Getting Started

Prerequisites

  • Node.js
  • npm

Installation

  1. Clone the repository
  2. Install dependencies:
    npm install
    

Usage

  1. Generate TypeDoc JSON for your TypeScript API:

    npx typedoc --json docs/api.json --entryPointStrategy expand path/to/your/typescript/files
    

    If you (only) have an existing.d.ts file, you can create an api json file like so:

    Create a separate tsconfig.docs.json:

    {
      "extends": "./tsconfig.json",
      "files": ["existing.d.ts"],
      "typedocOptions": {
        "entryPoints": ["existing.d.ts"],
        "json": "docs/api.json",
        "pretty": false
      }
    }
    

    Then do

    npx typedoc --tsconfig tsconfig.docs.json
    
  2. Build the project:

    npm run build
    
  3. Explore the MCP server:

    npx @modelcontextprotocol/inspector node ./dist/mcp-server/index.js run-server docs/api.json
    
  4. Connect an AI agent to the server to query the API

    E.g. with cline in VSCode, specify the following MCP server in cline_mcp_settings.json:

    {
      "mcpServers": {
        "typescribe": {
          "command": "npx",
          "args": [
            "-y",
            "mcp-typescribe@latest",
            "run-server",
            "<PATH_TO_API_DOT_JSON>"
          ],
          "env": {}
        }
      }
    }
    
  5. Enable the server and likely auto-approve the various tools. Tell the agent to use the "typescribe" tool to learn about your API.

Project Structure

  • src/sample-api/: A sample TypeScript API for testing - it uses a weird German-like dialect for the API names to test that the LLM does not hallucinate the API
  • src/mcp-server/: The MCP server implementation
    • utils/: Utility functions
    • schemas/: JSON schemas for the MCP tools
    • core/: Core functionality
    • server.ts: The MCP server implementation
    • index.ts: Entry point
  • tests/: Tests for the API functionality

Development

Running Tests

npm test

Building

npm run build

License

MIT

Copyright 2025 yWorks GmbH - https://www.yworks.com

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured