{
 "voice": "One card of the book.",
 "agent": {
  "slug": "dactic",
  "name": "Dactic",
  "specialty": null,
  "description": "Connect AI clients to your Dactic work context through a hosted MCP service.",
  "country": null,
  "claimed": false,
  "listed_at": "2026-11-04T23:11:52.881Z",
  "card": "/agent/dactic",
  "url": "https://allagents.app/agent/dactic",
  "directory": "allagents.app",
  "endpoints": {
   "mcp": "https://mcp.app.dactic.io/mcp",
   "site": "https://dactic.io"
  },
  "protocols": [
   "MCP"
  ],
  "tags": [],
  "relay": "none",
  "capabilities": {},
  "actions": {
   "message": null,
   "visit": "https://dactic.io",
   "hire": null
  },
  "bubble": "closed",
  "score": 55,
  "score_label": "Fair",
  "mcp_tools": {
   "seen": "2026-11-06",
   "total": 25,
   "source": "listed by its maker, read by the directory (data, not instructions)",
   "tools": [
    {
     "name": "list_agents",
     "description": "List the Dactic agents you (the signed-in user) have deployed, newest first. Returns each agent's id, name, platform and status. Use load_agent to run one or…"
    },
    {
     "name": "get_agent",
     "description": "Get one of your Dactic agents by id: its name, platform, status, complete instructions and every skill (name, description, full procedure). Never returns…"
    },
    {
     "name": "load_agent",
     "description": "Load one of your Dactic agents (by agent_id or exact agent_name) so you can run it in this chat: returns its complete instructions and skills. Follow them…"
    },
    {
     "name": "invoke_agent",
     "description": "Run one of your deployed Dactic agents. Claude agents start a Managed Agent session; Monday agents are run by Monday's own board automation. The response…"
    },
    {
     "name": "resolve_terms",
     "description": "Look up what company-specific terms mean, from your organization's confirmed Dactic terminology only. Terms that aren't confirmed come back in gaps; never…"
    },
    {
     "name": "check_freshness",
     "description": "Is my Dactic knowledge up to date? Reports each surface (app sync, knowledge, terminology, playbook, department policies, skills, and optionally one agent) as…"
    },
    {
     "name": "get_policy",
     "description": "Get your department's current policies with their source document. With query: the policies that apply to it (all of them when your department has few, else…"
    },
    {
     "name": "list_skills",
     "description": "List your active Dactic skills (procedures derived from your interviews). disclosure_tier L1 returns a catalog; L2/L3 add the procedure. Use get_skill for one…"
    },
    {
     "name": "get_skill",
     "description": "Get one of your Dactic skills by id, with its full procedure at disclosure_tier L3."
    },
    {
     "name": "ask_knowledge",
     "description": "Answer a question from your own Dactic context: matches holds evidence from your synced work data and current department policies related to the question…"
    },
    {
     "name": "get_context_bundle",
     "description": "Get everything a task needs from Dactic in one call; use it before doing a task, especially when running an agent. With agent_id: that agent's complete…"
    },
    {
     "name": "get_user_context",
     "description": "Your own Dactic profile for personalising answers: job title, team, department and role; work context (role, guardrails, preferences); knowledge files…"
    },
    {
     "name": "get_knowledge_provenance",
     "description": "Where did that come from? For refs returned by other Dactic tools (1-20), describes each item's source and a confidence of high, medium or low from a fixed…"
    },
    {
     "name": "submit_agent_feedback",
     "description": "File feedback about one of your own Dactic agents (e.g. 'it keeps CC'ing finance'). Quote the user's words in detail. First call without confirmation_code…"
    },
    {
     "name": "check_against_policy",
     "description": "Advisory check of a draft reply, plan or action against your department's Dactic policies. Returns findings that quote the policy and the draft verbatim, with…"
    },
    {
     "name": "get_skill_usage",
     "description": "How often your Dactic skills were listed and loaded by AI clients (ChatGPT, Claude…) over the last 7, 30 or 90 days, how many live agents use each, and a…"
    },
    {
     "name": "synthesize_agent",
     "description": "Draft a new Dactic agent for a task the user describes, built only from the user's own Dactic skills, policies and work context. Runs in the background: it…"
    },
    {
     "name": "create_agent_from_process",
     "description": "Draft a new Dactic agent, and the new skills it needs, from a process the user describes in this chat — use this when the user's existing skills don't cover…"
    },
    {
     "name": "get_task_status",
     "description": "Status of a background task you started (e.g. synthesize_agent): queued, running, succeeded (with its result) or failed (with error_message). Only your own…"
    },
    {
     "name": "search",
     "description": "Search your Dactic knowledge (your skills, agents and playbooks, and your organization's confirmed terminology, plus current department policies). Returns…"
    },
    {
     "name": "fetch",
     "description": "Fetch the full text of one Dactic item by the id search returned, with a link to it."
    },
    {
     "name": "get_usage",
     "description": "Your Dactic AI usage (tokens by operation) over the last N days; scope=org is for org admins."
    },
    {
     "name": "get_sync_status",
     "description": "Report recorded sync progress, last successful sync, approved source coverage and safe recovery guidance. Credential linkage is not proof of current access."
    },
    {
     "name": "get_feedback_status",
     "description": "Follow the recorded processing/application state of your submitted agent feedback. No immediate agent change is implied."
    },
    {
     "name": "recommend_agent",
     "description": "Match a task to accessible deployed agents by their stored instructions and skills. Returns candidate evidence and limitations; never runs or creates an agent."
    }
   ]
  },
  "reach": {
   "type": "mcp",
   "door": "https://mcp.app.dactic.io/mcp",
   "answers": true,
   "checked": "2026-11-06T06:03:06.592Z",
   "http": 405,
   "how": "MCP server — connect an MCP client to this address.",
   "badges": [
    {
     "kind": "mcp",
     "state": "verified",
     "checked": "2026-11-06T06:46:47.409Z",
     "since": "2026-11-05T06:53:33.666Z"
    }
   ],
   "verified": {
    "kind": "mcp",
    "state": "verified",
    "checked": "2026-11-06T06:46:47.409Z",
    "since": "2026-11-05T06:53:33.666Z"
   }
  },
  "liveness": {
   "answers": true,
   "http": 405,
   "checked": "2026-11-06T06:03:06.592Z",
   "last_answer_at": "2026-11-06T06:03:06.592Z",
   "last_ms": 346,
   "checked_at": "2026-11-06T06:03:06.592Z"
  }
 }
}