mcp-http-diary-server

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.

Category
访问服务器

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/mcp
  • https://xxx.trycloudflare.com/mcp
  • http://你的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

Baidu Map

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

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

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

官方
精选
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

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

官方
精选
本地
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

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

官方
精选
本地
TypeScript
VeyraX

VeyraX

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

官方
精选
本地
Kagi MCP Server

Kagi MCP Server

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

官方
精选
Python
graphlit-mcp-server

graphlit-mcp-server

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

官方
精选
TypeScript
Exa MCP Server

Exa MCP Server

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

官方
精选
mcp-server-qdrant

mcp-server-qdrant

这个仓库展示了如何为向量搜索引擎 Qdrant 创建一个 MCP (Managed Control Plane) 服务器的示例。

官方
精选
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选