digital-compass-mcp

Digital-crisis playbooks as tools, 9 languages, country-anchored reporting channels. CC BY 4.0.

Should I use this

Quality & Safety

B
Description quality
96%
Schema completeness
82%
Naming quality
80%
Poisoning risk
80%
Permission match
100%
Protocol compliance
100%

Findings (2)

  • HIGHTool poisoning patterns detected
  • INFOTool description contains placeholder or incomplete textin compass_list_situations

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~1,455Tokens (tool definitions)
~1.9 KBTypical response size
Moderate attention impact (1.14% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "digital-compass-mcp": {
      "url": "https://compass.madeinro.eu/mcp"
    }
  }
}

Remote endpoints

https://compass.madeinro.eu/mcpstreamable-http

What it can do

Tool inventory

Tools (5)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢compass_list_situations(lang, categorie, audienta)

All digital-crisis situations (reactive playbooks: fake link, hacked account, online scam...) and prevention guides covered by Digital Compass, with slugs for compass_get_content. Public Romanian guide, plain language, content in 9 languages. Optional filters: categorie (use case) and audienta (individ/organizatie).

Input Schema

{
  "type": "object",
  "properties": {
    "lang": {
      "type": "string",
      "enum": [
        "ro",
        "en",
        "hu",
        "pl",
        "cs",
        "sk",
        "it",
        "fr",
        "de"
      ],
      "default": "ro",
      "description": "Content language (ro = original; en/hu anchored in Romania; pl/cs/sk/it/fr/de anchored in their own countries, with local reporting channels)"
    },
    "categorie": {
      "type": "string",
      "enum": [
        "cumparaturi-bani",
        "conturi-dispozitive",
        "mesaje-apeluri",
        "oameni-manipulare",
        "ai-asistenti",
        "conturi-parole",
        "cumparaturi-plati",
        "dispozitive",
        "email-mesaje",
        "la-birou"
      ],
      "description": "Optional use-case category filter. Playbook categories: cumparaturi-bani, conturi-dispozitive, mesaje-apeluri, oameni-manipulare, ai-asistenti. Guide categories: conturi-parole, cumparaturi-plati, dispozitive, email-mesaje, la-birou."
    },
    "audienta": {
      "type": "string",
      "enum": [
        "individ",
        "organizatie"
      ],
      "description": "Optional audience filter: individ (private person) or organizatie (company/team). Content marked \"ambele\" matches both."
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢compass_get_content(type, slug, lang)

The full markdown of a crisis playbook (steps to take now, what NOT to do, how to recognize it next time, where to report) or of a prevention guide. Suitable to relay to the user step by step, in document order. In MCP Apps-capable hosts this renders as a calm step-by-step checklist card (ui://compass/playbook-card).

Input Schema

{
  "type": "object",
  "properties": {
    "type": {
      "type": "string",
      "enum": [
        "playbook",
        "ghid"
      ],
      "description": "playbook = crisis (reactive), ghid = prevention guide"
    },
    "slug": {
      "type": "string",
      "description": "Slug from compass_list_situations, e.g. \"link-sms-fals\""
    },
    "lang": {
      "type": "string",
      "enum": [
        "ro",
        "en",
        "hu",
        "pl",
        "cs",
        "sk",
        "it",
        "fr",
        "de"
      ],
      "default": "ro",
      "description": "Content language (ro = original; en/hu anchored in Romania; pl/cs/sk/it/fr/de anchored in their own countries, with local reporting channels)"
    }
  },
  "required": [
    "type",
    "slug"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢compass_find_playbook(query, lang, categorie, audienta)

Matches the situation in the user's own words ("I clicked a link and it asked for my card") against the covered situations. Deterministic keyword matching (title, situation, summary), not guessing. Returns the best 3 matches with a score.

Input Schema

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "minLength": 3,
      "description": "The situation, in the user's own words"
    },
    "lang": {
      "type": "string",
      "enum": [
        "ro",
        "en",
        "hu",
        "pl",
        "cs",
        "sk",
        "it",
        "fr",
        "de"
      ],
      "default": "ro",
      "description": "Content language (ro = original; en/hu anchored in Romania; pl/cs/sk/it/fr/de anchored in their own countries, with local reporting channels)"
    },
    "categorie": {
      "type": "string",
      "enum": [
        "cumparaturi-bani",
        "conturi-dispozitive",
        "mesaje-apeluri",
        "oameni-manipulare",
        "ai-asistenti",
        "conturi-parole",
        "cumparaturi-plati",
        "dispozitive",
        "email-mesaje",
        "la-birou"
      ],
      "description": "Optional use-case category filter. Playbook categories: cumparaturi-bani, conturi-dispozitive, mesaje-apeluri, oameni-manipulare, ai-asistenti. Guide categories: conturi-parole, cumparaturi-plati, dispozitive, email-mesaje, la-birou."
    },
    "audienta": {
      "type": "string",
      "enum": [
        "individ",
        "organizatie"
      ],
      "description": "Optional audience filter: individ (private person) or organizatie (company/team). Content marked \"ambele\" matches both."
    }
  },
  "required": [
    "query"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢compass_report_channels(slug, lang)

Real reporting channels for digital incidents, from the playbooks' "Where to report" sections. lang=ro/en/hu → channels in ROMANIA (DNSC 1911, Romanian Police, your bank); lang=pl → channels in POLAND (CERT Polska, policja, card blocking). With slug: only that situation's channels; without: all, deduplicated.

Input Schema

{
  "type": "object",
  "properties": {
    "slug": {
      "type": "string",
      "description": "Optional: the slug of one specific playbook"
    },
    "lang": {
      "type": "string",
      "enum": [
        "ro",
        "en",
        "hu",
        "pl",
        "cs",
        "sk",
        "it",
        "fr",
        "de"
      ],
      "default": "ro",
      "description": "Content language (ro = original; en/hu anchored in Romania; pl/cs/sk/it/fr/de anchored in their own countries, with local reporting channels)"
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢compass_freshness

The date of the last editorial review ("last verified") for every playbook and guide — transparency about how fresh the advice is.

Input Schema

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded5 tools
verifiedversion not recorded5 tools