io.github.gabrielmahia/decision-intelligence-mcp
Click on "Deploy 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., "@io.github.gabrielmahia/decision-intelligence-mcpApply Sun Tzu's Art of War to my startup's market strategy."
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.
classical-strategy-mcp
5,000 years of military strategy, philosophy, and decision science — as AI-accessible tools.
Compatible with claude-sonnet-5 (released 2026-06-30)
An MCP (Model Context Protocol) server exposing structured public domain knowledge from history's greatest strategic thinkers. Connect to Claude, GPT, or any MCP-compatible AI assistant and access the complete strategic literature of human civilization.
Related MCP server: mcp-wisdom
Commanders and Thinkers
Commander | Dates | Signature Doctrine | Source |
Sun Tzu | ~500 BC | Supreme excellence: win without fighting | Art of War (PD) |
Julius Caesar | 100-44 BC | Speed + fortification + political intelligence | Gallic Wars (PD) |
Hannibal Barca | 247-183 BC | Cannae double envelopment | Polybius, Livy (PD) |
Alexander the Great | 356-323 BC | Hammer and anvil, oblique approach | Arrian, Plutarch (PD) |
Julius Caesar | 100-44 BC | Speed, engineering, clemency as weapons | De Bello Gallico (PD) |
Napoleon Bonaparte | 1769-1821 | Corps system, central position, decisive battle | 115 Maxims (PD) |
Carl von Clausewitz | 1780-1831 | Fog, friction, center of gravity, culminating point | On War (PD) |
Frederick the Great | 1712-1786 | Oblique order, interior lines | Instructions for His Generals (PD) |
Shaka Zulu | 1787-1828 | Iklwa, bull-horn formation, amabutho system | Isaacs, Fynn (PD) |
Genghis Khan | 1162-1227 | Yam intelligence, feigned retreat, total warfare | Secret History (PD) |
Tools
napoleon_maxims(category="strategy") # 115 maxims, filterable
sun_tzu(chapter=3) # Art of War by chapter
commander_doctrine(commander="hannibal") # Doctrine deep-dive
apply_strategy(problem="...", lens="competition") # Apply to modern problem
public_domain_library(domain="military") # Full bibliographyQuick Start
pip install classical-strategy-mcp
# Claude Code
claude mcp add strategy -- classical-strategy-mcp
# Or run directly
classical-strategy-mcpWhat This Is Not
This is a research and analytical tool. Public domain military history for:
Strategic analysis and decision frameworks
Historical research and education
Leadership and organizational thinking
Competitive strategy and planning
Not for operational military planning.
The Public Domain Opportunity
Every work cited here is in the public domain. The content is free. The value is in:
Structured access (not raw text scanning)
AI-native interfaces (not PDFs)
Synthesis across traditions (not single-source)
Modern application frameworks (not historical trivia)
This is the model for the next wave of knowledge infrastructure.
All Sources — Public Domain
Napoleon's Maxims (1831)
Clausewitz, On War / Vom Kriege (1832)
Caesar, De Bello Gallico (58-50 BC)
Arrian, Anabasis of Alexander (~130 AD)
Polybius, Histories (~150 BC)
Livy, History of Rome (27 BC-17 AD)
Sun Tzu, The Art of War (~500 BC)
Frederick the Great, Instructions for His Generals (1747)
Vegetius, Epitome Rei Militaris (~390 AD)
Thucydides, History of the Peloponnesian War (~400 BC)
Nathaniel Isaacs, Travels in Eastern Africa (1836) — Shaka Zulu
Henry Francis Fynn, Diary (1830s)
Anonymous, The Secret History of the Mongols (~1240)
Juvaini, History of the World-Conqueror (1260)
Marcus Aurelius, Meditations (~170-180 AD)
Machiavelli, The Prince (1532) and Art of War (1521)
Seneca, Letters from a Stoic (~65 AD)
Epictetus, Enchiridion (~135 AD)
Part of the East Africa AI coordination infrastructure Public domain as raw material. AI as the refinery. Knowledge as the product.
Part of the East Africa Coordination Stack
This MCP server is one of 32 tools in the Kenya coordination infrastructure.
Connect it to africa-coord-bus —
the coordination event bus that routes signals between domains automatically.
pip install africa-coord-busAll 32 servers: pypi.org/user/gmahia Live demo: coord-cascade-demo
IP & Collaboration
MIT licensed. Feedback via GitHub Issues only — pull requests are not accepted. Demo data is labeled DEMO and is not suitable for operational decisions. Full policy: docs/architecture/IP_POLICY.md. Security reports: see SECURITY.md.
Part of the East Africa coordination stack
Install & run:
pip install reli-cli && reli list— 33 MCP servers on the official MCP Registry underio.github.gabrielmahiaEvaluate any model on Swahili agent tasks: kipimo · dataset · leaderboard
Coordinate across servers: africa-coord-bus — offline-first event bus with a built-in Kenya routing table
Datasets: huggingface.co/gmahia · Docs hub: nairobi-stack
Model-agnostic by design: closed APIs, open-weight models, and small distilled models are all first-class citizens.
Available Tools
5 toolsapply_strategyA
Apply classical military principles to a modern strategic problem. Translates ancient military wisdom into business, technology, organizational, or geopolitical analysis. Specify the problem domain and the analytical lens.
| Name | Required | Description | Default |
|---|---|---|---|
| lens | No | Strategic lens: 'competition'|'leadership'|'intelligence'|'resources'|'operations'|'psychology' | competition |
| problem | Yes | Describe the strategic problem or challenge | |
| commanders | No | Comma-separated commanders to draw from (or 'all') | all |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description must carry the full burden of behavioral disclosure. It explains that the tool 'translates ancient military wisdom' but does not reveal what the output looks like, whether it synthesizes multiple commanders (as hinted by the 'commanders' parameter), or any limitations. For a tool that likely performs analysis and returns a response, the lack of transparency about its operational behavior is a gap.
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 two sentences long, front-loaded with the main purpose, and every word contributes meaning. It avoids redundancy and fluff. The structure is efficient, directly stating both what the tool does and what the user should specify.
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 moderate complexity (3 parameters, output schema present) and the schema's completeness, the description covers the essential context: it defines the tool's purpose, target domains, and key input directives. It does not explain return values, but the output schema likely covers that. It could be slightly more complete by mentioning the 'commanders' parameter or alternative tools, but it is largely adequate 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?
The schema provides 100% description coverage for the three parameters, so the baseline is 3. The description adds minimal extra meaning by referencing the 'problem domain' and 'analytical lens', which loosely correspond to 'problem' and 'lens'. However, it does not enrich the understanding beyond the schema, such as clarifying the 'commanders' parameter's role. The added value over the schema is marginal.
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's function: applying classical military principles to modern strategic problems. It specifies the verb ('apply'), the resource ('classical military principles'), and the scope ('business, technology, organizational, or geopolitical analysis'), distinguishing it from sibling tools that likely focus on specific sources. The purpose is unambiguous and action-oriented.
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 indicates when to use the tool ('modern strategic problem') and what to specify ('problem domain' and 'analytical lens'), but it does not explicitly contrast with sibling tools like sun_tzu or napoleon_maxims. The guidance is implied rather than explicit, leaving the user to infer alternatives. There is no direct 'use this instead of X' statement.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
commander_doctrineA
Analyze a commander's signature tactical innovation — the battle doctrine that made them historically decisive. Covers: Napoleon (corps system, central position), Alexander (hammer and anvil), Hannibal (Cannae encirclement), Genghis Khan (feigned retreat + Mongol doctrine), Shaka Zulu (bull-horn formation), Caesar (fortification + speed), Frederick the Great (oblique order).
| Name | Required | Description | Default |
|---|---|---|---|
| commander | No | Commander name: napoleon|alexander|hannibal|genghis|shaka|caesar|sun_tzu|clausewitz|frederick | napoleon |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. It conveys the purpose but doesn't state whether the operation is read-only, what kind of output to expect (though an output schema exists), or any side effects/requirements. The description adds no behavioral context beyond the basic analysis intent.
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 a single purposeful sentence followed by an organized list of commander–doctrine pairs. Every listed item earns its place, and the key purpose is front-loaded. There is no filler or redundant repetition.
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 a simple single-parameter tool with a default and an output schema, most needed context is present. The major gap is that the description's coverage list excludes sun_tzu and clausewitz even though the schema accepts them, creating ambiguity about valid inputs. This incomplete coverage undermines full completeness.
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 schema parameter description already lists all command names, and the tool description adds meaningful per-value context (e.g., 'Napoleon (corps system, central position)'), which helps an agent select the right commander. However, the description omits two valid values from the schema (sun_tzu and clausewitz), slightly limiting the added value.
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 uses a specific verb ('Analyze') and resource ('a commander's signature tactical innovation — the battle doctrine') and enumerates the covered commanders and their doctrines. This clearly distinguishes it from sibling tools like napoleon_maxims (maxims vs. doctrine) and sun_tzu (general principles vs. specific commander innovations).
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?
No explicit guidance is given on when to use this tool versus alternatives. The description implies it's for historical battle doctrines of specific commanders, but it doesn't state exclusions or mention sibling tools like sun_tzu or apply_strategy. There is no clear 'when to use / when not to use' guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
napoleon_maximsA
Get Napoleon Bonaparte's Military Maxims — 115 principles distilled from 20+ years of campaign experience. The most concentrated body of military wisdom from any commander in the modern era. Use for strategic planning, logistics, speed of decision, and concentration of force.
| Name | Required | Description | Default |
|---|---|---|---|
| category | No | Filter by category: 'strategy'|'tactics'|'logistics'|'leadership'|'intelligence'|'all' | all |
| maxim_number | No | Get a specific maxim by number (1-115). 0 = return all. |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the behavioral burden. 'Get' implies a read-only operation, and the description adds context about the maxims' composition, but it does not explicitly disclose side effects, auth requirements, or return behavior. For a simple read tool, this is acceptable but not detailed.
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 three sentences with no filler. It front-loads the purpose, quantifies the content, and then gives use cases. Every sentence earns its place.
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?
With an output schema present and a simple read-only tool, the description provides adequate context: what the tool returns and when to use it. It does not explicitly mention filtering options, but the schema covers those details, so the description is sufficiently complete.
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 schema already describes both parameters fully (100% coverage). The description adds thematic context (strategic planning, logistics) that loosely relates to category values, but it does not add significant meaning beyond the schema, so the baseline 3 applies.
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 retrieves Napoleon Bonaparte's Military Maxims, specifying the resource and content type. It does not explicitly differentiate from sibling tools like sun_tzu, so it falls short of a 5.
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?
Provides explicit use cases ('strategic planning, logistics, speed of decision, and concentration of force'), giving clear context for when to use the tool. No exclusions or alternatives are mentioned, but the guidance is direct and helpful.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
public_domain_libraryA
Get major works of military and strategic philosophy available in the public domain. Returns title, author, date, themes, and key insights for each work.
| Name | Required | Description | Default |
|---|---|---|---|
| domain | No | Domain: 'military'|'philosophy'|'leadership'|'history'|'all' | all |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of disclosing behavior. It indicates a read-only operation via 'Get' and discloses the returned fields (title, author, date, themes, key insights). However, it doesn't mention pagination, result limits, or the effect of the domain parameter, leaving some behavioral details undisclosed.
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 a single, front-loaded sentence that delivers the core purpose and return fields without fluff. Every clause adds value, and it is short enough to be processed 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?
The tool has a simple input schema and an output schema, so the description doesn't need to explain return values in detail. It is sufficient for a basic library lookup, though it could benefit from mentioning that the domain parameter expands beyond military philosophy. Overall, the description is complete enough 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?
The schema covers the domain parameter 100%, describing allowed values and default. The description adds no extra meaning about how domain filtering works or how it relates to the 'military and strategic philosophy' scope. Baseline of 3 applies because the schema fully documents the parameter.
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 gets major works of military and strategic philosophy in the public domain, listing the return fields. This distinguishes it from siblings like sun_tzu or napoleon_maxims, which are specific works rather than a general library. The verb 'Get' and the resource 'public domain works' provide a specific, unambiguous purpose.
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 gives no guidance on when to use this tool versus siblings such as sun_tzu or commander_doctrine. It doesn't mention that specific works have dedicated tools or that this library is for broader exploration. No exclusions or alternative contexts are provided, leaving the choice to the agent's inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
sun_tzuA
Get Sun Tzu's Art of War — 13 chapters on strategy, intelligence, deception, and the nature of conflict. The oldest continuously studied strategic text. Applies to competitive analysis, negotiation, organizational strategy, and any domain of structured competition.
| Name | Required | Description | Default |
|---|---|---|---|
| chapter | No | Chapter number 1-13. 0 = all chapters. | |
| concept | No | Search for a specific concept (e.g. 'deception', 'intelligence', 'terrain') |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations present, the description carries the full burden of behavioral disclosure. It states the action ('Get') and the content ('13 chapters'), but does not explicitly describe the return format or any variations in behavior (e.g., chapter selection or concept search). For a read-only retrieval tool the risk is low, yet the description leaves some ambiguity about what exactly is returned, so a 3 is appropriate.
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 two sentences with no filler. The first sentence front-loads the core function and resource; the second adds valuable context. Every sentence earns its place.
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 presence of a full output schema and two well-documented optional parameters, the description covers the essential context: what the text is, its relevance, and its domains of application. Minor gaps exist, such as not explicitly stating default behavior for 'chapter=0', but the schema covers that. The description is complete enough for selection and 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 description coverage is 100%: both 'chapter' and 'concept' are fully documented in the schema. The description mentions '13 chapters' which aligns with the chapter parameter but adds no new semantic detail beyond the schema. Baseline 3 applies, as the schema does the heavy lifting.
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 identifies the specific resource and action: 'Get Sun Tzu's Art of War' with the distinct scope of 13 chapters. It differentiates from sibling tools by naming this unique text and by adding contextual positioning, making its purpose unmistakable.
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 provides clear usage context by listing application domains ('competitive analysis, negotiation, organizational strategy'), but it does not explicitly state when not to use the tool or mention alternatives. This is sufficient context without exclusions, so it earns a 4.
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.
5 tool updates
v0.1.2- First observed
apply_strategy - First observed
commander_doctrine - First observed
napoleon_maxims - First observed
public_domain_library - First observed
sun_tzu
TDQS
Scored across 5 tools
The tools are mostly distinct: napoleon_maxims and sun_tzu target specific texts, while public_domain_library is a broader catalog that could overlap with the specific sources. commander_doctrine and apply_strategy are clearly separate, but the retrieval tools could cause minor confusion.
Tool names mix noun-based identifiers (napoleon_maxims, sun_tzu, public_domain_library, commander_doctrine) with a verb-based one (apply_strategy). While all use snake_case, the lack of a consistent verb_noun pattern makes the set feel slightly inconsistent.
Five tools is well-scoped for a niche server focused on strategic decision-making. Each tool contributes a distinct capability without redundancy or an unwieldy list.
The set covers the core workflow: accessing source material (napoleon_maxims, sun_tzu, public_domain_library), understanding historical doctrine (commander_doctrine), and applying it to modern problems (apply_strategy). Minor gaps exist, such as searching within texts or comparing doctrines, but the surface is largely complete for the stated purpose.
Maintenance
Related MCP Connectors
Deterministic reasoning stack for AI agents: simulate, decide & compute, plus cross-domain tools.
AI agent for business strategy and business design — run strategy missions and 15 analyses.
Adversarial behavioural-bias engine — audits your decisions for cognitive biases via your own AI.
Daily content for AI agents. History, chess, investing, wrongology, more. 10 channels. Free trial.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceProvides access to 27+ structured problem-solving frameworks and game-theoretic workflows for software development, project management, and operations research. Helps prevent analysis paralysis and scope creep by transforming open-ended challenges into systematic, time-boxed approaches with clear decision gates.5MIT
- AlicenseAqualityCmaintenanceProvides philosophical thinking frameworks and tools based on Stoic, cognitive, mindfulness, and strategic traditions to assist with decision-making and perspective. It enables AI models to apply structured wisdom from 2,500 years of tested frameworks to user problems.960 npm3MIT
- AlicenseAqualityCmaintenanceFinancial intelligence for AI agents. 31 tools across 8 data sources — regime, derivatives, stablecoin flows, momentum, volatility, macro, DeFi, weather patterns, political cycles, seasonality. The context layer between your agent and a bad trade.315 npm9MIT
- AlicenseNot gradedqualityAmaintenanceA personal board of AI advisors grounded in public-domain texts, with a fail-closed fidelity contour: every quote is checked word-for-word against its source by code, or the advisor abstains. Runs locally as a stdio MCP server.7MIT