I Automated My Entire Dev Workflow with AI (You Won't Believe How Easy It Is)
Shayan

Shayan @shayy

About: Building UserJot in Public

Location:
Maryland, United States
Joined:
Jan 14, 2025

I Automated My Entire Dev Workflow with AI (You Won't Believe How Easy It Is)

Publish Date: Jul 28
102 17

As a solo developer building UserJot, I was spending too much time on repetitive tasks. Between analyzing user feedback, doing keyword research, checking support tickets, and actually writing code, I barely had time to write code.

Then I discovered MCP (Model Context Protocol) and automated most of these tasks. Here's how you can do it too.

What is MCP?

MCP lets AI assistants like Claude interact with external tools and services. Instead of just chatting, Claude can:

  • Read and write files on your computer
  • Call APIs and web services
  • Run terminal commands
  • Access databases
  • Basically run any code you write for it

Think of it as building custom functions that Claude can call when needed.

FastMCP Makes It Simple

While MCP is useful, setting up servers from scratch involves boilerplate code. FastMCP simplifies this process.

Here's a basic example:

import { FastMCP } from "fastmcp";
import { z } from "zod";

const server = new FastMCP({
  name: "My Automation Server",
  version: "1.0.0",
});

server.addTool({
  name: "check_todos",
  description: "Get my current todo list",
  parameters: z.object({
    status: z.enum(["pending", "completed", "all"]).default("pending"),
  }),
  execute: async (args) => {
    // Your logic here to fetch todos
    const todos = await fetchTodosFromNotion(args.status);
    return todos.map(t => `- ${t.title}`).join('\n');
  },
});

server.start({ transportType: "stdio" });
Enter fullscreen mode Exit fullscreen mode

Now Claude can check your todos when you ask it to.

Tools I Built

Here are the MCP tools that actually saved me time:

1. Keyword Research

Instead of manually checking search volumes, I created a tool that pulls data from SEO APIs:

server.addTool({
  name: "keyword_research",
  description: "Research keywords for blog topics",
  parameters: z.object({
    topic: z.string(),
    intent: z.enum(["informational", "commercial", "transactional"]),
  }),
  execute: async (args) => {
    // Calls SEO APIs to get search volume, difficulty, related keywords
    const data = await analyzeKeywords(args.topic, args.intent);
    return formatKeywordReport(data);
  },
});
Enter fullscreen mode Exit fullscreen mode

Now I can ask: "Claude, research keywords for 'user feedback tools'" and get data in seconds instead of 15 minutes.

2. Support Ticket Summary

I used to spend 30 minutes each morning going through support emails. Now I have a tool that summarizes them:

server.addTool({
  name: "analyze_support",
  description: "Analyze recent support tickets",
  parameters: z.object({
    days: z.number().default(7),
    urgentOnly: z.boolean().default(false),
  }),
  execute: async (args) => {
    const tickets = await fetchSupportTickets(args);
    return categorizeAndPrioritize(tickets);
  },
});
Enter fullscreen mode Exit fullscreen mode

3. Task Prioritization

A simple tool that helps me figure out what to work on next:

server.addTool({
  name: "smart_todos",
  description: "Manage and prioritize my development tasks",
  parameters: z.object({
    action: z.enum(["list", "add", "complete", "prioritize"]),
    task: z.string().optional(),
    category: z.enum(["feature", "bug", "refactor", "content"]).optional(),
  }),
  execute: async (args) => {
    if (args.action === "prioritize") {
      // Sorts tasks based on impact and urgency
      return await prioritizeTasks();
    }
    // Handle other actions...
  },
});
Enter fullscreen mode Exit fullscreen mode

4. User Feedback Reader

This one connects to UserJot's API to pull feature requests:

server.addTool({
  name: "top_feature_requests",
  description: "Get the most requested features from UserJot",
  parameters: z.object({
    limit: z.number().default(10),
    minVotes: z.number().default(5),
  }),
  execute: async (args) => {
    const feedback = await userJotAPI.getFeatureRequests({
      sortBy: "votes",
      limit: args.limit,
      threshold: args.minVotes,
    });

    return feedback.map(f => 
      `${f.title} (${f.votes} votes)\n${f.description}`
    ).join('\n\n');
  },
});
Enter fullscreen mode Exit fullscreen mode

How I Use UserJot with MCP

UserJot is where I collect user feedback. Here's my current workflow:

  1. Users submit feedback on my UserJot board
  2. Other users vote on what's important
  3. My MCP tool reads the top requests
  4. I use this data to decide what to build next

UserJot Dashboard

We're working on native MCP support in UserJot. The goal is to make it easier to:

  • Pull feature requests directly into your coding workflow
  • Generate implementation plans based on user descriptions
  • Track which feedback has been addressed

For example, you'll be able to ask Claude: "What's the top requested feature?" and have it automatically check UserJot, then help you implement it.

Setting It Up

  1. Install the dependencies:
   npm install fastmcp zod
Enter fullscreen mode Exit fullscreen mode
  1. Create your server file (e.g., my-automation.ts)

  2. Add it to Claude Desktop:

   {
     "mcpServers": {
       "my-automation": {
         "command": "npx",
         "args": ["tsx", "/path/to/my-automation.ts"]
       }
     }
   }
Enter fullscreen mode Exit fullscreen mode
  1. Start using it

Actual Results

Since implementing these tools:

  • I save about 2 hours daily on repetitive tasks
  • I ship features faster because I spend less time on admin work
  • I respond to support tickets quicker
  • I make better decisions about what to build (based on real user data)

Each tool took about 30 minutes to build and test.

Getting Started

Pick one repetitive task that annoys you. Maybe it's:

  • Checking multiple dashboards every morning
  • Formatting data for reports
  • Running the same API tests
  • Categorizing emails or tickets

Build a simple MCP tool for it. The pattern is straightforward:

  1. Find the API for the service you want to automate
  2. Wrap it in a FastMCP server
  3. Connect it to Claude
  4. Use it instead of doing the task manually

Most services you already use have APIs: Notion, Linear, Slack, GitHub, etc. Each can become an MCP tool.

What's Next

The combination of AI assistants and programmable tools is changing how we work. Instead of context switching between a dozen apps, you can have Claude coordinate everything through MCP.

If you want to try this yourself, start with FastMCP. And if you're looking for a better way to collect and act on user feedback, check out UserJot - we're building tools to make the feedback-to-feature cycle much shorter.

The point isn't to replace developers. It's to spend less time on boring tasks and more time building things people actually want.

Comments 17 total

  • Jonas Scholz
    Jonas ScholzJul 28, 2025

    robotjot amirite (nice post, im going to copy some parts)

    • Shayan
      ShayanJul 28, 2025

      At this point I'm just turning everything into MCP. You should actually give it a try!

  • shroomlife 🍄
    shroomlife 🍄Jul 28, 2025

    feels like a commercial...

    • Shayan
      ShayanJul 28, 2025

      tbh I'm just very excited about MCP and integrating it with my workflow.

  • The Arkitekt
    The ArkitektJul 30, 2025

    Sounds like a bad idea, for so many reasons...

    • Rich Ross
      Rich RossJul 30, 2025

      Care to name one or two?

      • Jicé Isoard
        Jicé IsoardJul 30, 2025

        I believe he watched too much of Terminator movies and refers globally to giving access to the data or computer to an AI is bad generally speaking. However, giving access to anything "dangerous" to anyone/anything is to be done with cautious and thinked about that's all.
        Follow the least of access principles and you'll be fine. Start with read only first, give write access only to revert-able data or in dedicated context and closed environment/user. I'd be happy to use AI with MCP for monkey testing by the way seems fun.

  • arnoutvreugdenhil
    arnoutvreugdenhilJul 30, 2025

    I was wondering... what role does AI have in fhis? You could have made buttons to call these years ago.

  • Abhiwan Technology
    Abhiwan TechnologyJul 30, 2025

    Wow it seems to be very intresting, Nowadaysmost of the 3d game development company in India were doing such type of creative things to do some innovations.

  • Danilo
    DaniloJul 30, 2025

    Will give fastmcp a try. I used MCP for Figma integration, but it’s just a bit cumbersome to set up the server each time, verify the connection.

    Love the UserJot idea btw, at least from dev perspective

  • Stefan Neidig
    Stefan NeidigJul 30, 2025

    Interesting idea, that isn't new. fastmcp is (at least to me). So thanks for sharing

  • Umang Suthar
    Umang SutharJul 31, 2025

    This is seriously impressive work!!
    Love how you’ve used MCP to streamline real dev pain points and especially the way Claude plugs into actual tasks with context-aware tools.

    If you're into building smarter workflows like this, you might also find value in what we're working on, running AI tools like these directly on-chain, without needing servers at all.
    Think: AI microservices as smart contracts, scaling with zero backend overhead.

    We're building it over at haveto.com
    Would love to hear how something like that might fit into setups like yours...

  • Rajesh Patel
    Rajesh PatelJul 31, 2025

    This is 🔥. Love how you’re using MCP to bridge the gap between AI assistance and real dev productivity. The keyword research and support ticket summaries alone are game-changers — and seeing it all flow into UserJot is next-level.

  • Latestmenu social
    Latestmenu socialAug 1, 2025

    Sure! Here's a refined and professional rewrite of your message:


    This is seriously impressive work!
    I really appreciate how you've leveraged MCP to address real developer challenges — and the way Claude integrates directly into tasks with context-aware tools is next-level.

    If you're exploring smarter workflows like this, you might be interested in what we’re building at haveto.com — running AI tools directly on-chain, with no servers needed.
    Think of it as AI microservices deployed as smart contracts, offering scalable, backend-free automation.

    Would love to hear your thoughts on how something like this could complement setups like yours! I'm tired from working on my laptop all day. Now I'm very hungr. I want to some order fast food in Latest KFC Menu

  • J J
    J JAug 2, 2025

    Thankfully my "dev workflow" consists of none of these things. Nice (323rd) advertisement though.

  • Evan Dickinson
    Evan DickinsonAug 27, 2025

    This feels nice but I don’t understand bc while nice is it at the scale where you need mcp. Dosent seem like too much traffic and you again you’ll inevitably lose nuance with the summary. However it could augment the workflow and does scale better

Add comment