mcp-http-diary-server
Enables writing and reading diary entries via MCP, with optional mood tags, using Supabase for storage and supporting streamable HTTP for public access.
README
📓 MCP HTTP Diary Server
Streamable HTTP MCP Server — 双人日志本,支持公网访问。
项目结构
mcp-http-diary-server/
├── package.json
├── tsconfig.json
├── .env.example
├── .gitignore
├── Dockerfile
├── README.md
└── src/
└── index.ts # MCP HTTP Server 主入口
快速开始
1. 安装
cd mcp-http-diary-server
npm install
2. 配置
cp .env.example .env
编辑 .env:
SUPABASE_URL=https://orzivgfntudnsbjkvutg.supabase.co
SUPABASE_KEY=你的supabase_anon_key
PORT=3000
HOST=0.0.0.0
3. 编译运行
npm run build
npm start
服务启动后访问 http://localhost:3000/ 确认健康状态。
部署到公网
服务本身只绑定端口,你需要将其暴露到公网才能让手机 Orangechat 访问。
方式一:部署到云服务器
将项目上传到一台有公网 IP 的 VPS(任意云服务商),运行后即可通过 http://你的IP:3000 访问。
方式二:Cloudflare Tunnel(推荐,免费)
# 安装 cloudflared
# 创建隧道指向 localhost:3000
cloudflared tunnel --url http://localhost:3000
会得到一个 https://xxx.trycloudflare.com 的临时公网地址。
方式三:ngrok
ngrok http 3000
会得到一个 https://xxx.ngrok.io 的公网地址。
方式四:Railway / Render / Fly.io 等 PaaS
直接关联 GitHub 仓库部署,设置环境变量即可。项目已包含 Dockerfile。
接入 Orangechat
在 Orangechat 的 Streamable HTTP MCP 配置中填写:
https://你的公网域名/mcp
例如:
https://mcp-diary.onrender.com/mcphttps://xxx.trycloudflare.com/mcphttp://你的VPS公网IP:3000/mcp
注意: 上面的 .env.example 里的 Supabase URL 是示例,请务必换成你自己正确的 Supabase 项目地址。
API 端点
| 端点 | 方法 | 说明 |
|---|---|---|
/ |
GET | 健康检查 |
/health |
GET | 健康检查 |
/mcp |
POST | MCP JSON-RPC 协议入口 |
/ |
POST | 同上(兼容) |
可用工具
write_diary(content, mood)
保存一篇日志。
content(必填):日志正文mood(可选):心情标签
get_diaries(limit)
获取最近日志。
limit(可选,默认 10,最大 100):获取数量
MCP 协议支持
- ✅ initialize
- ✅ ping
- ✅ tools/list
- ✅ tools/call
- ✅ notifications/
环境变量
| 变量 | 必填 | 说明 | 默认值 |
|---|---|---|---|
SUPABASE_URL |
✅ | Supabase 项目 URL | - |
SUPABASE_KEY |
✅ | Supabase anon key | - |
PORT |
否 | HTTP 监听端口 | 3000 |
HOST |
否 | 监听地址 | 0.0.0.0 |
CORS_ORIGIN |
否 | CORS 来源 | * |
技术栈
- Express.js + TypeScript
- Supabase JS Client
- MCP JSON-RPC 协议
- Zod 参数校验
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。
mcp-server-qdrant
这个仓库展示了如何为向量搜索引擎 Qdrant 创建一个 MCP (Managed Control Plane) 服务器的示例。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。