TypeScript-based MCP Server

Playing with MCP servers.....

Installation

Installing for Claude Desktop

Option 1: One-Command Installation

npx mcpbar@latest install RahulRana0707/mcp-server -c claude

This command will automatically install and configure the TypeScript-based MCP Server MCP server for your selected client.

Option 2: Manual Configuration

Run the command below to open your configuration file:

npx mcpbar@latest edit -c claude

After opening your configuration file, copy and paste this configuration:

View JSON configuration
{
  "mcpServers": {
    "TypeScript-based MCP Server": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-servers"
      ],
      "env": {}
    }
  }
}

MCP Servers

A TypeScript-based server implementation for Model Context Protocol (MCP) that provides integration tools for various services like JIRA and TODO management.

πŸš€ Features

  • Multiple Tool Integration: Modular architecture supporting multiple tool integrations
  • Type Safety: Full TypeScript support with Zod schema validation
  • ESM Support: Modern ES Modules implementation
  • Extensible: Easy to add new tools and integrations

πŸ“¦ Current Tools

JIRA Integration

  • Create issues with customizable fields
  • Automatic response formatting
  • Schema validation for issue creation

TODO Management

  • Create todos with priority and due dates
  • Flexible schema supporting optional fields
  • Formatted response messages

πŸ›  Project Structure

src/
β”œβ”€β”€ config/           # Tool configurations
β”‚   β”œβ”€β”€ jira-tool.config.ts
β”‚   └── todo-tool.config.ts
β”œβ”€β”€ constant/         # Constant definitions
β”‚   └── tool-name.ts
β”œβ”€β”€ schema/          # Zod schemas for validation
β”‚   β”œβ”€β”€ jira.ts
β”‚   └── todo.ts
β”œβ”€β”€ server/          # Server management
β”‚   └── mcp-server-tool-manager.ts
β”œβ”€β”€ tools/           # Tool implementations
β”‚   β”œβ”€β”€ jira/
β”‚   β”‚   └── create-issue.ts
β”‚   └── todo/
β”‚       └── create-todo.ts
└── index.ts         # Main entry point

πŸ”Œ Adding New Tools

  1. Define tool constants in constant/tool-name.ts
  2. Create schema in schema/ directory
  3. Implement tool handler in tools/ directory
  4. Add configuration in config/ directory
  5. Register tool in index.ts

Example:

// 1. Add constant
export const NEW_TOOL = {
  ACTION: "action_name"
} as const;

// 2. Create schema
export const newToolSchema = z.object({
  // ... schema definition
});

// 3. Implement handler
export const handleAction = async (
  args: z.infer<typeof newToolSchema>,
  extra: RequestHandlerExtra
): Promise<CallToolResult> => {
  // ... implementation
};

// 4. Add configuration
export const newToolConfig = {
  name: "New Tool",
  version: "1.0.0",
  tools: [
    {
      name: NEW_TOOL.ACTION,
      schema: newToolSchema,
      handler: handleAction,
    },
  ],
};

πŸ”„ Development Workflow

  1. Create feature branch
  2. Implement changes
  3. Run tests (when implemented)
  4. Build project
  5. Submit PR

πŸ“ Notes

  • Uses ES Modules for better modularity
  • Implements Model Context Protocol for standardized communication
  • Follows TypeScript best practices
  • Zod schema validation for type safety

πŸ›£οΈ Roadmap

  • Add more JIRA operations
  • Implement TODO persistence
  • Add authentication
  • Add testing framework
  • Add more integrations (GitHub, Slack, etc.)

πŸ“„ License

MIT

Share:
Details:
  • Stars


    0
  • Forks


    0
  • Last commit


    3 months ago
  • Repository age


    4 months
View Repository

Auto-fetched from GitHub .

MCP servers similar to TypeScript-based MCP Server:

Β 

Β 
Β 
  • Stars


  • Forks


  • Last commit


Β 

Β 
Β 
  • Stars


  • Forks


  • Last commit


Β 

Β 
Β 
  • Stars


  • Forks


  • Last commit


TypeScript-based MCP Server: MCP Server – MCP.Bar