Salesforce AgentForce CKG
Salesforce AgentForce knowledge graph — 40 nodes, Einstein Trust Layer, 11x fewer tokens than RAG.
사용해야 할까요
품질 및 안전성
도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.
컨텍스트 비용
이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.
설치
원클릭 설치
`claude_desktop_config.json` 파일에 다음을 추가하세요:
{
"mcpServers": {
"ckg-agentforce": {
"command": "uvx",
"args": [
"ckg-agentforce"
]
}
}
}실행 가능한 패키지
0.10.3stdio원격 엔드포인트
https://ckg-agentforce.onrender.com/mcpstreamable-http할 수 있는 일
도구 목록
도구 (10)
🟢list_concepts
List all 40 AgentForce concepts in this knowledge graph.
입력 스키마
{
"type": "object",
"properties": {},
"title": "list_conceptsArguments"
}출력 스키마
{
"type": "object",
"properties": {
"result": {
"title": "Result",
"type": "string"
}
},
"required": [
"result"
],
"title": "list_conceptsOutput"
}🟢search_concepts(query)
Find AgentForce concepts by keyword. Args: query: Search term — e.g. 'resolution', 'trust', 'grounding', 'action', 'NIM'.
입력 스키마
{
"type": "object",
"properties": {
"query": {
"title": "Query",
"type": "string"
}
},
"required": [
"query"
],
"title": "search_conceptsArguments"
}출력 스키마
{
"type": "object",
"properties": {
"result": {
"title": "Result",
"type": "string"
}
},
"required": [
"result"
],
"title": "search_conceptsOutput"
}🟢query_ckg(concept, depth)
Traverse the AgentForce knowledge graph from any concept. Returns prerequisites (what this concept needs) and dependents (what it enables). Every relationship traces to an authoritative Salesforce doc URL. Args: concept: Concept name — e.g. 'Autonomous Resolution', 'Einstein Trust Layer', 'Service Agent', 'Grounding', 'NVIDIA NIM'. depth: Traversal depth 1–5 (default 3).
입력 스키마
{
"type": "object",
"properties": {
"concept": {
"title": "Concept",
"type": "string"
},
"depth": {
"default": 3,
"title": "Depth",
"type": "integer"
}
},
"required": [
"concept"
],
"title": "query_ckgArguments"
}출력 스키마
{
"type": "object",
"properties": {
"result": {
"title": "Result",
"type": "string"
}
},
"required": [
"result"
],
"title": "query_ckgOutput"
}🟢get_prerequisites(concept)
Return the full ordered prerequisite chain for an AgentForce concept. Shows everything the concept depends on — the complete upstream path. Args: concept: Target concept — e.g. 'Autonomous Resolution', 'Multi-LoRA Serving', 'Custom Actions', 'Semantic Retrieval'.
입력 스키마
{
"type": "object",
"properties": {
"concept": {
"title": "Concept",
"type": "string"
}
},
"required": [
"concept"
],
"title": "get_prerequisitesArguments"
}출력 스키마
{
"type": "object",
"properties": {
"result": {
"title": "Result",
"type": "string"
}
},
"required": [
"result"
],
"title": "get_prerequisitesOutput"
}⚪resolution_path
Trace the exact path that determines an AgentForce autonomous resolution event. This is the $2/resolution billing path — what the agent must traverse correctly to resolve autonomously without human handoff.
입력 스키마
{
"type": "object",
"properties": {},
"title": "resolution_pathArguments"
}출력 스키마
{
"type": "object",
"properties": {
"result": {
"title": "Result",
"type": "string"
}
},
"required": [
"result"
],
"title": "resolution_pathOutput"
}🟢route_query(question)
Route an AgentForce question to the optimal model and reasoning approach via graph depth. The CKG graph IS the router. AgentForce dependency chains (e.g. Einstein Trust Layer → Data Cloud → NVIDIA NIM → Resolution Criteria) have typed hops that signal reasoning complexity deterministically. No heuristic: the graph decides. Routing table: hop_depth 1 → haiku · direct (simple concept lookup) hop_depth 2 → sonnet · generic_cot (moderate chain) hop_depth 3+ → opus · sparql_cot (deep dependency, structured reasoning) Args: question: Concept name or natural language question about Salesforce AgentForce. Returns: model_tier + reasoning_approach + why + context subgraph to inject before LLM call.
입력 스키마
{
"type": "object",
"properties": {
"question": {
"title": "Question",
"type": "string"
}
},
"required": [
"question"
],
"title": "route_queryArguments"
}출력 스키마
{
"type": "object",
"properties": {
"result": {
"title": "Result",
"type": "string"
}
},
"required": [
"result"
],
"title": "route_queryOutput"
}⚪verify_source(concept, receipt)
Return the source URL and content hash for an AgentForce concept node. Audit chain: edge answer → graph commit → source_hash → source_url (fetch hint) Verification: curl -s <source_url> | sha256sum # compare output to source_hash Args: concept: Concept label (partial match supported). receipt: If True, also return a signed BoundaryAttest receipt envelope (experimental-interop-v0.1) binding concept_label + source_url + source_hash + timestamp to this server's ed25519 session key.
입력 스키마
{
"type": "object",
"properties": {
"concept": {
"title": "Concept",
"type": "string"
},
"receipt": {
"default": false,
"title": "Receipt",
"type": "boolean"
}
},
"required": [
"concept"
],
"title": "verify_sourceArguments"
}출력 스키마
{
"type": "object",
"properties": {
"result": {
"title": "Result",
"type": "string"
}
},
"required": [
"result"
],
"title": "verify_sourceOutput"
}⚪export_benchmark_receipt
Generate a signed BoundaryAttest receipt for the agentforce CKG benchmark result. Produces a `ckg.benchmark_result.exported` claim signed with this server's Ed25519 session key. Any party holding the public key can verify the signature over the canonical JSON claim. Implements GuardrailDecisionV1 · experimental-interop-v0.1. Result: F1 0.471 over 30 queries · ckg-benchmark v0.6.2 · 4× over RAG baseline (0.123).
입력 스키마
{
"type": "object",
"properties": {},
"title": "export_benchmark_receiptArguments"
}출력 스키마
{
"type": "object",
"properties": {
"result": {
"title": "Result",
"type": "string"
}
},
"required": [
"result"
],
"title": "export_benchmark_receiptOutput"
}⚪evaluate_trust_chain
Return a machine-readable JSON trust chain + ROI analysis + payment recommendation. Designed for autonomous agent consumption. The agent reads the JSON, evaluates the ROI gate, selects the cheapest positive-ROI payment option, and purchases autonomously if budget is pre-authorized. Trust chain closes the audit gap that RAG cannot: source_hashes → SHA-256 of source docs (what was known at extraction time) graph_hash → SHA-256 of the installed graph file (what is declared now) signer_key_id → Ed25519 public key fingerprint (who is attesting) benchmark_receipt → BoundaryAttest-signed F1 claim (cryptographic performance proof) scitt_status → SCITT ledger submission status (public audit anchor) ROI gate: if total_value_per_call_usd > payment_option.price_per_call_usd → autonomous_pay = true. Returns: JSON string (schema: ckg-trust-chain-v1).
입력 스키마
{
"type": "object",
"properties": {},
"title": "evaluate_trust_chainArguments"
}출력 스키마
{
"type": "object",
"properties": {
"result": {
"title": "Result",
"type": "string"
}
},
"required": [
"result"
],
"title": "evaluate_trust_chainOutput"
}🟡query_intersect(branches, depth, direction, mode, limit)
Answer a conjunctive query: concepts reachable from EVERY anchor at once (A AND B). query_ckg walks outward from one concept. This intersects the reachable sets of two or more, which is the shape of most real questions — "the component that satisfies A AND applies to B". Neither anchor alone answers it; the answer lives in the overlap. Every branch is an exact set of declared edges, so the intersection is exact. A concept appears only if a declared path reaches it from each anchor. A relation missing from the graph produces an empty result, never a guess. Args: branches: Two or more branches. Either a bare anchor ("TensorRT-LLM"), which takes everything within `depth` hops, or an anchor plus an explicit relation path using '>' ("TensorRT-LLM > REQUIRES > ENABLES"), where each relation replaces the frontier. '*' matches any relation. Mix both forms freely. depth: Hops for bare-anchor branches, 1-5 (default 2). Ignored for explicit paths. direction: 'out' follows dependencies, 'in' follows them backwards, 'both' (default). mode: 'AND' (default) intersects branches; 'OR' unions them. limit: Max concepts listed, 1-200 (default 40). The true count is always shown. Returns: Markdown with the query plan and its per-step set sizes, then the answer set with taxonomy tags. Reports which branch was empty when the intersection is empty.
입력 스키마
{
"type": "object",
"properties": {
"branches": {
"items": {
"type": "string"
},
"title": "Branches",
"type": "array"
},
"depth": {
"default": 2,
"title": "Depth",
"type": "integer"
},
"direction": {
"default": "both",
"title": "Direction",
"type": "string"
},
"mode": {
"default": "AND",
"title": "Mode",
"type": "string"
},
"limit": {
"default": 40,
"title": "Limit",
"type": "integer"
}
},
"required": [
"branches"
],
"title": "query_intersectArguments"
}출력 스키마
{
"type": "object",
"properties": {
"result": {
"title": "Result",
"type": "string"
}
},
"required": [
"result"
],
"title": "query_intersectOutput"
}커뮤니티
증거