duyet-mcp-server
Remote MCP for duyet.net
Documentation
duyet-mcp-server
An experimental MCP (Model Context Protocol) server that helps AI assistants connect to and retrieve information about duyet. This server provides access to information primarily available at https://duyet.net, making it available directly to your AI assistant.
Endpoint: `https://mcp.duyet.net/mcp` (Streamable HTTP, stateless — works with every major MCP client)
Connect from Any MCP Client
| Client | How to connect |
|---|---|
| Claude Code | `claude mcp add --transport http duyet https://mcp.duyet.net/mcp` |
| Claude Desktop / claude.ai | Settings → Connectors → Add custom connector → `https://mcp.duyet.net/mcp` |
| Cursor | Add to `~/.cursor/mcp.json` → `{"mcpServers": {"duyet": {"url": "https://mcp.duyet.net/mcp"}}}` |
| Windsurf | Add to `~/.codeium/windsurf/mcp_config.json` → `{"mcpServers": {"duyet": {"serverUrl": "https://mcp.duyet.net/mcp"}}}` |
| VS Code (Copilot) | `code --add-mcp '{"name":"duyet","type":"http","url":"https://mcp.duyet.net/mcp"}'` |
| Codex CLI | Add to `~/.codex/config.toml` → `[mcp_servers.duyet]` with `url = "https://mcp.duyet.net/mcp"` |
| Gemini CLI | `gemini mcp add --transport http duyet https://mcp.duyet.net/mcp` |
| Zed | Settings → `context_servers` → `{"duyet": {"source": "custom", "url": "https://mcp.duyet.net/mcp"}}` |
| Cloudflare AI Playground | Enter `https://mcp.duyet.net/mcp` at https://playground.ai.cloudflare.com |
| Anything else (stdio-only) | Use the mcp-remote proxy — config below |
mcp-remote proxy config (for stdio-only clients)
{
"mcpServers": {
"duyet": {
"command": "npx",
"args": ["mcp-remote", "https://mcp.duyet.net/mcp"]
}
}
}






