mcpField
T
TypeSpec MCP Server and Emitter

TypeSpec MCP Server and Emitter

Local
github.com/microsoftDeveloper Tools50Updated 9w ago

About TypeSpec MCP Server and Emitter

TypeSpec MCP Server is a set of packages for building MCP servers with TypeSpec, including an MCP server, a TypeSpec library and code emitters. It is for developers writing MCP extensions, and the project is in public preview with APIs that may change before general availability.

Key features

  1. 01MCP server that assists with TypeSpec authoring
  2. 02typespec-mcp library with decorators such as @tool
  3. 03Emitter that generates JavaScript MCP server code
  4. 04Emitter that generates JavaScript code calling REST APIs

Use cases

  1. 01Generating an MCP server from a TypeSpec description
  2. 02Scaffolding a TypeSpec project from VS Code agent mode

MCP support

The project is itself an MCP server that exposes learnTypeSpec, init, compile and build tools to MCP clients. Its TypeSpec library and emitters generate code for new MCP servers.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

No install method listed yet

We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.

Repository

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

TypeSpec MCP Server and Emitter

Install with NPX in VS Code Install with NPX in VS Code Insiders

The TypeSpec MCP Server implements the MCP specification to enable you to quickly build out your own MCP servers powered by TypeSpec. We will also enable you to build REST APIs and other protocols supported by TypeSpec, though this is work in progress.

Please note that this project is in Public Preview and implementation may significantly change prior to our General Availability.

Overview

What packages are in this repository?

Currently this repo contains the following packages:

  • mcp-server-typespec - an MCP server which assists in developing MCP extensions using TypeSpec.
  • typespec-mcp - a TypeSpec library for describing MCP servers, for example the @tool decorator.
  • typespec-mcp-server-js - A TypeSpec emitter that generates a server implementation in JavaScript for an MCP tool.
  • typespec-mcp-http-server-js - A TypeSpec emitter that generates a server implementation in JavaScript for calling a remote REST API.

Currently Supported Tools

The TypeSpec MCP Server provides the following tools:

  • learnTypeSpec - Initializes the model with information about how to understand and write TypeSpec.
  • init - Scaffolds out a new project in the current working directory with example tool implementation.
  • compile - Runs tsp compile to generate emitter assets
  • build - Executes npm run build in the current project.

Getting Started

The TypeSpec MCP Server requires Node.js to install and run the server. If you don't have it installed, follow the instructions here.

VS Code + GitHub Copilot

The TypeSpec MCP Server provides assistance with authoring TypeSpec to generate MCP resource implementations. It can be used alone or with the TypeSpec VS Code extension in VS Code.

Prerequisites
  1. Install either the stable or Insiders release of VS Code:
  2. Install the GitHub Copilot and GitHub Copilot Chat extensions
  3. Install Node.js 20 or later
    • Ensure node and npm are in your path
  4. Open VS Code in an empty folder
Installation
One-Click Install

Click one of these buttons to install the TypeSpec MCP Server for VS Code or VS Code Insiders.

Install with NPX in VS Code Install with NPX in VS Code Insiders

Once you've installed the TypeSpec MCP Server, make sure you select GitHub Copilot Agent Mode and refresh the tools list. To learn more about Agent Mode, visit the VS Code Documentation.

Manual Install

For a step-by-step installation, follow these instructions:

  1. Add .vscode/mcp.json:
{
  "servers": {
    "TypeSpec MCP Server": {
      "command": "npx",
      "args": ["-y", "mcp-server-typespec@latest"]
    }
  }
}

Test the TypeSpec MCP Server

  1. Open GitHub Copilot in VS Code and switch to Agent mode
  2. You should see the TypeCpec MCP Server in the list of tools
  3. Try a prompt that tells the agent to use a TypeSpec MCP Server, such as "init" to scaffold a new project.

Troubleshooting

See Troubleshooting guide for help with common issues and logging.

Contributing

We welcome contributions to the TypeSpec MCP Server! Whether you're fixing bugs, adding new features, or improving documentation, your contributions are welcome.

Please read our Contributing Guide for more information on how to contribute.

Code of Conduct

This project has adopted the Microsoft Open Source Code of Conduct. For more information, see the Code of Conduct FAQ or contact [email protected] with any additional questions or comments.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.