内容
<p align="center">
<a href="https://www.opencharts.com">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://www.opencharts.com/brand-v3/emblem/emblem-neon.png" />
<img src="https://www.opencharts.com/brand-v3/emblem/emblem-black.png" alt="OpenCharts" width="84" />
</picture>
</a>
</p>
<h1 align="center">OpenCharts MCP 服务器</h1>
<p align="center">
在 <a href="https://www.opencharts.com">OpenCharts</a> 中创建流程图、笔记、幻灯片、表格、看板、网站、代理和歌曲 — 直接从您的 AI 客户端。
</p>
<p align="center">
<a href="https://www.opencharts.com">官网</a> ·
<a href="https://www.opencharts.com/help/mcp-server">文档</a> ·
<a href="https://www.opencharts.com/theo-agents/mcp">获取 API 密钥</a> ·
<a href="https://github.com/arihealthbird/opencharts-mcp/issues">问题</a>
</p>
<p align="center">
<a href="LICENSE"><img src="https://img.shields.io/badge/license-CC--BY--4.0-blue" alt="许可证" /></a>
<a href="https://www.opencharts.com"><img src="https://img.shields.io/badge/website-opencharts.com-brightgreen" alt="官网" /></a>
<a href="https://modelcontextprotocol.io"><img src="https://img.shields.io/badge/protocol-MCP-purple" alt="MCP" /></a>
</p>
---
## 什么是 OpenCharts MCP 服务器?
[OpenCharts](https://www.opencharts.com) 运行一个 **公共托管的 Model Context Protocol (MCP) 服务器**,该服务器将整个 OpenCharts 产品放入任何与 MCP 兼容的 AI 客户端中。只需使用 API 密钥连接一次,您的助手就可以代表您构建和管理真正的 OpenCharts 项目 — 流程图、白板、笔记、演示文稿、电子表格(Theo Sheets)、看板 + 日历看板、完整网站和应用(Code Canvas)、自动化(Theo Agents)和歌曲(Theo Symphony)— 所有这些都由 Theo(OpenCharts AI)提供支持。
它是一个 **通过 Streamable HTTP 的远程服务器** — 无需本地安装或运行。只需将您的客户端指向端点,粘贴您的 API 密钥即可。
本仓库是该服务器的公共文档。服务器本身由 OpenCharts 托管;您无需自行运行。
> 想要在不到一分钟内连接?使用应用内的指南,访问 **[opencharts.com/help/mcp-server](https://www.opencharts.com/help/mcp-server)** 或 **[opencharts.com/theo-agents/mcp](https://www.opencharts.com/theo-agents/mcp)**。
## 快速入门
1. 在 [opencharts.com/theo-agents/mcp](https://www.opencharts.com/theo-agents/mcp) 上 **创建 API 密钥**。立即复制它 — 完整的密钥仅显示一次。
2. 使用下面的 **配置文件片段** 将 **服务器添加到您的 AI 客户端**,并将 `{{YOUR_API_KEY}}` 替换为您的密钥。
3. 通过要求您的助手调用 `whoami` 工具 **验证连接** — 它应该返回您的 OpenCharts 账户。
## 端点
```
https://www.opencharts.com/api/mcp
```
- **传输:** Streamable HTTP (`POST`)
- **身份验证:** `Authorization: Bearer <API 密钥>` (来自活动 OpenCharts 会话的 JWT 也有效)
> ⚠️ **始终使用 `www.` 域名。** apex 域名 `opencharts.com` 会发出 307 重定向,这会剥离 `Authorization` 头部并破坏身份验证。使用确切的 `https://www.opencharts.com/api/mcp`。
## 连接您的 AI 客户端
服务器与任何与 MCP 兼容的客户端一起工作。复制匹配的代码片段并替换您的 API 密钥。如果您更喜欢让您的助手配置它?帮助页面上有每个客户端的“一键”AI 设置提示。
### Warp
```json
{
"mcpServers": {
"opencharts": {
"type": "http",
"url": "https://www.opencharts.com/api/mcp",
"headers": {
"Authorization": "Bearer {{YOUR_API_KEY}}"
}
}
}
}
```
### Claude Desktop / Claude Code
```json
{
"mcpServers": {
"opencharts": {
"type": "streamable-http",
"url": "https://www.opencharts.com/api/mcp",
"headers": {
"Authorization": "Bearer {{YOUR_API_KEY}}"
}
}
}
}
```
### Cursor
```json
{
"mcpServers": {
"opencharts": {
"url": "https://www.opencharts.com/api/mcp",
"headers": {
"Authorization": "Bearer {{YOUR_API_KEY}}"
}
}
}
}
```
### VS Code (GitHub Copilot)
在 `.vscode/mcp.json` 中添加:
```json
{
"servers": {
"opencharts": {
"type": "http",
"url": "https://www.opencharts.com/api/mcp",
"headers": {
"Authorization": "Bearer ${input:opencharts-key}"
}
}
},
"inputs": [
{
"id": "opencharts-key",
"type": "promptString",
"description": "OpenCharts API 密钥",
"password": true
}
]
}
```
### Windsurf (Codeium)
```json
{
"mcpServers": {
"opencharts": {
"serverUrl": "https://www.opencharts.com/api/mcp",
"headers": {
"Authorization": "Bearer {{YOUR_API_KEY}}"
}
}
}
}
```
### Claude Code (CLI)
```bash
claude mcp add --transport http opencharts https://www.opencharts.com/api/mcp --header "Authorization: Bearer {{YOUR_API_KEY}}"
```
### Codex (OpenAI)
```bash
codex mcp add opencharts --url https://www.opencharts.com/api/mcp --header "Authorization: Bearer {{YOUR_API_KEY}}"
```
### Amp
在 VS Code 扩展 `settings.json` 中:
```json
"amp.mcpServers": {
"opencharts": {
"url": "https://www.opencharts.com/api/mcp",
"headers": {
"Authorization": "Bearer {{YOUR_API_KEY}}"
}
}
}
```
### OpenCode
```json
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"opencharts": {
"type": "remote",
"url": "https://www.opencharts.com/api/mcp",
"oauth": false,
"headers": {
"Authorization": "Bearer {{YOUR_API_KEY}}"
}
}
}
}
```
## 工具
服务器暴露了 **56 种工具**,涵盖 10 个组。 使用 Theo AI 或生成的工具会消耗 AI 积分。
### 项目
| 工具 | 描述 |
|------|-------------|
| `list_projects` | 列出您的项目,支持分页和筛选 |
| `get_project` | 通过 ID 获取完整的项目数据 |
| `create_flowchart` | 创建带有节点和边的流程图项目 |
| `create_whiteboard` | 创建带有原生形状和元素的白板 |
| `create_notes` | 从 Markdown 创建笔记项目 |
| `create_presentation` | 从大纲创建幻灯片演示 |
| `update_project` | 更新元数据或内容(笔记、流程图、白板或演示文稿) |
| `delete_project` | 软删除项目(30 天恢复) |
### 代码画布
| 工具 | 描述 |
|------|-------------|
| `generate_code_canvas` | 从描述中构建完整的网站或应用(HTML/React)— 返回一个作业以轮询 |
| `get_code_canvas_status` | 轮询 Code Canvas 构建;当准备就绪时返回项目 + 打开的 URL |
### AI
| 工具 | 描述 |
|------|-------------|
| `ask_theo` | 发送单次 AI 消息(快速或思考模式) |
| `extract_flowchart` | 从上传的文档(PDF、图像、PPTX)中提取流程图 |
### Theo 代理
| 工具 | 描述 |
|------|-------------|
| `build_agent` | 从描述中构建 Theo 代理 — 在后台运行,准备好时通知您 |
| `get_agent_build_status` | 可选轮询 `build_agent` 作业;当完成时返回代理 + 打开的 URL |
| `create_agent` | 从结构化步骤 + 触发器确定性地创建 Theo 代理 |
| `update_agent` | 修补代理的名称、描述或步骤列表 |
| `configure_agent_trigger` | 设置代理的触发器(手动、计划、Webhook、事件、Telegram) |
| `activate_agent` | 激活代理(播种第一个计划运行) |
| `deactivate_agent` | 停用代理以停止触发器触发 |
| `delete_agent` | 软删除代理(30 天恢复) |
| `list_agents` | 列出您的 Theo 代理,状态 + 步骤计数 |
| `get_agent` | 获取代理的完整定义(触发器 + 有序步骤) |
| `run_agent` | 立即调度代理 — 在后台运行,完成后通知您 |
| `list_agent_runs` | 列出代理的近期执行运行 |
| `get_agent_run_status` | 获取单个运行的状态 + 按节点进度 |
### Theo 表格
| 工具 | 描述 |
|------|-------------|
| `list_sheets` | 列出您的 Theo Sheets 电子表格项目 |
| `inspect_sheet` | 检查表格 — 每页尺寸、标题行、采样单元格 + 公式、布局 |
| `get_sheet` | 提取工作表为结构化行(标题 + 数据行) |
| `read_sheet_range` | 读取精确的 A1 范围的值(+ 可选公式)为网格 + CSV |
| `create_sheet` | 从标题和行创建实时电子表格(Excel 级网格 + 公式) |
| `update_sheet` | 通过应用结构化电子表格编辑操作来编辑表格 — 保存为可回滚的提交 |
| `apply_sheet_ops` | 应用结构化电子表格编辑操作 — 或提出合并门控更改 |
| `edit_sheet` | 使用自然语言指令编辑表格(Theo 计划 + 应用操作) |
| `list_sheet_commits` | 列出表格的 git 样式更改提交(已应用 / 提案 / 合并) |
| `diff_sheet_commit` | 显示提交或提案的单元格级差异 |
| `resolve_sheet_proposal` | 合并或拒绝待处理更改提案 |
| `rollback_sheet` | 将实时表格回滚到先前的提交(可逆) |
### 看板
| 工具 | 描述 |
|------|-------------|
| `create_board` | 创建看板项目表格 |
| `list_boards` | 列出您的项目表格 |
| `get_board` | 获取表格的列表(列)和卡片 |
| `update_board` | 更新表格的名称、描述或列表列 |
| `delete_board` | 软删除表格(可恢复) |
| `duplicate_board` | 复制表格及其列表、规则和卡片 |
| `add_board_card` | 向表格添加卡片(帖子/任务/想法/事件) |
| `list_board_cards` | 列出表格的卡片,可选按时间范围筛选 |
| `update_board_card` | 编辑卡片 — 移动列表、重新安排、更改状态/颜色 |
| `delete_board_card` | 从表格中软删除卡片 |
### Theo Symphony
| 工具 | 描述 |
|------|-------------|
| `create_song` | 使用 Theo Symphony 生成歌曲 — 返回一个作业以轮询 |
| `get_song_status` | 轮询歌曲作业;当完成时返回音频 + 封面艺术版本 |
### 笔记
| 工具 | 描述 |
|------|-------------|
| `get_note_content` | 提取笔记的内容为 Markdown |
| `append_to_note` | 将 Markdown 内容追加到现有笔记 |
| `clip_to_note` | 将网页内容(URL + HTML)保存为笔记内的剪辑 |
### 模板
| 工具 | 描述 |
|------|-------------|
| `list_templates` | 浏览模板库 |
| `use_template` | 从模板创建新项目 |
### 账户
| 工具 | 描述 |
|------|-------------|
| `whoami` | 获取已认证用户的配置文件信息 |
| `get_credits` | 检查剩余的 AI 信用余额 |
## 资源
资源提供 AI 客户端可以检索的只读上下文,无需调用工具。
| 资源 | 描述 |
|----------|-------------|
| `projects` | 您最近的项目的分页列表 |
| `project` | 通过 ID 获取单个项目的完整数据 |
| `templates` | 可浏览的模板目录 |
## 工作原理
```
┌────────────────────┐ Streamable HTTP ┌────────────────────────────┐
│ 您的 AI 客户端 │ + Bearer API 密钥 │ OpenCharts MCP(托管) │
│ Warp · Claude · │ ───────────────────► │ │
│ Cursor · VS Code · │ │ 项目 · 代码画布 · │
│ Windsurf · Codex · │ ◄─────────────────── │ 代理 · 表格 · 看板 ·│
│ Amp · OpenCode │ 工具结果 │ Symphony · 笔记 · AI │
└────────────────────┘ └────────────────────────────┘
```
每个请求都通过您的 API 密钥进行身份验证,并作用于您自己的 OpenCharts 账户。由于服务器是托管的,工具界面会自动保持最新 — 无需客户端更新。使用 Theo AI 或生成的工具(例如 `ask_theo`、`extract_flowchart`、`generate_code_canvas`、`build_agent`、`create_song`)会消耗您计划中的 AI 积分。
## 速率限制和积分
- **每分钟 120 个请求**,每个用户。
- AI 和生成工具会消耗 **AI 积分** — 随时使用 `get_credits` 工具检查您的余额。
## 发现和注册
为客户端、爬虫和注册表发布机器可读的元数据(无秘密):
- `https://www.opencharts.com/.well-known/mcp` — 发现清单
- `https://www.opencharts.com/.well-known/mcp/server-card.json` — 服务器卡
- `https://www.opencharts.com/.well-known/oauth-protected-resource` — 受保护资源元数据
- 文档:[opencharts.com/help/mcp-server](https://www.opencharts.com/help/mcp-server)
## 故障排除
- **`307` 重定向 / “无身份验证支持” / `401`** — 确保 URL 确切为 `https://www.opencharts.com/api/mcp`(带 `www.`)。 apex 域名会剥离 `Authorization` 头部并破坏身份验证。 还要确认您的密钥有效并发送了 `Bearer ` 前缀。
- **`429 Too Many Requests`** — 您已达到每分钟 120 次请求的限制;等待并重试。
- **客户端中缺少工具** — 完全重启客户端(或切换 OpenCharts 服务器关闭/打开),以便它重新获取工具列表。 确认您的密钥具有 `read`、`write` 和 `ai` 作用域(默认密钥包含所有三个)。
- **JWT 会话期间过期** — 会话 JWT 在约 15 分钟后过期;使用长期运行的集成使用持久性 API 密钥。
## 兼容客户端
与任何支持 [Model Context Protocol](https://modelcontextprotocol.io) 的客户端配合使用,包括:
- [Warp](https://www.warp.dev) — 代理开发环境
- [Claude Desktop](https://claude.ai) 和 [Claude Code](https://www.anthropic.com)
- [Cursor](https://www.cursor.com)
- [VS Code](https://code.visualstudio.com) (GitHub Copilot)
- [Windsurf](https://windsurf.com) (Codeium)
- [Codex](https://openai.com) (OpenAI)
- Amp
- [OpenCode](https://opencode.ai)
## 链接
- 🌐 **官网**:[opencharts.com](https://www.opencharts.com)
- 📖 **MCP 文档**:[opencharts.com/help/mcp-server](https://www.opencharts.com/help/mcp-server)
- 🔑 **获取 API 密钥**:[opencharts.com/theo-agents/mcp](https://www.opencharts.com/theo-agents/mcp)
- 💬 **社区**:[opencharts.com/community](https://www.opencharts.com/community)
- 🐛 **问题**:[GitHub Issues](https://github.com/arihealthbird/opencharts-mcp/issues)
## 许可证
本文档根据 [CC-BY-4.0](LICENSE) 许可。OpenCharts MCP 服务器是一个托管产品 — 请参阅 [opencharts.com](https://www.opencharts.com) 获取条款和定价。
MCP 配置
以下是此 MCP Server 的配置信息,可直接复制到 Cursor 或其他 MCP 客户端中使用。
mcp.json
连接信息
猜你喜欢
暂无推荐服务器