Context7
Up-to-date docs for AI agents
제작자가 쓴 설명(영어 원문)
Read your Clipy screen recordings: search, transcripts, AI summaries, and key moments with frames.
이 세 가지는 절대 하나의 점수로 합치지 않아요. 의견, 측정, 인기는 서로 다른 것이니까요.
이 서버는 아직 쉬운 말로 된 요약을 쓰지 못했어요. 아래는 레지스트리에서 읽어 온 사실이에요.
쓰고 있는 AI 앱을 고른 다음 설정을 복사하세요.
CLIPY_API_KEY, CLIPY_API_URL비밀로 표시된 값은 내 계정의 열쇠예요. 절대 다른 사람과 공유하거나 채팅에 붙여 넣지 마세요.
필요한 것
어떤 앱을 쓰세요?
위에서 앱을 고르세요. 기억해 두었다가 다음부터는 버튼에 “…에 설치”라고 표시해요.
Claude Desktop → Settings → Developer → Edit Config를 열고 claude_desktop_config.json에 이 내용을 붙여 넣으세요
{
"mcpServers": {
"clipy": {
"command": "npx",
"args": [
"-y",
"@clipy/mcp"
],
"env": {
"CLIPY_API_KEY": "your-value",
"CLIPY_API_URL": "your-value"
}
}
}
}터미널에서 이 명령어를 실행하세요
claude mcp add clipy --env CLIPY_API_KEY=your-value --env CLIPY_API_URL=your-value -- npx -y @clipy/mcp실행하기 전에 빈 값을 채워 주세요.
프로젝트의 .cursor/mcp.json 또는 ~/.cursor/mcp.json에 붙여 넣으세요
{
"mcpServers": {
"clipy": {
"command": "npx",
"args": [
"-y",
"@clipy/mcp"
],
"env": {
"CLIPY_API_KEY": "your-value",
"CLIPY_API_URL": "your-value"
}
}
}
}브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.
프로젝트의 .vscode/mcp.json에 붙여 넣으세요
{
"servers": {
"clipy": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@clipy/mcp"
],
"env": {
"CLIPY_API_KEY": "your-value",
"CLIPY_API_URL": "your-value"
}
}
}
}브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.
이 서버는 내 컴퓨터에서 실행되는데, ChatGPT는 인터넷에 있는 서버에만 연결할 수 있어요. 다른 앱을 고르세요.
선택한 앱은 이 기기의 쿠키에만 저장돼요. 계정은 필요 없어요.
CLIPY_API_URL env이 설정은 제작자의 레지스트리 정보로 만들었어요. README와 다르면 README를 따르세요.
내 컴퓨터에서 실행돼요. 설치하면 AI 앱에 도구 목록이 나타나요.
누구나 볼 수 있는 정보를 점검했고, 코드는 읽지 않았어요. 해당하지 않는 항목은 개수에서 뺐어요. · 2026년 11월 7일 점검
레지스트리 이름이 도메인 clipy.online 기준으로 확인되었어요(레지스트리가 도메인 소유를 확인해요)
아직 GitHub에서 이 저장소를 읽어 오지 않았어요
아직 GitHub에서 이 저장소를 읽어 오지 않았어요
내 컴퓨터에서 실행되는 서버라 인터넷 엔드포인트가 없어요
내 컴퓨터에서 실행되며, 대신 로컬 설정을 사용해요
내 컴퓨터에서 실행돼요. 도구 목록은 인터넷 엔드포인트가 있는 서버에서만 읽을 수 있어요
레지스트리에서 이 카테고리의 활성 서버 전체와 비교했어요. 스타는 게시자가 저장소를 소유한 경우에만 세요.
해당하는 기본 점검 1개 중 1개를 통과했어요. 코드는 읽지 않았어요. 키나 토큰을 넣기 전에 서버가 어떤 권한을 요구하는지 확인하고, 꼭 필요한 권한만 있는 키를 쓰세요.
입력해야 할 값: CLIPY_API_KEY
내 컴퓨터에서 실행돼요. AI 앱이 필요할 때 실행하고, 데이터는 제작자의 서버를 거치지 않아요(서버 자체가 온라인 서비스를 호출하는 경우는 제외).
GitHub 저장소는 마지막으로 – 변경됐고, 최신 버전(0.17.0)은 26일 전 레지스트리에 올라왔어요.
Claude Desktop, Claude Code, Cursor, VS Code처럼 MCP를 지원하는 앱에서 쓸 수 있어요. 내 컴퓨터에 Node.js도 있어야 해요.
같은 카테고리에는: Context7, Codebase Memory, Exa
같은 카테고리에서 다른 제작자가 만든 서버예요. 스타 순으로 정렬했어요.
카드 보는 법:★ GitHub 스타i세 기둥: 리뷰 · 점검 · 사용 정도i업데이트 = 최신 버전을 레지스트리에 공개한 날i
Up-to-date docs for AI agents
Codebase knowledge graph for AI agents — 162 languages, sub-ms queries, 99% fewer tokens.
Connect AI agents to Exa for web search, content fetching, and multi-step research.
제작자의 저장소에서 쓰인 그대로 가져왔어요. PopNx MCP가 검토하거나 보증한 내용이 아니에요. HTML, 이미지, 스크립트는 제거했어요. 링크를 누르면 이 사이트를 벗어나요.
Give your AI agent access to your Clipy screen recordings.
Developed in the Clipy monorepo. A public mirror for browsing the source and filing
issues lives at [github.com/clipy-recorder/clipy-mcp](https://github.com/clipy-recorder/clipy-mcp)
(MIT), kept in sync with each npm release.
This is a Model Context Protocol (MCP) server. It lets Claude, Cursor, Windsurf, and other MCP-capable agents search your recordings and your team library, and read their transcripts and AI summaries, so you can do things like _"turn this bug-report recording into a Linear ticket"_ without leaving your agent — and, with the record tool, record a web app headlessly and get it back as a Clipy recording (_"build the feature, then record the outcome"_).
The canonical cross-surface operating contract is [clipy.online/agents.md](https://clipy.online/agents.md). For the exact connected MCP version and schemas, use the standard tools/list request.
The read tools need the recordings:read scope, which every key gets by default. The write tools — record, the session tools (start_recording, add_marker, add_chapter, stop_recording, abort_recording), and replace_transcript — additionally need the key to carry the ingest scope ("Record & upload"), which the server enforces. get_edit_transcript and edit_recording need the recordings:write scope. A recordings:read-only key can read every recording you can open but cannot create, modify, or delete anything.
Log in once with the Clipy CLI:
npx @clipy/cli@latest login
It opens your browser; click Approve once. The key is saved to ~/.config/clipy/config.json, and this server reads that file — so there is no key to copy anywhere, and no secret ends up in your shell history or your MCP config.
Then add the server to your MCP client.
The --scope user flag installs Clipy globally for every project. Without it, claude mcp add defaults to local scope (the current folder only):
claude mcp add --scope user clipy -- npx -y @clipy/mcp
This writes the server to your global ~/.codex/config.toml, so it's available in every Codex session:
codex mcp add clipy -- npx -y @clipy/mcp
Or add it to ~/.codex/config.toml by hand:
[mcp_servers.clipy]
command = "npx" args = ["-y", "@clipy/mcp"]
Edit the matching user-level config (claude_desktop_config.json, ~/.cursor/mcp.json, or the Windsurf MCP config) directly:
{
"mcpServers": { "clipy": { "command": "npx", "args": ["-y", "@clipy/mcp"] } } }
Add an "env": { "CLIPY_API_KEY": "clipy_sk_live_xxx" } block only if you are not using clipy login on this machine.
Use CLIPY_API_KEY when there is no clipy login to read from — CI, a container — or when you deliberately want a different key than the logged-in one. An explicit env var always wins over the config file. Mint keys at https://clipy.online/settings/api-keys (shown only once).
Never inline your key into the server's launch command — e.g.
"command": "sh", "args": ["-c", "CLIPY_API_KEY=… npx -y @clipy/mcp"]. Command-line
arguments are visible to every local process via the process table (
ps,/proc),
so a key placed there is effectively world-readable on the machine. Put it in the
env
block instead. (
claude mcp add --env …/codex mcp add --env …write thatenvblock
for you — they expose the key only in the argv of that single setup command, never in the
long-running server's.)
You can also connect without installing anything. Clipy runs this server at https://clipy.online/api/mcp (Streamable HTTP).
https://clipy.online/.well-known/oauth-protected-resource.Authorization: Bearer .recordings:read scope sees only the read tools.Clipy keeps a demo account with three sample recordings: a bug walkthrough, UI feedback and a product demo. Directories can get a read-only test key by emailing support@clipy.online.
| Tool | What it does |
|---|---|
search_memory | Search the whole Clipy memory at once — every screen recording the user made *and* every video they imported — returning the matching moments with timestamps and a URL that opens at that point. Matching is semantic as well as literal, so "login flow" finds a moment where someone said "the authentication screen". Reach for this first when the user refers to something they showed, recorded, or watched; the per-library tools below each see only half the picture. Each hit carries kind (recording or context) to tell you which tool to read next, a resolution saying whether its timestamp is an exact moment or a ~50s span, and a semantic.status to check before treating an empty result as "nothing recorded". |
search_recordings | Search the recordings you can open by keyword (title + description). Optional scope (mine, team, shared, all) and workspace. |
list_recordings | List the most recent recordings you can open, with each one's maker and workspace. Optional scope and workspace. |
get_recording | Metadata for one recording (status, duration, transcript/summary status). |
get_transcript | The full timestamped transcript + plaintext. |
get_summary | The AI summary: TL;DR, key points, action items. |
get_edit_transcript | The recording as an editable transcript (needs the recordings:write scope, since it includes the text of cut words): every word with its index, start/end in ms on the original timeline, a filler flag (um, uh, er, hmm) and removed on words the current version already cuts, plus the revision to pass to edit_recording. Paged by fromWord/limit. |
edit_recording | Edit the video by its transcript (needs the recordings:write scope): cut word ranges or ms ranges, remove every filler word, bring cuts back, or turn on click auto zoom (autoZoom, Mac and Windows recordings). Clipy keeps the original, so a cut can be brought back until the owner deletes the original; the share link stays the same and switches to the new version when the render finishes. Supports dryRun and expectedRevision. |
get_browser_diagnostics | Privacy-redacted visited routes, console warnings/errors, page exceptions, and failed fetch/XHR metadata. The evidence is explicitly labelled page-reported; headers, bodies, cookies, tokens, typed values, and raw query values are never captured. |
get_interactions | Bounded pages of prepared routes, pointer samples, semantic clicks, derived drags, scroll bursts, pointer dwells, coarse typing (never values or exact key counts), and highlights. Filter by fromMs/toMs/types, set limit (1–250, default 100), and follow pagination.nextCursor with unchanged filters. Reports source coverage and preparation state; dwell is not proof of attention and coordinates belong to the capture viewport, not transformed playback frames. |
wait_for_artifacts | Poll until a recording's transcript/summary finish processing. |
download_recording | Download the MP4 locally so you can clip it or extract frames yourself (e.g. with ffmpeg). |
get_key_moments | Key moments: timestamps, captions, and click coordinates. |
get_agent_context | The full agent-context bundle (summary + interaction timeline + key moments + transcript + available browser diagnostics) as markdown. |
record | Record a web app headlessly and upload it as a Clipy recording; returns its share + agent-context URLs. Accepts a type (recording kind), viewports (sweep several screen sizes into one video), storageState / userDataDir+profileDirectory / initScript (record behind a login), and timestamped notes that become the (silent) recording's transcript. Needs Playwright in this server's environment and an ingest-scoped key (see below). |
start_recording | Start a recording session that keeps recording while you work (drive the page with your own browser tools, run commands, …). Accepts type, storageState / userDataDir+profileDirectory / initScript, and exposeCdp (get a CDP endpoint + in-page window.__clipyMark/window.__clipyChapter bridge to drive the recorded page). Auto-stops + uploads at maxSeconds (default 600) so it can never run away. |
add_marker | Drop a narration marker into the active session (live clock, or backdate with atSeconds) — markers become the recording's transcript chapters. Can carry evidence in one of two provenances: clipy-verified (assertSelector / assertText / assertUrl) where Clipy checks the page itself, or driver-attested (observed + verdict) where you report what your own tooling saw. Clipy-verified outcomes render with a verdict glyph (✓ pass, ✗ failure that can abort via failMode, ⚠ unverified — never a silent pass); driver-attested ones render with a weaker-looking hedge glyph (≈) so the two are never mistaken at a glance, and they are tallied in separate segments. Navigations + console errors are added automatically as [auto] marks. |
add_chapter | Drop a === CHAPTER: === boundary into the active session — split a recording into named sections (ideal for before/after demos). |
stop_recording | Finish the session: close the browser, upload, return the share + agent-context URLs. |
abort_recording | Discard the active session; nothing is uploaded. |
list_context_documents | List the user's context documents — YouTube videos and local video files they imported with clipy context import, so agents can read them. A separate library from their own screen recordings. |
get_context_document | One context document's metadata: source, duration, tags, the server's classification (video type, whether visual evidence is needed, planned moments), and which transcript/frames exist. Not the transcript itself. |
read_context_document | Read a context document as compiled markdown — header, metadata, then the timestamped transcript with frame captions interleaved. Takes startMs/endMs so you can walk a two-hour video section by section instead of flooding your context. |
update_recording | Rename a recording or edit its description (needs recordings:write). |
organize_recording | File into a folder and add or remove tags (needs recordings:write). |
set_recording_privacy | Switch the share link between public, restricted and private. Never invites or emails anyone (needs recordings:write). |
list_folders / create_folder | Folders with ids; create is idempotent by name. |
list_comments | The comment thread: timestamped comments, replies, resolved state. Author names only (needs comments:read). |
add_comment | Comment at a moment or reply, as the key's owner. Everyone in the thread is notified (needs comments:write). |
get_analytics | Views, unique viewers, completion and who watched (needs analytics:read). Free accounts get the totals only. |
upload_video | Upload a WebM, MP4 or QuickTime .mov from this machine and get its share and agent-context links (needs ingest). |
delete_recording | Permanently delete a recording. confirm must repeat the id (needs recordings:delete, from clipy login --allow-delete). |
| replace_transcript | Replace a recording's transcript with text you author (needs the ingest scope). Call get_transcript first and pass its revision; stale replacements are rejected instead of overwriting a concurrent edit. The summary regenerates automatically. Marked as agent-edited, never passed off as spee
앞부분만 보여 드려요. 나머지는 저장소에서 읽어 보세요