mdshare-mcp
Enables AI chat clients to publish markdown content to an mdshare service and retrieve previously published pastes via MCP tools, without manual file uploads or curl requests.
README
mdshare-mcp
MCP server cho phép AI chat (Claude, và các client hỗ trợ MCP) gọi trực tiếp 1 tool
publish_markdown để đăng nội dung markdown lên dịch vụ mdshare đã deploy trước đó —
không cần tải file về máy rồi tự curl lên.
Kiến trúc
Claude.ai (chat) → tool "publish_markdown" → mdshare-mcp (server này) → POST → mdshare → trả URL
Đây là MCP server dạng Remote (Streamable HTTP), chạy độc lập trên Render — khác với MCP server "local (stdio)" chỉ chạy được khi cài trên máy cá nhân. Vì bạn dùng Claude qua web, bản Remote HTTP là lựa chọn đúng: không cần cài gì trên máy.
2 tool được cung cấp
publish_markdown(content)— đăng nội dung markdown lênmdshare, trả về URL xem và URL raw.fetch_markdown(key_or_url)— tải lại nội dung 1 paste đã đăng, dựa vào key hoặc URL (chấp nhận cả dạngdomain/p/keyvàdomain/p/key/raw). Đây là tool fallback quan trọng: một số AI chat (đã ghi nhận với ChatGPT) không tự fetch được URL trả vềContent-Type: text/plainthuần — trình duyệt-tool tích hợp của các client này thường được thiết kế để đọc trang HTML (có<title>, cấu trúc DOM...), và có thể coi 1 file text thuần là "file tải xuống" rồi từ chối đọc nội dung thay vì hiển thị. Khi gặp tình huống đó, chỉ cần yêu cầu AI chat gọi toolfetch_markdownthay vì tự mở URL — nội dung sẽ được tải về ngay trong server, trả thẳng vào kết quả tool, không phụ thuộc vào khả năng duyệt web của client.
Nền tảng nào hỗ trợ custom MCP server? (thông tin tại thời điểm viết, có thể thay đổi)
| Nền tảng | Hỗ trợ custom remote MCP? | Ghi chú |
|---|---|---|
| Claude | Có | Tất cả các gói, kể cả free |
| ChatGPT | Có | Cần bật Developer Mode, gói trả phí (Plus/Pro/Business/Enterprise/Edu) |
| Grok | Có | Gói trả phí, mục "Bring Your Own MCP" tại grok.com/connectors |
| Qwen, DeepSeek, Kimi, z.ai (GLM), Manus, Meta AI | Chưa rõ / có thể chưa hỗ trợ ở chat UI tiêu dùng | Một số bên hỗ trợ MCP theo hướng khác (làm MCP server cho client khác gọi vào, hoặc qua SDK lập trình), nhưng chưa xác nhận có ô "thêm custom MCP server" trong giao diện chat web thông thường |
Vì server này tuân thủ đúng chuẩn MCP (Streamable HTTP), nó sẽ tự động chạy được với bất kỳ client nào hỗ trợ chuẩn — không cần sửa code theo từng nền tảng. Với các nền tảng ở dòng "chưa rõ", cách chắc chắn nhất là kiểm tra trực tiếp trong phần Settings/Connectors của nền tảng đó, vì thông tin hỗ trợ MCP đang thay đổi rất nhanh giữa các AI chat.
Bước 1 — Deploy lên Render
Y hệt quy trình đã làm với mdshare:
- Đẩy code (
server.js,package.json,render.yaml) lên 1 GitHub repo mới, ví dụmdshare-mcp. - Trên Render: New → Blueprint → chọn repo
mdshare-mcp. - Khi được hỏi biến môi trường, nhập:
MDSHARE_BASE_URL= URL của servicemdshaređã deploy trước đó (ví dụhttps://mdshare-11s5.onrender.com— không có dấu/ở cuối).
- Bấm Apply.
Sau khi deploy xong, Render cho URL dạng https://mdshare-mcp-xxxx.onrender.com.
Endpoint MCP thực sự nằm ở: https://mdshare-mcp-xxxx.onrender.com/mcp.
Bước 2 — Kết nối vào Claude.ai qua Custom Connector
- Vào claude.ai → Settings → Connectors (hoặc mục tương đương trong Settings).
- Chọn Add custom connector (hoặc "Add more").
- Nhập URL:
https://mdshare-mcp-xxxx.onrender.com/mcp - Đặt tên gợi nhớ, ví dụ "mdshare".
- Lưu lại. Claude sẽ tự động phát hiện tool
publish_markdown.
Sau bước này, trong bất kỳ cuộc trò chuyện nào, bạn có thể bật connector "mdshare" lên (qua menu công cụ trong khung chat), rồi yêu cầu ví dụ:
"Tóm tắt nội dung trên thành markdown rồi đăng lên mdshare cho tôi"
Claude sẽ tự gọi tool publish_markdown, và trả về URL kết quả ngay trong chat.
Kết nối từ các AI chat khác (ChatGPT, v.v.)
Nếu client đó hỗ trợ MCP qua Streamable HTTP (giao thức MCP chuẩn, không riêng của Anthropic),
quy trình tương tự: cung cấp URL https://mdshare-mcp-xxxx.onrender.com/mcp vào phần cấu hình
connector/tool của client đó. Cú pháp thêm connector khác nhau tuỳ nền tảng — kiểm tra tài liệu
chính thức của client để biết vị trí cấu hình.
Test thủ công (không qua AI chat, chỉ để kiểm tra server hoạt động)
Trên cmd Windows:
curl -X POST https://mdshare-mcp-xxxx.onrender.com/mcp ^
-H "Content-Type: application/json" ^
-H "Accept: application/json, text/event-stream" ^
-d "{\"jsonrpc\":\"2.0\",\"id\":1,\"method\":\"tools/list\",\"params\":{}}"
Kết quả phải chứa tool publish_markdown trong danh sách trả về.
Bảo mật cần lưu ý
- MCP server này không có xác thực — bất kỳ ai biết URL
/mcpđều gọi được toolpublish_markdownđể đăng nội dung lênmdsharecủa bạn. Với dùng cá nhân, rủi ro thấp (URL không công khai, khó đoán qua subdomain ngẫu nhiên của Render), nhưng nếu muốn chặt hơn:- Thêm 1 header bí mật (ví dụ
X-Api-Key) kiểm tra trongserver.jstrước khi xử lý request MCP. - Cấu hình biến môi trường
MCP_SHARED_SECRETvà yêu cầu client gửi kèm header đó.
- Thêm 1 header bí mật (ví dụ
mdshare(dịch vụ đích) vốn đã không có auth theo thiết kế ban đầu, nên tool này chỉ đơn thuần tự động hoá lại đúng hành vi thủ công bạn từng làm bằngcurl— không mở thêm rủi ro mới ở phíamdshare.
Cơ sở lý luận cho lựa chọn thiết kế
- Streamable HTTP thay vì SSE (Server-Sent Events): SSE là giao thức MCP thế hệ cũ, đã bị đánh dấu không khuyến khích trong đặc tả MCP hiện hành; Streamable HTTP là giao thức chuẩn hiện tại, được các SDK chính thức khuyến nghị cho remote MCP server.
- Stateless (
sessionIdGenerator: undefined): vì tool chỉ thực hiện 1 thao tác đơn giản (POST 1 lần, nhận 1 kết quả), không cần duy trì trạng thái phiên giữa nhiều lần gọi — giúp server đơn giản hơn và tương thích tốt với môi trường serverless/free-tier có thể khởi động lại container bất kỳ lúc nào.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.