xmcp Application
This project was created with create-xmcp-app.
Getting Started
First, run the development server:
This will start the MCP server with the selected transport method.
Project Structure
This project uses the structured approach where tools, prompts, and resources are automatically discovered from their respective directories:
src/tools
- Tool definitionssrc/prompts
- Prompt templatessrc/resources
- Resource handlers
Tools
Each tool is defined in its own file with the following structure:
Prompts
Prompts are template definitions for AI interactions:
Resources
Resources provide data or content with URI-based access:
Adding New Components
Adding New Tools
To add a new tool:
Create a new
.ts
file in thesrc/tools
directoryExport a
schema
object defining the tool parameters using ZodExport a
metadata
object with tool informationExport a default function that implements the tool logic
Adding New Prompts
To add a new prompt:
Create a new
.ts
file in thesrc/prompts
directoryExport a
schema
object defining the prompt parameters using ZodExport a
metadata
object with prompt information and roleExport a default function that returns the prompt text
Adding New Resources
To add a new resource:
Create a new
.ts
file in thesrc/resources
directoryUse folder structure to define the URI (e.g.,
(users)/[userId]/profile.ts
→users://{userId}/profile
)Export a
schema
object for dynamic parameters (optional for static resources)Export a
metadata
object with resource informationExport a default function that returns the resource content
Building for Production
To build your project for production:
This will compile your TypeScript code and output it to the dist
directory.
Running the Server
You can run the server for the transport built with:
HTTP:
node dist/http.js
STDIO:
node dist/stdio.js
Given the selected transport method, you will have a custom start script added to the package.json
file.
For HTTP:
For STDIO:
Learn More
This server cannot be installed
A template MCP server created with xmcp that provides a structured framework for building tools, prompts, and resources. Includes example implementations for greeting users, code review prompts, and user profile resources with automatic discovery from organized directories.