✨ From vibe coding to vibe deployment. UBOS MCP turns ideas into infra with one message.

Learn more

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

Featured Templates

View More
AI Characters
Sarcastic AI Chat Bot
129 2037
Customer service
Multi-language AI Translator
139 1246
AI Image Generation
Image Generation with Stable Diffusion
117 1204
Customer service
AI-Powered Product List Manager
159 1159
Verified Icon
AI Agents
AI Chatbot Starter Kit
1342 9274

Start your free trial

Build your solution today. No credit card required.

Sign In

Register

Reset Password

Please enter your username or email address, you will receive a link to create a new password via email.