Cedric MCP
AI 직원 Cedric을 위한 원격 MCP 서버: 에이전트가 그의 메모리, 팀 채팅 채널, 연결된 앱, 파일, 워크플로 및 일정을 활용할 수 있으며, 위험한 작업에는 사람의 승인이 필요합니다.
호스팅형 MCP 서버
npx add-mcp 'https://app.meet-cedric.com/api/v1/mcp'Claude Code, Codex, Cursor 등에 설치됩니다
문서
Authentication
Two ways in, one permission model.
- Sign in from your agent (OAuth). Any MCP client given the endpoint below discovers the sign-in on its own: it registers, opens your browser, you approve once, and it holds a token that refreshes quietly. OAuth 2.1 with PKCE; metadata at
/.well-known/oauth-authorization-serverand/.well-known/oauth-protected-resource. These tokens are always standard mode. Disconnect from Settings → MCP. - API keys. For scripts, CI, and agents with no browser. Keys look like
cedric_sk_…, stay masked in Settings until their owner reveals them, and revoking one is the whole off-switch.
Authorization: Bearer cedric_sk_...
Neither a key nor a sign-in ever reaches another workspace or outranks its owner: it sees exactly your connections, your memory visibility, and this workspace's credits.
Chat: one endpoint, whole turns
POST https://app.meet-cedric.com/api/v1/chat runs a normal Cedric turn, the same brain as every other surface (memory, connected tools, scheduling, credits all apply), and returns the reply as JSON.
curl -X POST https://app.meet-cedric.com/api/v1/chat \
-H "Authorization: Bearer $CEDRIC_KEY" \
-H "Content-Type: application/json" \
-d '{"message": "Summarize this week for the team"}'
// → { "reply": "...", "session": "abc123" }
Each key talks in its own conversation by default. Pass "session": "<key>" to continue a specific session, or "session": "new" to start fresh; the response returns the session key for reuse.
Direct control: Cedric's tools over MCP
POST https://app.meet-cedric.com/api/v1/mcp is a Model Context Protocol server exposing Cedric's real toolbox, memory, channels, connected apps, files, workflows, scheduling, automations, to any MCP-speaking agent. Your agent is the brain; Cedric is the hands.
# With the browser sign-in (any MCP client; Claude Code shown):
claude mcp add --transport http cedric https://app.meet-cedric.com/api/v1/mcp
# then /mcp → cedric → Authenticate
# With a key (scripts, CI, headless agents):
claude mcp add --transport http cedric \
https://app.meet-cedric.com/api/v1/mcp \
--header "Authorization: Bearer $CEDRIC_KEY"
Settings → MCP has the same for Cursor, VS Code, Claude, ChatGPT, Codex CLI, Gemini CLI and Windsurf, with one-click installs where the client supports them. The connection guide walks through each client and how the sign-in works.
The endpoint speaks standard MCP: initialize, tools/list, tools/call. Call the getting_started tool first, it returns the full connection guide, including when to act directly versus delegating a whole task through ask_cedric.
Files: videos, images and documents
A tool call is JSON and has no room for a video, so a file on your machine comes in through POST https://app.meet-cedric.com/api/v1/files, with the same key, as multipart form-data (field files, up to 5 files per request, 100 MB each). The answer lists each file's id. Add ?share=1 to also get a public link.
curl -X POST https://app.meet-cedric.com/api/v1/files \
-H "Authorization: Bearer $CEDRIC_KEY" \
-F "files=@./teaser.mp4"
{ "files": [{ "id": "f_…", "filename": "teaser.mp4", "mimetype": "video/mp4",
"sizeBytes": 18234001, "url": "…", "expiresInDays": 30 }],
"refused": [] }
A file that already has a public link needs no upload: the upload_file tool fetches it. Either way the file is kept for 30 days (a year once shared), and its id works everywhere: pass it in file_ids on send_channel_message or send_dm to post the file with your text, or to get_file to fetch it back. list_files shows everything the workspace holds.
Add -F "keep=1" to keep a file for good and -F "path=brand/videos" to put it in a folder. read_file returns the text inside a stored document, manage_file keeps, renames, moves or deletes, and run_code takes stored files as input_files. A workspace holds up to 1 GB; the Files tab of Cedric's settings shows what is there. A key sees the files its owner may see.
Risk and approvals
Keys have a mode, chosen when you create them and immutable after:
- Standard (default): anything risky, sending messages, mail, running code, creating standing automations, raises an approval a human decides in chat or the dashboard. The call returns
pending_approvalwith a proposal id; poll it with theproposal_statustool. - Direct: risky actions execute immediately. Creating a direct key is the standing approval, you are automating yourself, and revoking it ends everything.
Limits
- Per-key rate limit: 30 requests per minute.
- Request bodies are capped; long work belongs in sessions.
- Suspended or out-of-credit workspaces refuse API turns with the same message chat gives.
- Turns are metered as normal usage; direct tool calls are counted per call.