5cfb8a1이 .gitignore에 docs/를 넣고 68개 파일을 지웠다. 그런데
AgentBuilderContractExampleTest, ToolBundleContractExampleTest,
ArchitectureDocumentContractTest는 docs/ 아래 계약 예제와 architecture
문서를 입력으로 직접 읽는다. 그 결과 clean clone에서 테스트 10건이
입력을 찾지 못해 실패했다.
제외 범위를 원래 의도대로 좁힌다. 에이전트 산출물(AGENTS.md, .agents/,
.codex/, docs/superpowers/)은 계속 제외하고 저장소 문서는 추적한다.
문서는 삭제 직전 상태(3de052a)를 기준으로 복원하고, 그 위에 main 코드와
대조해 어긋난 부분을 고쳤다.
- ADR-0007을 Superseded로 바꾸고 ADR-0013을 새로 쓴다. route당 Tool
Service N개가 최종안이며, PortalToolRegistryClient가 이미 route별로
N개를 유지하고 있는데 ADR-0007은 "bundles는 항상 한 항목"을 Accepted
상태로 주장하고 있었다. ADR-0009 결정 4도 부분 대체한다.
- ADR-0008 파일 헤더가 Accepted였으나 ADR-0009가 이미 대체한 상태였다.
- 6078852의 endpoint 소유권 반전이 반영되지 않은 서술을 계약 v0.2,
bundle 설정 예제, Tool 적재 안내에서 고친다.
- Portal registry 계약 v0.1과 route key 규약을 새로 문서화한다. 둘 다
구현은 있는데 계약 문서가 없었다.
- MCP SDK 2.0.0 SBOM을 추가한다.
번호 주석: ADR-0011과 0012는 feature/mcp-integration이 Tool inputSchema
정책에 쓰고 있어 비워 둔다.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
3.9 KiB
3.9 KiB
관찰 로그 05 - langconnect / list_collections
- 출처:
MCP_툴_호출_통신_로그_(JSON-RPC) (1).pdf - 원본 생성 시각: 2026-07-13 17:10:33 UTC
- 성격: Agent Builder 솔루션에서 수행한 관찰용 실행 로그. 본 문서는 구현 계약이나 테스트 fixture가 아니다.
헤더 및 실행 메타데이터
| 항목 | 원본 기록 값 |
|---|---|
| transport type | mcp-http |
| request_id | ac3d3c06-882e-4416-be34-a20c5f91662f |
| tool_uid | 636e8cd0-3114-467f-b305-14e2c9cda744 |
| Tool version | 1.0 |
| 실행 시각 | 2026-07-13 17:08:46 UTC |
| 결과 | ok · 346ms · truncated=False |
| JSON-RPC 프레임 수 | 5 |
| lifecycle | initialize → notifications/initialized → tools/call |
HTTP 헤더 기록 범위
원본 PDF에는 개별 HTTP request/response header 값이 기록되어 있지 않다. 원본 표의 request_id, tool_uid, version은 실행 메타데이터이며 HTTP header라고 단정하지 않는다.
원본 공통 안내에는 시크릿 및 인증 header가 로깅 전에 [REDACTED]로 마스킹되었다고 명시되어 있다. 따라서 Authorization, Mcp-Session-Id 등 실제 HTTP header 값은 이 문서에 포함하지 않는다.
JSON-RPC 통신 전문
아래는 원본 PDF의 JSON-RPC 프레임을 순서대로 옮긴 전사본이다. 긴 result.content[].text 문자열은 PDF의 시각적 줄바꿈을 보존했으므로, 이 블록 전체를 기계 실행용 단일 JSON payload로 사용하지 않는다.
17:08:46 요청 → initialize
{
"jsonrpc": "2.0",
"id": 1,
"method": "initialize",
"params": {
"protocolVersion": "2025-06-18",
"capabilities": {},
"clientInfo": {
"name": "toolbox-executor",
"version": "0.1.0"
}
}
}
17:08:46 ← 응답 initialize
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"protocolVersion": "2025-06-18",
"capabilities": {
"experimental": {},
"logging": {},
"prompts": {
"listChanged": true
},
"resources": {
"subscribe": false,
"listChanged": true
},
"tools": {
"listChanged": true
},
"extensions": {
"io.modelcontextprotocol/ui": {}
}
},
"serverInfo": {
"name": "langconnect-rag-mcp",
"version": "3.3.1"
},
"instructions": "This server provides RAG tools over document collections. Call list_collections
() first: it returns collections you can access plus per-collection role and allowed_tools (derived f
rom RBAC scopes). Use search_documents/search_documents_batch/search_documents_with_context for retri
eval. Use list_documents to inspect documents. Use add_document_text to add text. Use delete_documen
t/delete_collection only when allowed_tools includes them. Call get_user_info() to get the current us
er's email and display name."
}
}
17:08:46 요청 → notifications/initialized
{
"jsonrpc": "2.0",
"method": "notifications/initialized"
}
17:08:46 요청 → tools/call
{
"jsonrpc": "2.0",
"id": 3,
"method": "tools/call",
"params": {
"name": "list_collections",
"arguments": {}
}
}
17:08:47 ← 응답 tools/call
{
"jsonrpc": "2.0",
"id": 3,
"result": {
"content": [
{
"type": "text",
"text": "{\"data\":[{\"name\":\"test\",\"id\":\"1caf198a-444b-4a89-a235-23e82bc3d68a\",\"meta
data\":{\"description\":\"col\"},\"role\":0,\"allowed_tools\":[\"add_document_text\",\"delete_collect
ion\",\"delete_document\",\"list_documents\",\"search_documents\",\"search_documents_batch\",\"search
_documents_with_context\"],\"document_count\":2,\"chunk_count\":119}],\"success\":true,\"error\":nul
l,\"request_id\":\"b3fa0787-dce3-449b-aff0-51a8d882e81d\"}"
}
],
"structuredContent": {
"data": [
{
"name": "test",
"id": "1caf198a-444b-4a89-a235-23e82bc3d68a",
"metadata": {
"description": "col"
},
"role": 0,
"allowed_tools": [
"add_document_text",
"delete_collection",
"delete_document",
"list_documents",
"search_documents",
"search_documents_batch",
"search_documents_with_context"
],
"document_count": 2,
"chunk_count": 119
}
],
"success": true,
"error": null,
"request_id": "b3fa0787-dce3-449b-aff0-51a8d882e81d"
},
"isError": false
}
}