MCP

MCP

连接 Claude、Cursor、VS Code、ChatGPT 或 Grok,在你拥有的工作区里标记并检测文件。

把连接器网址粘贴到通过 Streamable HTTP 使用 MCP 的客户端。没有 API 密钥,也没有文件命令行工具。Markedfile 会用同一个账户登录,包括 SSO 和验证器,然后询问应用可以使用哪个工作区。

设置连接

  1. 1在客户端添加 MCP 服务器,并选择 Streamable HTTP,有时会标成 HTTP。
  2. 2粘贴 https://markedfile.com/api/mcp。下面的片段是各客户端通常存放这个网址的位置。
  3. 3在浏览器里完成登录,并选择工作区。
  4. 4允许标记和检测。之后可以在工作区设置里撤销连接。

登录如何进行

连接使用 OAuth 2.1 和 PKCE(S256)。你批准一个工作区。客户端看不到你的密码。

  1. 1客户端自行注册,并发送代码质询。
  2. 2浏览器打开 Markedfile 登录。SSO 和验证器就是这个账户已经在用的那些。
  3. 3你选择自己拥有的工作区,并允许标记、检测或两者。
  4. 4Markedfile 把一次性代码发到已登记的返回网址。客户端用它换取访问令牌。
  5. 5访问令牌持续一小时,并且只以哈希存储。刷新令牌每次使用都会更换。
  6. 6令牌只能在你选择的工作区标记和检测。在另一个工作区标记的文件不会被解析。
  7. 7撤销连接会立刻使令牌失效。

客户端配置

使用 Streamable HTTP。文件已经公开时,优先用 file_url。否则调用 create_upload_url,用 PUT 或 POST 发送原始字节,再传入 file_id。file_base64 只用于大约 100 KB 以内的很小文件。

Claude

  1. 在 claude.ai 打开设置,再到连接器,添加自定义连接器。在 Claude Desktop 也是打开设置,再到连接器,添加自定义连接器。
  2. 粘贴连接器网址。让客户端在浏览器完成登录。
  3. 登录 Markedfile。如果账户使用 SSO 或验证器,就通过它们,然后选择工作区。

Claude

https://markedfile.com/api/mcp

Cursor

  1. 打开 Cursor 设置,再到 MCP,添加服务器。也可以把下面的 JSON 加到 MCP 配置。
  2. 选择 Streamable HTTP,并粘贴连接器网址。
  3. 在浏览器完成登录并选择工作区。Cursor 会在本地保存刷新令牌。

Cursor

{
  "mcpServers": {
    "markedfile": {
      "url": "https://markedfile.com/api/mcp"
    }
  }
}

VS Code

  1. 在 VS Code 从命令面板运行 MCP: Add Server,或把下面的 JSON 加到 mcp.json。
  2. 把类型设为 http,网址设为连接器网址。
  3. 在浏览器完成登录并选择工作区。

VS Code

{
  "servers": {
    "markedfile": {
      "type": "http",
      "url": "https://markedfile.com/api/mcp"
    }
  }
}

ChatGPT

  1. 在 ChatGPT 打开设置,再到连接器。开发者模式也可以添加自定义连接器或应用。
  2. 加入连接器网址并开始登录。
  3. 登录 Markedfile 并选择工作区。

ChatGPT

https://markedfile.com/api/mcp

Grok Bot

  1. 在 Grok Bot 的聊天里,请你的机器人用下面的网址添加连接器。
  2. 在打开的 OAuth 画面授权你的 Markedfile 账户。

Grok Bot

https://markedfile.com/api/mcp

工具

create_upload_url
为已连接的工作区建立短时上传网址。用 PUT 或 POST 把文件的原始字节发到 upload_url。curl 可以用 --upload-file 或 --data-binary。然后把 file_id 传给 mark_file 或 detect_file。网址大约维持 15 分钟。max_bytes 是工作区方案上限,包含视频。这不会标记文件,也不占用使用中的文件名额。
mark_file
在已连接的工作区,为一个接收者标记一个文件。优先使用 create_upload_url 的 file_id,或文件已经公开时的 file_url。file_base64 只发送大约 100 KB 以内的很小文件。file_id、file_url、file_base64 只能发送其中一个。recipient 或 label 是标识(1–32 个字符,不含控制字符)。标记后的文件以 download_url 返回,这是短时链接。只有标记后的文件大约 100 KB 或更小,而且结果里必须带字节时,才把 inline_base64 设为 true。视频会排队:结果是任务 id 和 statusUrl,不是已标记的字节。
detect_file
把一个文件和已连接的工作区比对。优先使用 create_upload_url 的 file_id,或文件已经公开时的 file_url。file_base64 只发送大约 100 KB 以内的很小文件。file_id、file_url、file_base64 只能发送其中一个。标记属于该工作区时,会返回接收者的标识。视频会排队:轮询 statusUrl,直到出现 result。单帧的屏幕截图不会被当成图片检测。

上限

标记每分钟 40 次请求,检测 80 次,create_upload_url 30 次,按账户计算。文件大小、PDF 页数和视频遵循工作区方案。上传网址大约 15 分钟后失效,已标记文件的下载网址大约一小时后失效。两者都不是使用中的文件。