About This Project
This is a study, demo, and experimental project designed to explore MCP capabilities. The project serves as a learning exercise in building remote MCP servers and is mostly written by LLM as well.
Purpose: Enable AI assistants to access and retrieve information about duyet's work, projects, and content that would otherwise require manual web browsing.
Deploy to Cloudflare Workers
This will deploy your MCP server to a URL like: `duyet-mcp-server..workers.dev/sse`
Alternatively, you can clone and deploy using the command line:
git clone https://github.com/duyet/duyet-mcp-server
cd duyet-mcp-server
npm install
npm run deployCustomizing Your MCP Server
To add your own tools to the MCP server, define each tool inside the `init()` method of `src/index.ts` using `this.server.tool(...)`.
Connect to Cloudflare AI Playground
You can test your MCP server using the Cloudflare AI Playground:
1. Go to https://playground.ai.cloudflare.com/
2. Enter your deployed MCP server URL (`duyet-mcp-server..workers.dev/sse` or `duyet-mcp-server..workers.dev/mcp`)
3. You can now use the duyet information tools directly from the playground!
Connect Claude Desktop to Your MCP Server
You can connect to your remote MCP server from Claude Desktop using the mcp-remote proxy.
To connect from Claude Desktop, follow Anthropic's Quickstart and go to Settings > Developer > Edit Config.
Update with this configuration:
{
"mcpServers": {
"duyet-info": {
"command": "npx",
"args": [
"mcp-remote",
"https://duyet-mcp-server..workers.dev/sse"
]
}
}
}You should see the duyet-mcp information tools become available.
Available Resources and Tools
This MCP server exposes both Resources (read-only data access via URIs) and Tools (interactive functions with parameters). Resources are automatically discovered by Claude Chat for natural conversation flow, while tools are used for actions that require user input.
Resources
Resources provide read-only access to information through URI-based requests. These are automatically discoverable by Claude Chat.
Core Information Resources
- `duyet://about` - Basic information about Duyet with dynamically calculated years of experience
- `duyet://cv/{format}` - CV/resume with format parameters:
- `duyet://cv/summary` - Brief CV overview
- `duyet://cv/detailed` - Comprehensive CV information
- `duyet://cv/json` - Structured CV data (when available)
Content Resources
- `duyet://blog/posts/{limit}` - Latest blog posts from Duyet's technical blog
- `duyet://blog/posts/1` - Latest blog post
- `duyet://blog/posts/5` - Latest 5 blog posts (limit: 1-10)
- `duyet://github-activity` - Recent GitHub contributions and activity
Tools
Tools provide interactive functionality with input parameters and side effects.
Core Information Tools
- `get_cv` - Retrieve Duyet's CV (curriculum vitae) in different formats - summary, detailed, or JSON format
- `get_about_duyet` - Get basic information about Duyet including experience, skills, and contact links
Content Tools
- `get_blog_posts` - Get a list of blog posts from blog.duyet.net in JSON format (1-20 posts)
- `get_blog_post_content` - Get the full content of a specific blog post by URL, including title, content, and metadata (author, publish date, tags)
- `get_github_activity` - Retrieve Duyet's recent GitHub activity including commits, issues, pull requests, releases, and other public events. View up to 20 recent activities with optional detailed information
Interaction Tools
- `send_message` - Send a message to Duyet for collaboration, job opportunities, consulting, or general inquiries. Messages are saved with a reference ID for follow-up
- `hire_me` - Get information about hiring Duyet for various roles - full-time, contract, consulting, or part-time positions. Includes expertise, experience, and next steps
- `say_hi` - Send a friendly greeting to Duyet with an optional personal message. Get contact information and connection links
Management Tools
- `contact_analytics` - Generate analytics reports on contact submissions including summary statistics, purpose breakdown, daily trends, and recent activity patterns
Claude Chat Examples
Here are examples of natural conversation flows using this MCP server:
Learning About Duyet
| 🧑 User | 🤖 Claude |
|---|---|
| Who is Duyet and what does he do? | *[accesses `duyet://about`]* Duyet is a Data Engineer with 8 years of experience, confident in Data Engineering concepts, best practices and state-of-the-art data and Cloud technologies. Blog: https://blog.duyet.net · CV: https://duyet.net/cv · GitHub: https://github.com/duyet |
| What has he been writing about lately? | *[accesses `duyet://blog/posts/3`]* His latest posts cover data engineering, cloud technologies, and distributed systems. Want details on a specific post? |
| What's he working on currently? | *[accesses `duyet://github-activity`]* Recent GitHub activity shows work on MCP server implementations, data pipeline projects, and open source data engineering tools. |
Hiring and Collaboration
| 🧑 User | 🤖 Claude |
|---|---|
| I'm looking to hire a data engineer. Can you help me contact Duyet? | I can send a message to Duyet using the `send_message` tool. What type of opportunity is this? |
| It's a full-time position at our startup working with Kafka and Spark | *[prepares `send_message`]* What would you like to say? I'll note it's a full-time role with Kafka and Spark. |
| Hi Duyet, we're a Series A startup building real-time data platforms. We'd love to discuss a Senior Data Engineer role — Kafka, Spark, cloud infra, remote-friendly with equity. | *[executes `send_message`]* Message sent! Reference ID: `abc-123-def`. You can also reach Duyet at me@duyet.net, LinkedIn: https://linkedin.com/in/duyet, GitHub: https://github.com/duyet |
Technical Research
| 🧑 User | 🤖 Claude |
|---|---|
| I want to understand Duyet's technical background before our interview | *[accesses `duyet://cv/detailed`]* 8 years in data engineering: Apache Spark, Kafka, cloud platforms, distributed systems, scalable data pipelines and the modern data stack. |
| Can you show me some of his recent technical work? | *[accesses `duyet://github-activity`]* Recent contributions include data engineering projects, MCP server implementations, and open source tooling for distributed, cloud-native data systems. |
| What kind of content does he write about? | *[accesses `duyet://blog/posts/5`]* Scalable data pipelines, modern data engineering best practices, cloud technologies, and distributed systems architecture. |
Natural Discovery Pattern
The key advantage of this MCP server design is that Claude Chat can naturally discover and reference information through resources, making conversations more fluid:
1. Information Questions → Automatic Resource Access
2. Action Requests → Interactive Tools
3. Progressive Disclosure
Architecture
- Framework: Hono.js running on Cloudflare Workers
- Database: Cloudflare D1 with Drizzle ORM
- Testing: Jest with comprehensive test coverage
- Linting: Biome for code quality
- Type Safety: TypeScript with strict configuration
License
MIT License - see LICENSE file for details.
Frequently asked questions
What is duyet-mcp-server?
duyet-mcp-server is Remote MCP for duyet.net
How do I install duyet-mcp-server?
Open the GitHub repository and follow its README. Most MCP servers are added to your client's MCP config, then called by your agent.
Is duyet-mcp-server open source?
Yes — it is hosted on GitHub at https://github.com/duyet/duyet-mcp-server and has 2 stars.
Related MCP tools
🧩 MCP Gateway - A lightweight gateway service that instantly transforms existing MCP Servers and APIs into MCP servers with zero code changes.
MCP Aggregator, Orchestrator, Middleware, Gateway in one docker TypeScript-based implementation. Trusted by 1400+ developers.
Composio equips your AI agents & LLMs with 100+ high-quality integrations via function calling for the Model Context Protocol. Enhance AI assistants with powerf
A MCP for Claude Desktop / Claude Code / Windsurf / Cursor to build n8n workflows for you
Playwright MCP server TypeScript-based implementation. Trusted by 22000+ developers. Trusted by 22000+ developers. Trusted by 22000+ developers.
AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Ag...
Run your own MCP server? See who uses it and what to fix.
Measure it with TrackMCP