mcpField
C
contraption

contraption

远程服务
github.com/contraptionco记忆与知识135 周前更新
代码仓库

关于 contraption

Contraption Company MCP 是用于搜索和读取 Contraption Company 博客文章与页面的托管服务,适合需要访问博客内容的客户端。内容存储于 Chroma Cloud,并从 Ghost 同步更新。

主要功能

  1. 01搜索文章和页面
  2. 02分页列出文章
  3. 03按规范 URL 获取内容
  4. 04从 Ghost 同步更新
  5. 05索引会员专属内容

适用场景

  1. 01按主题查找博客文章
  2. 02在 AI 工作流中读取文章
  3. 03分页浏览文章列表
  4. 04访问更新后的博客内容

MCP 相关

通过托管端点向 MCP 客户端提供博客文章和页面的搜索、列表及读取工具。托管服务无需身份验证。

配置

远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。

服务地址https://mcp.contraption.co/
一键复制安装命令
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。

工具

详细介绍

Contraption Company MCP

适用于 Contraption Company 文章的 MCP(Model Context Protocol)服务,基于 Chroma Cloud 构建。

安装方法

Contraption Company MCP 提供托管 MCP 服务,无需身份验证。

字段值
服务 URLhttps://mcp.contraption.co
在常用客户端中配置
Cursor

使用深层链接直接在 Cursor 中安装:安装 Contraption Company MCP。

或者,创建或编辑 ~/.cursor/mcp.json:

{
  "mcpServers": {
    "contraption-company": {
      "url": "https://mcp.contraption.co"
    }
  }
}
ChatGPT
  1. 打开 设置 → 连接器。
  2. 点击 创建新连接器。
  3. 将 MCP 服务 URL 设置为 https://mcp.contraption.co。
  4. 将身份验证留空并保存。
VS Code (Copilot Chat MCP)

创建或编辑 .vscode/mcp.json:

{
  "servers": {
    "contraption-company": {
      "type": "http",
      "url": "https://mcp.contraption.co"
    }
  }
}
Codex

添加到 ~/.codex/config.toml:

[mcp_servers.contraption-company]
command = "npx"
args = ["mcp-remote", "--transport", "http", "https://mcp.contraption.co"]
Claude Code

在终端中运行:

claude mcp add --transport http contraption-company https://mcp.contraption.co
OpenAI SDK (Python)
from openai import OpenAI

client = OpenAI()

response = client.responses.create(
    model="gpt-5",
    input="List the newest Contraption Company blog posts.",
    tools=[
        {
            "type": "mcp",
            "server_label": "contraption-company",
            "server_url": "https://mcp.contraption.co",
            "require_approval": "never",
        }
    ],
)
print(response)

功能

  • 搜索:根据查询文本查找文章和页面
  • 自动索引:启动时及通过定时轮询与博客 API 同步
  • 完整内容访问:索引所有已发布的文章和页面,包括仅限会员访问的内容
  • 高性能:由 FastAPI 和 Chroma Cloud 提供支持
  • 后台更新:每隔几分钟轮询 Ghost,查找新增、更新或已删除的文章和页面
  • 查询记录:将搜索记录到专用的 Chroma 集合中以供分析
  • 支持 Docker:提供 Dockerfile,便于部署
  • 测试完善:包含全面的 pytest 测试套件

本地运行

  1. 克隆并安装:
git clone <repository>
cd mcp
uv sync --all-extras
  1. 配置环境:
cp .env.example .env
# Edit .env with your credentials
  1. 运行服务:
./run.sh
# Or: uv run python -m src.main
Docker
# Build
docker build -t contraption-mcp .

# Run
docker run -p 8000:8000 --env-file .env contraption-mcp

# Or use docker-compose
docker-compose up

配置

本地运行需要外部服务的凭据:

  • Ghost Admin API 密钥:从 Ghost 管理面板获取(Settings > Integrations)
  • Chroma Cloud 凭据:从 Chroma Cloud 获取租户 ID、数据库和 API 密钥
  • Chroma 查询集合(可选):设置 CHROMA_QUERY_COLLECTION 以覆盖默认的 queries 集合
  • Voyage API 密钥:生成上下文化嵌入所需
  • Ghost 博客 URL:你的 Ghost 博客 URL
  • 轮询间隔(可选):设置 POLL_INTERVAL_SECONDS 以覆盖默认的 5 分钟同步间隔
  • 默认启用仅限会员访问的内容和查询记录。请确保隐私政策和访问控制涵盖这两项。

支持与隐私

MCP 工具

  • fetch(id):使用规范 URL 作为标识符获取单篇文章或页面。请提供 list_posts/search 返回的 id(即规范 URL);也接受 slug 和简写方案,但响应始终会解析为完整 URL。
  • list_posts(sort_by, page, limit):分页列出文章,并返回作为标识符的规范 URL
  • search(query, limit):根据查询文本搜索文章和页面;结果 ID 返回规范 URL

API 端点

  • GET /:服务信息(对于非 MCP 请求,会重定向到 GitHub 仓库)
  • GET /health:健康检查
  • GET /debug/search:搜索调试端点(Swagger UI 见 /debug/docs)
  • /mcp/*:MCP 协议端点
后台同步

服务每 5 分钟轮询一次 Ghost Admin API,以检测新增、更新或已删除的文章和页面。设置环境变量 POLL_INTERVAL_SECONDS 可调整轮询间隔。

开发

# Install dev dependencies
make dev

# Run tests
make test

# Lint and format
make format lint

# Run all checks
make check

许可证

MIT

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。