ContextLayer
Intelligent context infrastructure for AI teams: knowledge graph, sessions, tasks, documents.
사용해야 할까요
품질 및 안전성
발견 사항 (8)
- HIGH
- MEDIUMcreate_sprint에서
- MEDIUMlist_tasks에서
- MEDIUMupdate_task에서
- LOWaccept_org_invite에서
- INFOcreate_sprint에서
- INFOlist_tasks에서
- INFOupdate_task에서
도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.
컨텍스트 비용
이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.
설치
원클릭 설치
`claude_desktop_config.json` 파일에 다음을 추가하세요:
{
"mcpServers": {
"context-layer": {
"url": "https://api.dotnova.io/mcp"
}
}
}원격 엔드포인트
https://api.dotnova.io/mcpstreamable-http할 수 있는 일
도구 목록
도구 (62)
⚪accept_org_invite(org_name)
Accept a pending organization invite by organization name.
입력 스키마
{
"type": "object",
"properties": {
"org_name": {
"description": "Organization name to accept the invite for",
"type": "string"
}
},
"required": [
"org_name"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "AcceptOrgInviteParams"
}🟡add_task_dependency(dependency_type, depends_on_task_id, task_id)
Add a dependency between tasks. Use this to express that a task is blocked by another task (must complete first) or relates to it. This prevents context contamination: when Task B depends on Task A, agents working on Task B will be warned if Task A is still in progress.
입력 스키마
{
"type": "object",
"properties": {
"dependency_type": {
"description": "Dependency type: 'blocks' (must complete before) or 'relates_to' (informational link). Default: blocks",
"type": [
"string",
"null"
]
},
"depends_on_task_id": {
"description": "The task that blocks (the dependency / prerequisite)",
"type": "string"
},
"task_id": {
"description": "The task that is blocked (depends on the other task)",
"type": "string"
}
},
"required": [
"task_id",
"depends_on_task_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "AddTaskDependencyParams"
}🟡add_team_member(role, team_id, team_name, user)
Add a member to a team. Find the team by name or ID, and the user by name or email.
입력 스키마
{
"type": "object",
"properties": {
"role": {
"description": "Role in team: member or lead (default: member)",
"type": [
"string",
"null"
]
},
"team_id": {
"description": "Team ID (optional if team_name is provided)",
"type": [
"string",
"null"
]
},
"team_name": {
"description": "Team name (optional if team_id is provided)",
"type": [
"string",
"null"
]
},
"user": {
"description": "User name or email to add",
"type": "string"
}
},
"required": [
"user"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "AddTeamMemberParams"
}⚪assign_task(task_id, user)
Assign a user to a task by name or email. The user is added to the task's assignees and linked in the knowledge graph.
입력 스키마
{
"type": "object",
"properties": {
"task_id": {
"description": "Task ID",
"type": "string"
},
"user": {
"description": "User name or email to assign",
"type": "string"
}
},
"required": [
"task_id",
"user"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "AssignTaskParams"
}🟡create_position(description, permissions, title)
Create a new job position/title in your organization (admin only).
입력 스키마
{
"type": "object",
"properties": {
"description": {
"description": "Position description (optional)",
"type": [
"string",
"null"
]
},
"permissions": {
"description": "JSON object mapping permission keys to booleans, e.g. {\"can_view_all_projects\": true, \"can_manage_documents\": false}. Use list_positions to see all available permission keys."
},
"title": {
"description": "Position title (e.g. 'Frontend Developer')",
"type": "string"
}
},
"required": [
"title"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "CreatePositionParams"
}🟡create_project(description, name)
Create a new project in your organization. You will be added as the project owner.
입력 스키마
{
"type": "object",
"properties": {
"description": {
"description": "Project description (optional)",
"type": [
"string",
"null"
]
},
"name": {
"description": "Project name",
"type": "string"
}
},
"required": [
"name"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "CreateProjectParams"
}🟡create_sprint(goal, name, project_id, project_name)
Create a new sprint for a project. Automatically migrates non-completed tasks (todo/in_progress) from the previous sprint. On first use, creates Sprint 0 (Backlog) for existing tasks and Sprint 1 as the active sprint.
입력 스키마
{
"type": "object",
"properties": {
"goal": {
"description": "Sprint goal (optional)",
"type": [
"string",
"null"
]
},
"name": {
"description": "Sprint name (default: 'Sprint N')",
"type": [
"string",
"null"
]
},
"project_id": {
"description": "Project ID (alternative to project_name)",
"type": [
"string",
"null"
]
},
"project_name": {
"description": "Project name",
"type": [
"string",
"null"
]
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "CreateSprintParams"
}🟡create_task(assignees, depends_on, description, due_at, priority, ...)
Create a new task in a project. Tasks track work items and can be assigned to team members and linked to sessions.
입력 스키마
{
"type": "object",
"properties": {
"assignees": {
"description": "Assignee names or emails (optional — resolves to user IDs)",
"items": {
"type": "string"
},
"type": [
"array",
"null"
]
},
"depends_on": {
"description": "Task IDs that this task depends on / is blocked by (optional). Creates 'blocks' dependencies.",
"items": {
"type": "string"
},
"type": [
"array",
"null"
]
},
"description": {
"description": "Task description (optional)",
"type": [
"string",
"null"
]
},
"due_at": {
"description": "Due date in ISO 8601 format (e.g. '2026-03-15T00:00:00Z')",
"type": [
"string",
"null"
]
},
"priority": {
"description": "Priority: low, medium, high, urgent (default: medium)",
"type": [
"string",
"null"
]
},
"project_id": {
"description": "Project ID (alternative to project_name)",
"type": [
"string",
"null"
]
},
"project_name": {
"description": "Project name to create the task in",
"type": [
"string",
"null"
]
},
"sprint_number": {
"description": "Sprint number to assign the task to (optional — auto-assigns to current sprint if omitted)",
"format": "int32",
"type": [
"integer",
"null"
]
},
"tags": {
"description": "Tags for categorization (e.g. ['bug', 'frontend'])",
"items": {
"type": "string"
},
"type": [
"array",
"null"
]
},
"team_id": {
"description": "Team ID (alternative to team_name)",
"type": [
"string",
"null"
]
},
"team_name": {
"description": "Team name to assign to (optional — resolves to team ID)",
"type": [
"string",
"null"
]
},
"title": {
"description": "Task title",
"type": "string"
}
},
"required": [
"title"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "CreateTaskParams"
}🟡create_team(description, name, objectives)
Create a new team in your organization. You will be added as team lead.
입력 스키마
{
"type": "object",
"properties": {
"description": {
"description": "Team description (optional)",
"type": [
"string",
"null"
]
},
"name": {
"description": "Team name",
"type": "string"
},
"objectives": {
"description": "Team objectives as a list of strings (optional)",
"items": {
"type": "string"
},
"type": [
"array",
"null"
]
}
},
"required": [
"name"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "CreateTeamParams"
}🔴delete_document(document_id)
Delete a document from the knowledge base. This permanently removes the document.
입력 스키마
{
"type": "object",
"properties": {
"document_id": {
"description": "Document ID to delete",
"type": "string"
}
},
"required": [
"document_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "DeleteDocumentParams"
}🔴delete_position(position_id, position_title)
Delete a position permanently (admin only). Find by title or ID.
입력 스키마
{
"type": "object",
"properties": {
"position_id": {
"description": "Position ID (optional if position_title is provided)",
"type": [
"string",
"null"
]
},
"position_title": {
"description": "Position title (optional if position_id is provided)",
"type": [
"string",
"null"
]
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "DeletePositionParams"
}🔴delete_project(project_id, project_name)
Delete a project permanently (admin only). Find by name or ID.
입력 스키마
{
"type": "object",
"properties": {
"project_id": {
"description": "Project ID (optional if project_name is provided)",
"type": [
"string",
"null"
]
},
"project_name": {
"description": "Project name (optional if project_id is provided)",
"type": [
"string",
"null"
]
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "DeleteProjectParams"
}🔴delete_task(task_id)
Delete a task permanently. The task and all its assignee links are removed.
입력 스키마
{
"type": "object",
"properties": {
"task_id": {
"description": "Task ID to delete",
"type": "string"
}
},
"required": [
"task_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "DeleteTaskParams"
}🔴delete_team(team_id, team_name)
Delete a team permanently (admin only). Find by name or ID.
입력 스키마
{
"type": "object",
"properties": {
"team_id": {
"description": "Team ID (optional if team_name is provided)",
"type": [
"string",
"null"
]
},
"team_name": {
"description": "Team name (optional if team_id is provided)",
"type": [
"string",
"null"
]
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "DeleteTeamParams"
}🔴delete_user(user)
Delete (soft-delete) a user from your organization (admin/owner only).
입력 스키마
{
"type": "object",
"properties": {
"user": {
"description": "User name or email to delete",
"type": "string"
}
},
"required": [
"user"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "DeleteUserParams"
}⚪end_session(outcome, session_id, token_usage)
End a work session. This triggers context block generation — your activities are summarized and stored in the knowledge graph for future reference.
입력 스키마
{
"type": "object",
"properties": {
"outcome": {
"description": "Outcome: success, failure, partial, abandoned",
"type": "string"
},
"session_id": {
"description": "Session ID to end",
"type": "string"
},
"token_usage": {
"description": "Token usage for this session. JSON object with fields: input_tokens (int), output_tokens (int), total_tokens (int), model (string), estimated_cost_usd (float). Optional — set when the agent can report consumption."
}
},
"required": [
"session_id",
"outcome"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "EndSessionParams"
}🟢find_documents(category, limit, project_name, query, tags, ...)
Search documents in the organization's knowledge base. Filter by category, tags, project, or free-text query. Returns document metadata — use get_document to read the full content.
입력 스키마
{
"type": "object",
"properties": {
"category": {
"description": "Filter by category: template, policy, procedure, reference, contract, guide, checklist",
"type": [
"string",
"null"
]
},
"limit": {
"description": "Maximum results (default 10)",
"format": "int32",
"type": [
"integer",
"null"
]
},
"project_name": {
"description": "Filter by project name",
"type": [
"string",
"null"
]
},
"query": {
"description": "Search query (matches title and content)",
"type": [
"string",
"null"
]
},
"tags": {
"description": "Filter by tags",
"items": {
"type": "string"
},
"type": [
"array",
"null"
]
},
"team_name": {
"description": "Filter by team name",
"type": [
"string",
"null"
]
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "FindDocumentsParams"
}🟢get_context(max_tokens, project_id, project_name, query, session_id)
Get intelligent context from the knowledge graph. Pass a query describing what you need — the system will automatically route to the right data sources (tasks, sessions, documents, teams, blocks) based on intent analysis + graph traversal + semantic similarity. Optionally narrow scope with project name or session ID.
입력 스키마
{
"type": "object",
"properties": {
"max_tokens": {
"description": "Maximum tokens for the response (default 500)",
"format": "int32",
"type": [
"integer",
"null"
]
},
"project_id": {
"description": "Project ID (optional — if omitted, returns across all projects)",
"type": [
"string",
"null"
]
},
"project_name": {
"description": "Project name (optional, alternative to project_id)",
"type": [
"string",
"null"
]
},
"query": {
"description": "The user's question or intent — used for intelligent context routing. Describe what context is needed.",
"type": "string"
},
"session_id": {
"description": "Session ID (optional — if omitted, returns user-level context)",
"type": [
"string",
"null"
]
}
},
"required": [
"query"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "GetContextParams"
}🟢get_context_routing
Get the current context routing mode for the organization. Returns 'keyword_llm', 'keyword_only', or 'llm_only'.
입력 스키마
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "GetContextRoutingParams"
}🟢get_document(document_id)
Get the full content of a document by its ID. Use find_documents first to search, then get_document to read the content. For binary documents (PDFs, images), content is returned base64-encoded with encoding='base64' and the mime_type field.
입력 스키마
{
"type": "object",
"properties": {
"document_id": {
"description": "Document ID",
"type": "string"
}
},
"required": [
"document_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "GetDocumentParams"
}🟢get_live_activity(project_name, recent_minutes, team_name, user_name)
See what's happening right now: active sessions, recent events, traces, and tasks being worked on.
입력 스키마
{
"type": "object",
"properties": {
"project_name": {
"description": "Filter by project name (optional)",
"type": [
"string",
"null"
]
},
"recent_minutes": {
"description": "Time window for recent events in minutes (default: 30)",
"format": "int32",
"type": [
"integer",
"null"
]
},
"team_name": {
"description": "Filter by team name (optional)",
"type": [
"string",
"null"
]
},
"user_name": {
"description": "Filter by user name (optional, partial match)",
"type": [
"string",
"null"
]
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "GetLiveActivityParams"
}🟢get_my_stats
Get your personal activity statistics: total sessions, events, active days, projects worked on, and recent activity summary.
입력 스키마
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "EmptyParams"
}🟢get_org_stats
Get comprehensive organization statistics: counts, engagement metrics, task velocity.
입력 스키마
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "GetOrgStatsParams"
}🟢get_project_status(project_id, project_name)
Get the current status of a project including recent activity. You can use either the project name or ID.
입력 스키마
{
"type": "object",
"properties": {
"project_id": {
"description": "Project ID (optional if project_name is provided)",
"type": [
"string",
"null"
]
},
"project_name": {
"description": "Project name (optional, alternative to project_id)",
"type": [
"string",
"null"
]
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "GetProjectStatusParams"
}🟢get_session_details(session_id)
Get full details of a session including all events/activities logged during it. Shows who did what, when, and the session block summary if available. Admins can view any session in the org; members can only view their own.
입력 스키마
{
"type": "object",
"properties": {
"session_id": {
"description": "Session ID to get details for",
"type": "string"
}
},
"required": [
"session_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "GetSessionDetailsParams"
}🟢get_team_details(team_id, team_name)
Get detailed information about a team: members (with roles), linked projects, and recent activity. Use team name or ID.
입력 스키마
{
"type": "object",
"properties": {
"team_id": {
"description": "Team ID (optional if team_name is provided)",
"type": [
"string",
"null"
]
},
"team_name": {
"description": "Team name (optional if team_id is provided)",
"type": [
"string",
"null"
]
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "GetTeamDetailsParams"
}⚪invite_user(email, name, positions, role, skills, ...)
Invite a new member to your organization (admin/owner only).
입력 스키마
{
"type": "object",
"properties": {
"email": {
"description": "User email address",
"type": "string"
},
"name": {
"description": "Full name",
"type": "string"
},
"positions": {
"description": "Position titles to assign (optional — resolves by name)",
"items": {
"type": "string"
},
"type": [
"array",
"null"
]
},
"role": {
"description": "Role: member or admin (default: member)",
"type": [
"string",
"null"
]
},
"skills": {
"description": "Skills list (optional)",
"items": {
"type": "string"
},
"type": [
"array",
"null"
]
},
"team_name": {
"description": "Team name to add user to (optional)",
"type": [
"string",
"null"
]
}
},
"required": [
"email",
"name"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "InviteUserParams"
}⚪link_task_session(session_id, task_id)
Link a work session to a task. This records that the session was used to work on the task, connecting them in the knowledge graph.
입력 스키마
{
"type": "object",
"properties": {
"session_id": {
"description": "Session ID to link to the task",
"type": "string"
},
"task_id": {
"description": "Task ID to link",
"type": "string"
}
},
"required": [
"task_id",
"session_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "LinkTaskSessionParams"
}🟢link_team_project(project_id, project_name, team_id, team_name)
Link a project to a team. Find both by name or ID.
입력 스키마
{
"type": "object",
"properties": {
"project_id": {
"description": "Project ID (optional if project_name is provided)",
"type": [
"string",
"null"
]
},
"project_name": {
"description": "Project name (optional if project_id is provided)",
"type": [
"string",
"null"
]
},
"team_id": {
"description": "Team ID (optional if team_name is provided)",
"type": [
"string",
"null"
]
},
"team_name": {
"description": "Team name (optional if team_id is provided)",
"type": [
"string",
"null"
]
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "LinkTeamProjectParams"
}🟢list_colleagues(limit, team_name)
List colleagues in your organization. Shows name, email, role, and optionally filters by team. Admins see all users; members see users in their own teams.
입력 스키마
{
"type": "object",
"properties": {
"limit": {
"description": "Maximum results (default 20)",
"format": "int32",
"type": [
"integer",
"null"
]
},
"team_name": {
"description": "Filter by team name (optional — shows only members of that team)",
"type": [
"string",
"null"
]
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "ListColleaguesParams"
}🟢list_notifications(limit, unread_only)
List your notifications — task assignments, status changes, sprint updates, invites, and more. Returns unread notifications by default.
입력 스키마
{
"type": "object",
"properties": {
"limit": {
"description": "Maximum results (default 20)",
"format": "int32",
"type": [
"integer",
"null"
]
},
"unread_only": {
"description": "Only return unread notifications (default: true)",
"type": [
"boolean",
"null"
]
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "ListNotificationsParams"
}🟢list_pending_invites
List pending organization invites for the current user.
입력 스키마
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "ListPendingInvitesParams"
}🟢list_positions
List all job positions/titles in your organization with member counts.
입력 스키마
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "ListPositionsParams"
}🟢list_project_members(project_id, project_name)
List all members involved in a project. Includes users who have sessions in the project and users from teams linked to the project.
입력 스키마
{
"type": "object",
"properties": {
"project_id": {
"description": "Project ID",
"type": [
"string",
"null"
]
},
"project_name": {
"description": "Project name (alternative to project_id)",
"type": [
"string",
"null"
]
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "ListProjectMembersParams"
}🟢list_project_teams(project_id, project_name)
List teams linked to a project.
입력 스키마
{
"type": "object",
"properties": {
"project_id": {
"description": "Project ID",
"type": [
"string",
"null"
]
},
"project_name": {
"description": "Project name (alternative to project_id)",
"type": [
"string",
"null"
]
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "ListProjectTeamsParams"
}🟢list_projects(org_id)
List projects in your organization. No parameters needed — just call it to see all your projects.
입력 스키마
{
"type": "object",
"properties": {
"org_id": {
"description": "Optional organization ID (uses default org if omitted)",
"type": [
"string",
"null"
]
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "ListProjectsParams"
}🟢list_sessions(limit, project_id, project_name)
List your recent work sessions. Optionally filter by project name or ID. Shows task type, status, and event count.
입력 스키마
{
"type": "object",
"properties": {
"limit": {
"description": "Maximum results (default 10)",
"format": "int32",
"type": [
"integer",
"null"
]
},
"project_id": {
"description": "Filter by project ID (optional)",
"type": [
"string",
"null"
]
},
"project_name": {
"description": "Filter by project name (optional, alternative to project_id)",
"type": [
"string",
"null"
]
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "ListSessionsParams"
}🟢list_sprints(project_id, project_name)
List sprints for a project. Shows sprint number, name, goal, status (current/completed), and task count.
입력 스키마
{
"type": "object",
"properties": {
"project_id": {
"description": "Project ID (alternative to project_name)",
"type": [
"string",
"null"
]
},
"project_name": {
"description": "Project name",
"type": [
"string",
"null"
]
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "ListSprintsParams"
}🟢list_tasks(limit, mine_only, project_name, sprint_number, status)
List tasks. Filter by project, status (todo/in_progress/done/cancelled), sprint number, or show only your tasks. Shows title, status, priority, assignees, sprint, and linked sessions.
입력 스키마
{
"type": "object",
"properties": {
"limit": {
"description": "Maximum results (default 20)",
"format": "int32",
"type": [
"integer",
"null"
]
},
"mine_only": {
"description": "Filter tasks assigned to me only (default: false)",
"type": [
"boolean",
"null"
]
},
"project_name": {
"description": "Filter by project name (optional)",
"type": [
"string",
"null"
]
},
"sprint_number": {
"description": "Filter by sprint number (optional)",
"format": "int32",
"type": [
"integer",
"null"
]
},
"status": {
"description": "Filter by status: todo, in_progress, done, cancelled (optional)",
"type": [
"string",
"null"
]
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "ListTasksParams"
}🟢list_teams
List all teams in your organization. Shows team name, member count, project count, and description.
입력 스키마
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "EmptyParams"
}⚪log_activity(content, event_type, project_id, project_name, session_id, ...)
Log an activity or event. If no session_id is provided, a session is automatically created or reused for the project. Just pass project_name and content — no need to start a session first.
입력 스키마
{
"type": "object",
"properties": {
"content": {
"description": "Free-form content describing the activity",
"type": "string"
},
"event_type": {
"description": "Event type: code_change, file_edit, command_run, decision, note, conversation, discovery",
"type": "string"
},
"project_id": {
"description": "Project ID (optional if project_name is provided)",
"type": [
"string",
"null"
]
},
"project_name": {
"description": "Project name (optional, alternative to project_id — used for auto-session)",
"type": [
"string",
"null"
]
},
"session_id": {
"description": "Session ID (optional — if omitted, a session is auto-created or reused for the project)",
"type": [
"string",
"null"
]
},
"source": {
"description": "Source of the event (e.g. 'claude-code', 'cursor', 'user')",
"type": [
"string",
"null"
]
}
},
"required": [
"event_type",
"content"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "LogActivityParams"
}⚪log_trace(duration_ms, metadata, parent_trace_id, project_id, project_name, ...)
Log a granular agent action trace. High-frequency, no LLM processing.
입력 스키마
{
"type": "object",
"properties": {
"duration_ms": {
"description": "Duration in milliseconds (optional)",
"format": "int32",
"type": [
"integer",
"null"
]
},
"metadata": {
"description": "Free-form JSON metadata (optional)"
},
"parent_trace_id": {
"description": "Parent trace ID for nesting (e.g. tool_call -> file_reads)",
"type": [
"string",
"null"
]
},
"project_id": {
"description": "Project ID (optional, alternative to project_name)",
"type": [
"string",
"null"
]
},
"project_name": {
"description": "Project name (optional, used for auto-session resolution)",
"type": [
"string",
"null"
]
},
"session_id": {
"description": "Session ID (optional — auto-resolved from project if omitted)",
"type": [
"string",
"null"
]
},
"status": {
"description": "Status: started, completed, failed (default: completed)",
"type": [
"string",
"null"
]
},
"summary": {
"description": "Short description of the action",
"type": "string"
},
"task_id": {
"description": "Task ID to link this trace to (optional — auto-links session to task)",
"type": [
"string",
"null"
]
},
"trace_id": {
"description": "Logical trace group ID (auto-generated if omitted)",
"type": [
"string",
"null"
]
},
"trace_type": {
"description": "Trace type: tool_call, file_read, file_write, code_search, code_edit, api_call, thinking, error",
"type": "string"
}
},
"required": [
"trace_type",
"summary"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "LogTraceParams"
}⚪log_traces_batch(traces)
Log multiple traces in a single batch.
입력 스키마
{
"type": "object",
"properties": {
"traces": {
"description": "Array of traces to log in a single batch",
"items": {
"$ref": "#/$defs/LogTraceParams"
},
"type": "array"
}
},
"required": [
"traces"
],
"$defs": {
"LogTraceParams": {
"properties": {
"duration_ms": {
"description": "Duration in milliseconds (optional)",
"format": "int32",
"type": [
"integer",
"null"
]
},
"metadata": {
"description": "Free-form JSON metadata (optional)"
},
"parent_trace_id": {
"description": "Parent trace ID for nesting (e.g. tool_call -> file_reads)",
"type": [
"string",
"null"
]
},
"project_id": {
"description": "Project ID (optional, alternative to project_name)",
"type": [
"string",
"null"
]
},
"project_name": {
"description": "Project name (optional, used for auto-session resolution)",
"type": [
"string",
"null"
]
},
"session_id": {
"description": "Session ID (optional — auto-resolved from project if omitted)",
"type": [
"string",
"null"
]
},
"status": {
"description": "Status: started, completed, failed (default: completed)",
"type": [
"string",
"null"
]
},
"summary": {
"description": "Short description of the action",
"type": "string"
},
"task_id": {
"description": "Task ID to link this trace to (optional — auto-links session to task)",
"type": [
"string",
"null"
]
},
"trace_id": {
"description": "Logical trace group ID (auto-generated if omitted)",
"type": [
"string",
"null"
]
},
"trace_type": {
"description": "Trace type: tool_call, file_read, file_write, code_search, code_edit, api_call, thinking, error",
"type": "string"
}
},
"required": [
"trace_type",
"summary"
],
"type": "object"
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "LogTracesBatchParams"
}🟢mark_notification_read(mark_all, notification_id)
Mark a notification as read, or mark all notifications as read at once.
입력 스키마
{
"type": "object",
"properties": {
"mark_all": {
"description": "Set to true to mark ALL notifications as read",
"type": [
"boolean",
"null"
]
},
"notification_id": {
"description": "Notification ID to mark as read (omit to use mark_all)",
"type": [
"string",
"null"
]
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "MarkNotificationReadParams"
}⚪move_task_to_sprint(project_name, sprint_id, sprint_number, task_id)
Move a task to a different sprint. Specify the target sprint by number or ID.
입력 스키마
{
"type": "object",
"properties": {
"project_name": {
"description": "Project name (needed if using sprint_number)",
"type": [
"string",
"null"
]
},
"sprint_id": {
"description": "Target sprint ID (alternative to sprint_number)",
"type": [
"string",
"null"
]
},
"sprint_number": {
"description": "Target sprint number",
"format": "int32",
"type": [
"integer",
"null"
]
},
"task_id": {
"description": "Task ID to move",
"type": "string"
}
},
"required": [
"task_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "MoveTaskToSprintParams"
}🔴remove_task_dependency(depends_on_task_id, task_id)
Remove a dependency between tasks. This unblocks the task from the other task.
입력 스키마
{
"type": "object",
"properties": {
"depends_on_task_id": {
"description": "The task that was blocking it",
"type": "string"
},
"task_id": {
"description": "The task that was blocked",
"type": "string"
}
},
"required": [
"task_id",
"depends_on_task_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "RemoveTaskDependencyParams"
}🔴remove_team_member(team_id, team_name, user)
Remove a member from a team. Find the team by name or ID, and the user by name or email.
입력 스키마
{
"type": "object",
"properties": {
"team_id": {
"description": "Team ID (optional if team_name is provided)",
"type": [
"string",
"null"
]
},
"team_name": {
"description": "Team name (optional if team_id is provided)",
"type": [
"string",
"null"
]
},
"user": {
"description": "User name or email to remove",
"type": "string"
}
},
"required": [
"user"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "RemoveTeamMemberParams"
}🔴remove_user_from_org(user)
Remove a user from the current organization without deleting their account. Admin/owner only.
입력 스키마
{
"type": "object",
"properties": {
"user": {
"description": "User name or email to remove from the organization",
"type": "string"
}
},
"required": [
"user"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "RemoveUserFromOrgParams"
}🟢search_entities(entity_type, limit, query)
Search entities in the knowledge graph by name. Finds people, companies, documents, concepts, tools, etc. that have been mentioned in your activities.
입력 스키마
{
"type": "object",
"properties": {
"entity_type": {
"description": "Entity type filter: person, company, document, concept, tool, template, process",
"type": [
"string",
"null"
]
},
"limit": {
"description": "Maximum results (default 10)",
"format": "int32",
"type": [
"integer",
"null"
]
},
"query": {
"description": "Search query string (matches entity names)",
"type": "string"
}
},
"required": [
"query"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "SearchEntitiesParams"
}🟡set_context_routing(mode)
Set the context routing mode for the organization. Requires admin role. Options: 'keyword_llm' (balanced), 'keyword_only' (fastest), 'llm_only' (most accurate).
입력 스키마
{
"type": "object",
"properties": {
"mode": {
"description": "Routing mode: 'keyword_llm' (keyword + LLM fallback), 'keyword_only' (fastest), or 'llm_only' (most accurate)",
"type": "string"
}
},
"required": [
"mode"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "SetContextRoutingParams"
}🟡setup_organization(business_model, custom_context, description, links, objectives, ...)
Set up your organization in one step (admin only). Use this for onboarding.
입력 스키마
{
"type": "object",
"properties": {
"business_model": {
"description": "Business model description",
"type": "string"
},
"custom_context": {
"description": "Custom context for AI agents (optional)",
"type": [
"string",
"null"
]
},
"description": {
"description": "Organization description",
"type": "string"
},
"links": {
"description": "Links: [{\"label\": \"...\", \"url\": \"...\", \"type\": \"website|repository|documentation|slack|jira|notion|figma|other\"}]",
"items": {
"$ref": "#/$defs/SetupLink"
},
"type": [
"array",
"null"
]
},
"objectives": {
"description": "Organization objectives",
"items": {
"type": "string"
},
"type": "array"
},
"projects": {
"description": "Projects to create: [{\"name\": \"...\", \"description\": \"...\"}]",
"items": {
"$ref": "#/$defs/SetupProject"
},
"type": [
"array",
"null"
]
},
"teams": {
"description": "Teams to create: [{\"name\": \"...\", \"description\": \"...\"}]",
"items": {
"$ref": "#/$defs/SetupTeam"
},
"type": [
"array",
"null"
]
}
},
"required": [
"description",
"business_model",
"objectives"
],
"$defs": {
"SetupLink": {
"properties": {
"description": {
"type": [
"string",
"null"
]
},
"label": {
"type": "string"
},
"type": {
"description": "Link type: website, repository, documentation, slack, jira, notion, figma, other",
"type": "string"
},
"url": {
"type": "string"
}
},
"required": [
"label",
"url",
"type"
],
"type": "object"
},
"SetupProject": {
"properties": {
"description": {
"type": "string"
},
"name": {
"type": "string"
}
},
"required": [
"name",
"description"
],
"type": "object"
},
"SetupTeam": {
"properties": {
"description": {
"type": "string"
},
"name": {
"type": "string"
}
},
"required": [
"name",
"description"
],
"type": "object"
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "SetupOrganizationParams"
}⚪start_session(project_id, project_name, source, task_type)
Start a work session. If a project is provided (project_name or project_id), the session is bound to it; if neither is provided, an unbound (projectless) session is created — useful when the work isn't tied to a specific project. Reuses an existing active session for the same scope (per-project, or one global projectless session per user). Task type: coding, review, planning, debugging, research, meeting, other.
입력 스키마
{
"type": "object",
"properties": {
"project_id": {
"description": "Project ID to start the session in (optional if project_name provided)",
"type": [
"string",
"null"
]
},
"project_name": {
"description": "Project name (optional, alternative to project_id)",
"type": [
"string",
"null"
]
},
"source": {
"description": "Source client identifier (e.g. 'claude-code', 'claude-web', 'chatgpt', 'cursor'). Helps track which tool created the session.",
"type": [
"string",
"null"
]
},
"task_type": {
"description": "Type of task: coding, review, planning, debugging, research, meeting, other",
"type": "string"
}
},
"required": [
"task_type"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "StartSessionParams"
}🔴unassign_task(task_id, user_id)
Remove a user from a task's assignees.
입력 스키마
{
"type": "object",
"properties": {
"task_id": {
"description": "Task ID",
"type": "string"
},
"user_id": {
"description": "User ID to remove from assignees",
"type": "string"
}
},
"required": [
"task_id",
"user_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "UnassignTaskParams"
}🟢unlink_team_project(project_id, project_name, team_id, team_name)
Unlink a project from a team. Find both by name or ID.
입력 스키마
{
"type": "object",
"properties": {
"project_id": {
"description": "Project ID (optional if project_name is provided)",
"type": [
"string",
"null"
]
},
"project_name": {
"description": "Project name (optional if project_id is provided)",
"type": [
"string",
"null"
]
},
"team_id": {
"description": "Team ID (optional if team_name is provided)",
"type": [
"string",
"null"
]
},
"team_name": {
"description": "Team name (optional if team_id is provided)",
"type": [
"string",
"null"
]
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "LinkTeamProjectParams"
}🟡update_org(business_model, custom_context, description, links, name, ...)
Update your organization's details (owner only). Set name, description, business model, objectives, custom context for AI, or links.
입력 스키마
{
"type": "object",
"properties": {
"business_model": {
"description": "Business model description (optional)",
"type": [
"string",
"null"
]
},
"custom_context": {
"description": "Custom context for AI agents (optional)",
"type": [
"string",
"null"
]
},
"description": {
"description": "Organization description (optional)",
"type": [
"string",
"null"
]
},
"links": {
"description": "Links as JSON array: [{\"label\": \"...\", \"url\": \"...\", \"type\": \"...\"}] (optional)"
},
"name": {
"description": "Organization name (optional)",
"type": [
"string",
"null"
]
},
"objectives": {
"description": "Objectives as a list of strings (optional)",
"items": {
"type": "string"
},
"type": [
"array",
"null"
]
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "UpdateOrgParams"
}🟡update_position(new_description, new_permissions, new_title, position_id, position_title)
Update a position's title, description, or permissions (admin only). Find by title or ID.
입력 스키마
{
"type": "object",
"properties": {
"new_description": {
"description": "New description (optional)",
"type": [
"string",
"null"
]
},
"new_permissions": {
"description": "New permissions JSON object mapping permission keys to booleans, e.g. {\"can_view_all_projects\": true}. Use list_positions to see all available keys."
},
"new_title": {
"description": "New title (optional)",
"type": [
"string",
"null"
]
},
"position_id": {
"description": "Position ID (optional if position_title is provided)",
"type": [
"string",
"null"
]
},
"position_title": {
"description": "Position title to find (optional if position_id is provided)",
"type": [
"string",
"null"
]
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "UpdatePositionParams"
}🟡update_project(links, new_description, new_name, project_id, project_name)
Update a project's name, description, or links. Find by name or ID.
입력 스키마
{
"type": "object",
"properties": {
"links": {
"description": "Links as JSON array: [{\"label\": \"...\", \"url\": \"...\", \"type\": \"...\"}] (optional)"
},
"new_description": {
"description": "New description (optional)",
"type": [
"string",
"null"
]
},
"new_name": {
"description": "New name (optional)",
"type": [
"string",
"null"
]
},
"project_id": {
"description": "Project ID (optional if project_name is provided)",
"type": [
"string",
"null"
]
},
"project_name": {
"description": "Project name to find (optional if project_id is provided)",
"type": [
"string",
"null"
]
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "UpdateProjectParams"
}🟡update_task(description, due_at, priority, status, tags, ...)
Update a task's status, title, description, priority, or team assignment. Use this to move tasks through the workflow (todo -> in_progress -> done) or reassign to a team.
입력 스키마
{
"type": "object",
"properties": {
"description": {
"description": "New description",
"type": [
"string",
"null"
]
},
"due_at": {
"description": "Due date in ISO 8601 format (e.g. '2026-03-15T00:00:00Z'), or null to clear",
"type": [
"string",
"null"
]
},
"priority": {
"description": "New priority: low, medium, high, urgent",
"type": [
"string",
"null"
]
},
"status": {
"description": "New status: todo, in_progress, done, cancelled",
"type": [
"string",
"null"
]
},
"tags": {
"description": "New tags (replaces existing tags)",
"items": {
"type": "string"
},
"type": [
"array",
"null"
]
},
"task_id": {
"description": "Task ID to update",
"type": "string"
},
"team_id": {
"description": "Team ID to assign (optional)",
"type": [
"string",
"null"
]
},
"team_name": {
"description": "Team name to assign (optional, alternative to team_id)",
"type": [
"string",
"null"
]
},
"title": {
"description": "New title",
"type": [
"string",
"null"
]
}
},
"required": [
"task_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "UpdateTaskParams"
}🟡update_team(new_description, new_name, new_objectives, team_id, team_name)
Update a team's name, description, or objectives. Find by name or ID.
입력 스키마
{
"type": "object",
"properties": {
"new_description": {
"description": "New description (optional)",
"type": [
"string",
"null"
]
},
"new_name": {
"description": "New name (optional)",
"type": [
"string",
"null"
]
},
"new_objectives": {
"description": "New objectives (optional)",
"items": {
"type": "string"
},
"type": [
"array",
"null"
]
},
"team_id": {
"description": "Team ID (optional if team_name is provided)",
"type": [
"string",
"null"
]
},
"team_name": {
"description": "Team name to find (optional if team_id is provided)",
"type": [
"string",
"null"
]
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "UpdateTeamParams"
}🟡update_user(new_name, new_role, positions, skills, user)
Update an existing user's name, role, positions, or skills (admin/owner only).
입력 스키마
{
"type": "object",
"properties": {
"new_name": {
"description": "New name (optional)",
"type": [
"string",
"null"
]
},
"new_role": {
"description": "New role: member or admin (optional)",
"type": [
"string",
"null"
]
},
"positions": {
"description": "Position titles to assign (optional — replaces existing)",
"items": {
"type": "string"
},
"type": [
"array",
"null"
]
},
"skills": {
"description": "Skills list (optional — replaces existing)",
"items": {
"type": "string"
},
"type": [
"array",
"null"
]
},
"user": {
"description": "User name or email to find",
"type": "string"
}
},
"required": [
"user"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "UpdateUserParams"
}🟡upload_document(category, content, file_name, is_base64, mime_type, ...)
Upload a document to the organization's knowledge base. Documents can be templates, policies, contracts, procedures, guides, or references. They are indexed in the knowledge graph and automatically surfaced as context when relevant to a task. Supports both text and binary files: for binary files (PDFs, images, etc.), set is_base64=true and provide the content as a base64-encoded string, along with the appropriate mime_type (e.g. 'application/pdf', 'image/png'). Optionally set file_name for the original filename. Embeddings are generated automatically for search.
입력 스키마
{
"type": "object",
"properties": {
"category": {
"description": "Category: template, policy, procedure, reference, contract, guide, checklist, other",
"type": "string"
},
"content": {
"description": "Full document content (text/markdown)",
"type": "string"
},
"file_name": {
"description": "Original file name (e.g. 'contract.pdf'). Optional.",
"type": [
"string",
"null"
]
},
"is_base64": {
"description": "Set to true if content is base64-encoded (for binary files like PDFs, images)",
"type": [
"boolean",
"null"
]
},
"mime_type": {
"description": "MIME type of the content (default: text/plain). Use application/pdf, image/png, etc. for binary files.",
"type": [
"string",
"null"
]
},
"project_id": {
"description": "Project ID to associate with (optional, alternative to project_name)",
"type": [
"string",
"null"
]
},
"project_name": {
"description": "Project name to associate with (optional)",
"type": [
"string",
"null"
]
},
"tags": {
"description": "Tags for categorization and search (e.g. ['tax', 'contract', 'template'])",
"items": {
"type": "string"
},
"type": [
"array",
"null"
]
},
"team_ids": {
"description": "Team IDs to associate with (optional, alternative to team_names)",
"items": {
"type": "string"
},
"type": [
"array",
"null"
]
},
"team_names": {
"description": "Team names to associate the document with (optional, for team-level access control)",
"items": {
"type": "string"
},
"type": [
"array",
"null"
]
},
"title": {
"description": "Document title",
"type": "string"
}
},
"required": [
"title",
"category",
"content"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "UploadDocumentParams"
}🟢whoami
Get your profile, organization, projects, recent sessions, and top entities. This is the best starting point — call this first to understand what's available. No parameters needed.
입력 스키마
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "EmptyParams"
}커뮤니티
증거