mdshare-mcp

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.

Category
访问服务器

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ên mdshare, 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ạng domain/p/key và 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/plain thuầ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 tool fetch_markdown thay 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:

  1. Đẩy code (server.js, package.json, render.yaml) lên 1 GitHub repo mới, ví dụ mdshare-mcp.
  2. Trên Render: New → Blueprint → chọn repo mdshare-mcp.
  3. Khi được hỏi biến môi trường, nhập:
    • MDSHARE_BASE_URL = URL của service mdshare đã deploy trước đó (ví dụ https://mdshare-11s5.onrender.com — không có dấu / ở cuối).
  4. 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

  1. Vào claude.ai → Settings → Connectors (hoặc mục tương đương trong Settings).
  2. Chọn Add custom connector (hoặc "Add more").
  3. Nhập URL: https://mdshare-mcp-xxxx.onrender.com/mcp
  4. Đặt tên gợi nhớ, ví dụ "mdshare".
  5. 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 tool publish_markdown để đăng nội dung lên mdshare củ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 trong server.js trước khi xử lý request MCP.
    • Cấu hình biến môi trường MCP_SHARED_SECRET và yêu cầu client gửi kèm header đó.
  • 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ằng curl — không mở thêm rủi ro mới ở phía mdshare.

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.

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选