Agent Workspace Practice

Search + patterns, maturity assessment, context pricing, redaction checks - a practice as tools.

사용해야 할까요

품질 및 안전성

A
설명 품질
100%
스키마 완전성
100%
이름 품질
90%
오염 위험
80%
권한 일치
100%
프로토콜 준수
100%

발견 사항 (2)

  • HIGHTool poisoning patterns detected
  • MEDIUMTool description contains URL to non-standard domainassess_workspace에서

도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.

컨텍스트 비용

~1,269토큰 (도구 정의)
~1.2 KB일반적인 응답 크기
중간 정도의 주의 영향 (128k 컨텍스트의 0.99%)

이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.

설치

원클릭 설치

`claude_desktop_config.json` 파일에 다음을 추가하세요:

{
  "mcpServers": {
    "agent-workspace-practice": {
      "url": "https://jamesross.ai/mcp"
    }
  }
}

원격 엔드포인트

https://jamesross.ai/mcpstreamable-http

할 수 있는 일

도구 목록

도구 (6)

🟢 읽기 전용🟡 쓰기🔴 삭제⚪ 알 수 없음
🟢search_architecture(query, limit)

Full-text search across the published architecture corpus: the 18 patterns and how they compose, the evaluation method, the seven learn-track modules, and the teardowns of other people's published agent systems. Returns ranked sections, each with its title, its source file, a snippet, and a link to the full text on GitHub. Use it when you want the passage itself rather than a pattern summary; lookup_pattern is the narrower tool that answers "which pattern covers this?". Every section is also readable in full as a resource under the architecture:// scheme (resources/list, resources/read).

입력 스키마

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "Search terms, e.g. \"canonical copy\", \"silent failure\", \"cache write cost\". Terms shorter than 3 characters are ignored.",
      "minLength": 1,
      "maxLength": 200
    },
    "limit": {
      "type": "integer",
      "description": "How many sections to return. 1-10, default 5.",
      "minimum": 1,
      "maximum": 10,
      "default": 5
    }
  },
  "required": [
    "query"
  ],
  "additionalProperties": false
}
🟢lookup_pattern(query)

Search the 18 architecture patterns behind this practice by keyword or by pattern number. Returns up to 3 matches, each with its number, title, the problem it opens on, and a link to the full text. Use it when you want the reasoning behind an agent-workspace design decision rather than a how-to.

입력 스키마

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "Keywords to match against pattern titles and summaries, e.g. \"credentials\", \"silent failure\", \"context cost\". A bare number 1-18 looks that pattern up directly."
    }
  },
  "required": [
    "query"
  ],
  "additionalProperties": false
}
🟢assess_workspace(variant, answers)

Score an agent workspace across six dimensions: canonical knowledge, memory and context economics, verification and oversight, safety and permissions, telemetry and cost, provenance and delegation. Two variants: "practitioner" takes 18 answers (a single operator's workspace), "org" takes 12 (an organisation's agent readiness). Each answer is an integer 0-3 in question order, where 0 is the least mature option offered and 3 the most. Returns per-dimension scores, an overall percentage, a maturity band, and the two weakest dimensions with the gap that matters there. The question text lives at https://jamesross.ai/tools/maturity-check (practitioner) and https://jamesross.ai/tools/agent-readiness (org). Read it before answering on someone's behalf.

입력 스키마

{
  "type": "object",
  "properties": {
    "variant": {
      "type": "string",
      "enum": [
        "practitioner",
        "org"
      ],
      "description": "\"practitioner\" for the 18-question workspace check, \"org\" for the 12-question organisational readiness check."
    },
    "answers": {
      "type": "array",
      "items": {
        "type": "integer",
        "minimum": 0,
        "maximum": 3
      },
      "description": "Answers in question order: 18 integers for \"practitioner\", 12 for \"org\". Each is 0-3."
    }
  },
  "required": [
    "variant",
    "answers"
  ],
  "additionalProperties": false
}
🟢price_context_read(size_tokens, entry_turn, total_turns, read_mult, write_mult, ...)

Price a block of context by where it enters a session. The API is stateless, so the whole transcript is re-sent on every inference step, and a token costs its size times the number of turns left after it arrives. Returns the carried token volume, the cost of the block in USD, what the same read would have cost entering 20 turns from the end, and the multiplier between the two. Use it to decide whether a large read should move later in a session or into a subagent.

입력 스키마

{
  "type": "object",
  "properties": {
    "size_tokens": {
      "type": "number",
      "description": "Size of the block in tokens (S).",
      "minimum": 0
    },
    "entry_turn": {
      "type": "number",
      "description": "Turn number at which the block enters the context (t).",
      "minimum": 0
    },
    "total_turns": {
      "type": "number",
      "description": "Total turns in the session (T). Must be at least entry_turn.",
      "minimum": 0
    },
    "read_mult": {
      "type": "number",
      "description": "Cache-read price multiplier against input price. Default 0.1.",
      "default": 0.1,
      "minimum": 0
    },
    "write_mult": {
      "type": "number",
      "description": "Cache-write price multiplier against input price. Default 1.25.",
      "default": 1.25,
      "minimum": 0
    },
    "price_in_per_mtok": {
      "type": "number",
      "description": "Input price in USD per million tokens. Default 5.",
      "default": 5,
      "minimum": 0
    }
  },
  "required": [
    "size_tokens",
    "entry_turn",
    "total_turns"
  ],
  "additionalProperties": false
}
🟡check_redaction(text)

Scan text for the shapes of private content before it goes anywhere public: email addresses, absolute home paths, credential and token prefixes, private and link-local IPs, .local hostnames, and secret filenames. Returns a count per pattern class and a total, nothing else. The text you send and the substrings that matched are never stored, never logged and never echoed back. Only the counts are kept. A line carrying the marker "redaction-ok" is skipped. Accepts up to 100KB.

입력 스키마

{
  "type": "object",
  "properties": {
    "text": {
      "type": "string",
      "description": "The text to scan. Up to 100KB; anything beyond that is truncated and the result says so."
    }
  },
  "required": [
    "text"
  ],
  "additionalProperties": false
}
🟢request_capability(description, context)

Tell this server what capability you needed but didn't find here. Requests are logged and reviewed by a human; include no secrets or personal data.

입력 스키마

{
  "type": "object",
  "properties": {
    "description": {
      "type": "string",
      "description": "What you needed. Up to 2KB."
    },
    "context": {
      "type": "string",
      "description": "Optional: what you were trying to do, and why the existing tools did not cover it. Up to 1KB."
    }
  },
  "required": [
    "description"
  ],
  "additionalProperties": false
}

커뮤니티

이 서버 평가하기

증거

최근 관측

검증됨버전이 기록되지 않음도구 6개
검증됨버전이 기록되지 않음도구 6개
검증됨버전이 기록되지 않음도구 6개