Deep Impact Mapper
The Deep Impact Mapper server structures internal business documents (emails, meeting requests, agendas, materials) into graphs, tracks changes, and analyzes their impact. Key capabilities include:
Extract Content Graph: Parse unstructured text into a structured graph of typed content nodes and edges, each with confidence scores and source references.
Update Content Node: Modify a node's text/type (e.g., change a meeting time or participant list) and optionally mark it as verified. Returns a diff summary and changed node IDs.
Analyze Impact: Trace the ripple effects of an edit through the dependency graph, returning affected nodes, impact explanations, and risk levels.
Merge Content Graphs: Integrate multiple document graphs by resolving duplicate entities.
Detect Conflicts: Find contradictions and superseding relationships between information.
Assess Freshness: Determine if information is fresh, stale, or unverified.
Record Feedback: Apply user approval, correction, or rejection to node lifecycle.
Save/Load/List Graphs: Persist and retrieve graphs by ID for later use.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Deep Impact MapperAnalyze impact of changing meeting start time to 16:00"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Deep Impact Mapper (DIM)
社内文書・メールの「業務文脈を整理する頭脳」 — 編集波及の特定に加え、複数文書の名寄せ・矛盾検出・鮮度判定・フィードバック反映を提供する MCP サーバー(Azure MCP SaaS 対応)
Legal Impact Mapper (LIM) の派生版。法律文書の代わりに、社内メール・会議依頼・アジェンダ・資料を対象にします。
概要
このツールがやること:
メール・会議依頼・アジェンダ・資料をノードとエッジのグラフに構造化
1箇所の編集を検出し、依存グラフを辿って影響範囲を自動伝播
複数文書の同一人物・案件を名寄せして統合(
merge_content_graphs)情報同士の矛盾・新旧関係を検出(
detect_conflicts)「この情報はもう古くないか」を判定(
assess_freshness)本人の承認・修正・否認をノードのライフサイクルに反映(
record_feedback)
代表例:
開始時刻 14:00 → 16:00 に変更
→ 参加メンバーが変わる
→ アジェンダの進行が変わる
→ 資料(Q2実績スライド)の内容修正が必要メール(7/1: 期限は水曜) + アジェンダ(7/8: 期限は金曜)
→ 名寄せで「同一案件の期限」と特定
→ 新旧関係を確定(金曜が最新、水曜は stale)
→ 古い記載箇所のみが編集対象にこのツールがやらないこと:
文書の自動生成・自動修正
要約
ポリシー判断・法的助言
Related MCP server: ASR Graph of Thoughts (GoT) MCP Server
インストール
git clone https://github.com/HiroakiKatoh/DeepImpactMapper.git
cd DeepImpactMapper
npm install
npm run build設定
環境変数
主要なもののみ。全一覧は .env.example を参照。
変数名 | 必須 | 説明 |
| Yes* | Anthropic API キー( |
| No |
|
| No | 使用モデル(デフォルト: |
| No |
|
| No |
|
Cursor での設定(ローカル stdio)
.cursor/mcp.json:
{
"mcpServers": {
"deep-impact-mapper": {
"command": "node",
"args": ["path/to/Deep_Impact_Mapper/dist/server.js"],
"env": {
"ANTHROPIC_API_KEY": "sk-ant-xxxxx"
}
}
}
}リモート接続(Streamable HTTP / SaaS モード)
npm run start:http # http://localhost:3000/mcp{
"mcpServers": {
"deep-impact-mapper": {
"url": "https://<host>/mcp",
"headers": { "Authorization": "Bearer <APIキー>" }
}
}
}Azure へのデプロイ(Container Apps + Cosmos DB)は infra/README.md を参照。
提供ツール
ツール | 説明 | LLM使用 |
| テキストを ContentGraph に構造化(判断経緯・観測日時・根拠付き) | あり |
| ノードの内容を変更 | なし |
| 変更の影響範囲を分析 | あり |
| 複数文書のグラフを名寄せ統合 | あり |
| 矛盾・新旧関係を検出(supersedes エッジ自動追記) | あり(無効化可) |
| 情報の鮮度(fresh/stale/unverified)を判定 | なし |
| 本人の承認/修正/否認を status に反映 | なし |
| グラフの永続化と | なし |
使い方の流れ
単一文書の編集波及:
extract_content_graph → update_content_node → analyze_impact
複数文書の文脈整理(難所B):
extract_content_graph ×N → merge_content_graphs → detect_conflicts
→ assess_freshness → record_feedback開発
npm install
npm run build
npm test # 単体・統合テスト
npm run eval # golden set 10件の評価ハーネス(スタブモードで無料実行可)
npm run devLIM との関係
DIM は Legal Impact Mapper をベースに、社内コミュニケーション向けにドメインモデルとプロンプトを差し替えた派生版です。詳細は MEMO.md を参照。
ライセンス
ISC
Available Tools
3 toolsanalyze_impactAnalyze ImpactA
【いつ使う】update_content_nodeで変更したノードの影響範囲を確定するとき。 【入力】graph: 更新済みContentGraph / changed_node_ids 【出力】{ changed_node_ids, affected_node_ids, directly_affected, indirectly_affected, explanations, risk_level, warning? } 【注意】affected_node_ids: []の場合は編集作業は不要。編集対象は changed_node_ids + affected_node_ids に対応する原文箇所のみ。
| Name | Required | Description | Default |
|---|---|---|---|
| graph | Yes | 現在のContentGraph | |
| changed_node_ids | Yes | 変更されたノードのIDリスト |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description fully covers behavioral context. It describes the output fields including risk_level and warning, and a critical note about empty affected_node_ids meaning no editing needed. It does not mention auth or side effects, but as an analysis tool, it likely has no destructive behavior. The description adds significant value beyond the schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is highly structured with clear sections for usage, inputs, outputs, and notes. It is concise (5 lines) with no redundant information, making it easy for an AI agent to parse and understand quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity with nested input objects and no output schema, the description provides complete context: when to use, exact input expectations, full output structure, and a critical behavioral note. No gaps remain for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description adds meaning by labeling graph as '更新済みContentGraph' (updated ContentGraph) and describing the output structure that clarifies what the parameters lead to. This goes beyond the schema's basic descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description starts with a clear usage context: 'update_content_nodeで変更したノードの影響範囲を確定するとき', which precisely states that this tool is used after update_content_node to determine the impact range. This distinguishes it from siblings extract_content_graph and update_content_node, as it focuses on impact analysis after changes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly states when to use: after update_content_node. It also includes a note about when editing is unnecessary (if affected_node_ids is empty), providing practical guidance. However, it does not explicitly mention when not to use or alternative tools, though siblings are clearly different in purpose.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
extract_content_graphExtract Content GraphA
【いつ使う】社内メール・会議依頼・アジェンダ・資料のテキストを初めてグラフ化するときのみ呼ぶ。同一文書群に対して2回目以降は不要(内部でLLMを呼ぶため高コスト)。 【入力】text: メール本文、会議依頼、アジェンダ、資料の記述(最大50,000文字) 【出力】ContentGraph: { nodes: ContentNode[], edges: Edge[] }。各ノードはid/type/text/confidenceを持ち、source_docで元文書を示す。競合解釈にはgroup_idが付与される。 【注意】このgraphオブジェクトをそのまま後続の update_content_node と analyze_impact に渡すこと。
| Name | Required | Description | Default |
|---|---|---|---|
| text | Yes | 構造化対象のテキスト(メール、会議依頼、アジェンダ、資料、社内メモなど) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It discloses high cost, character limit, output structure (nodes/edges with fields), and the need to pass the graph to subsequent tools. Lacks details on side effects or error conditions, but otherwise thorough.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Structured with clear labels (【いつ使う】, 【入力】, 【出力】, 【注意】) and front-loaded with usage guidelines. Every sentence is necessary and concise, no wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description describes the output structure (ContentGraph with nodes/edges and fields like group_id) thoroughly. It also provides usage context for subsequent steps, making it complete for the tool's complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The single parameter (text) has 100% schema coverage, but the description adds specific examples of acceptable content and a maximum character length (50,000), adding meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the purpose: to graphify text from internal emails, meeting requests, agendas, etc., for the first time only. It explicitly distinguishes from sibling tools (analyze_impact, update_content_node) by focusing on initial extraction.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states when to use (first time only) and when not to (second time or later for same document group), with reasoning about high cost. It implies alternatives: subsequent tools for later steps.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
update_content_nodeUpdate Content NodeA
【いつ使う】ユーザーがノードの内容(メール文言、時刻、参加者等)を変更するとき。extract_content_graphの出力graphを受け取って呼ぶ。 【入力】graph / node_id / new_text / new_type(任意)/ mark_verified(デフォルトtrue) 【出力】{ graph, changed_node_ids, diff_summary } 【注意】user_verified=trueのノードは変更を拒否する。
| Name | Required | Description | Default |
|---|---|---|---|
| graph | Yes | 現在のContentGraph(extract_content_graphの出力) | |
| node_id | Yes | 変更対象のノードID | |
| new_text | Yes | ノードの新しいテキスト | |
| new_type | No | ノードの新しい分類タイプ(任意) | |
| mark_verified | No | 変更後にuser_verified=trueとマークするか(デフォルト: true) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description fully handles behavioral disclosure. It states the tool modifies nodes, requires graph input, outputs graph+changed ids+diff summary, and important constraint: nodes with user_verified=true reject changes. Does not cover idempotency or side effects, but sufficient for safe use.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is well-structured with clear sections (when to use, input, output, note). Each sentence earns its place—no fluff. Front-loaded with usage context.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite no output schema, the description explains return format (graph, changed_node_ids, diff_summary). It provides behavioral note about validation. For a complex tool with nested object input and 5 params, this is adequately complete. Could mention error handling or edge cases, but not critical.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so baseline is 3. The description adds little beyond schema: it lists parameters and notes optionality (new_type optional, mark_verified default true). But the schema already describes them. No significant enrichment of parameter meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool updates a node's content with specific examples (mail text, time, participants). It distinguishes itself from siblings implicitly by focusing on modification, while extract_content_graph extracts and analyze_impact likely analyzes. However, no explicit distinction from alternatives is given.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicit 'when to use' section (ユーザーがノードの内容を変更するとき) and guidance to call after extract_content_graph. Includes a constraint ('user_verified=true rejects changes') but does not specify when NOT to use or compare with sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
3 tool updates
v0.1.0- First observed
analyze_impact - First observed
extract_content_graph - First observed
update_content_node
TDQS
Each tool has a distinct purpose: extraction, modification, and analysis. No overlap in functionality.
All tool names follow a consistent verb_noun pattern in underscore_case (extract_content_graph, update_content_node, analyze_impact).
Three tools cover the essential workflow without redundancy. Each tool serves a clear, necessary function.
The workflow from extraction to analysis is complete. A minor gap is the lack of a dedicated tool for viewing the graph, but the graph is accessible via outputs.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
End-to-end agent-managed company brain. Docs, diagrams, plans, Knowledge Graph. Lean & affordable.
Company brain for AI agents — temporal knowledge graph search, exploration, and durable memory.
Fact-checks generated content against your sources of truth showing what to trust, change, & verify.
AI Agent with Architectural Memory. Impact analysis (free), tests and code from the graph (pro).
Related MCP Servers
- AlicenseAqualityDmaintenanceEnables AI to analyze, query, and manage a graph-based representation of software architecture for impact analysis, dependency tracking, and design.20161AGPL 3.0
- AlicenseNot gradedqualityDmaintenanceEnables sophisticated reasoning workflows using graph-based representations for AI models.11Apache 2.0
- AlicenseAqualityBmaintenanceEnables LLMs to break down reasoning into an explicit, editable graph of thinking steps, with visualizations and the ability to revise individual steps.614Apache 2.0
- FlicenseAqualityCmaintenanceEnables analysis of legal document changes by constructing a dependency graph and simulating impact propagation, with risk level assessment.3-
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/HiroakiKatoh/DeepImpactMapper'
If you have feedback or need assistance with the MCP directory API, please join our Discord server