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" });
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);
},
});
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);
},
});
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...
},
});
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');
},
});
How I Use UserJot with MCP
UserJot is where I collect user feedback. Here's my current workflow:
- Users submit feedback on my UserJot board
- Other users vote on what's important
- My MCP tool reads the top requests
- I use this data to decide what to build next
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
- Install the dependencies:
npm install fastmcp zod
Create your server file (e.g.,
my-automation.ts
)Add it to Claude Desktop:
{
"mcpServers": {
"my-automation": {
"command": "npx",
"args": ["tsx", "/path/to/my-automation.ts"]
}
}
}
- 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:
- Find the API for the service you want to automate
- Wrap it in a FastMCP server
- Connect it to Claude
- 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.
Top comments (17)
feels like a commercial...
tbh I'm just very excited about MCP and integrating it with my workflow.
robotjot amirite (nice post, im going to copy some parts)
At this point I'm just turning everything into MCP. You should actually give it a try!
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
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.
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
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...
I was wondering... what role does AI have in fhis? You could have made buttons to call these years ago.
My thought too.
Sounds like a bad idea, for so many reasons...
Care to name one or two?
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.
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.
Thankfully my "dev workflow" consists of none of these things. Nice (323rd) advertisement though.
Some comments may only be visible to logged-in visitors. Sign in to view all comments.