loading…
Search for a command to run...
loading…
A semantic gap detection tool that identifies miscommunication and misalignment between texts by measuring semantic distance using embeddings. It enables AI age
A semantic gap detection tool that identifies miscommunication and misalignment between texts by measuring semantic distance using embeddings. It enables AI agents to analyze conversation sequences for conceptual drift and reframe questions to uncover hidden needs.
Measure semantic distance between texts. Detect misalignment before it becomes a problem.
InterOrdra is an MCP server that tells you — with a number — how far apart two pieces of text are conceptually. Not just keyword overlap: real semantic distance using embeddings.
Built for AI agents, pipelines, and developers who need to know when a conversation, a retrieval, or a response is failing silently.
Two things can be syntactically connected but semantically worlds apart:
InterOrdra surfaces these gaps. It gives you a score from 0 (fully aligned) to 1 (completely disconnected), the severity level, and the vocabulary unique to each side.
No setup required. Works with any MCP-compatible client.
You'll need your own ANTHROPIC_API_KEY. Smithery will prompt you for it on connect.
| Scenario | Tool to call |
|---|---|
| Check if an LLM answer is relevant to the question | detectar_gap |
| Validate RAG retrieval — does the doc actually answer the query? | detectar_gap |
| Two agents in a pipeline producing disconnected outputs | detectar_gap |
| User keeps rephrasing the same question unsatisfied | reformular_pregunta |
| Find the real need behind a vague request | reformular_pregunta |
| Multi-turn conversation drifting and losing coherence | analizar_conversacion |
| Diagnose why a negotiation or discussion failed | analizar_conversacion |
| Detect misalignment between two team members' messages | analizar_conversacion |
Call detectar_gap when:
Call reformular_pregunta when:
Call analizar_conversacion when:
detectar_gapMeasures semantic distance between two texts using embeddings. Returns a gap score, severity level, and the vocabulary unique to each text.
Input:
{
"texto_a": "the server is not responding to network requests",
"texto_b": "I need the team to understand my product vision"
}
Returns:
{
"gap_score": 0.94,
"nivel": "alto",
"mensaje": "Gap semántico significativo. Los textos hablan de mundos distintos.",
"similaridad_semantica": 0.06,
"palabras_solo_en_A": ["servidor", "red", "solicitudes"],
"palabras_solo_en_B": ["visión", "producto", "equipo"],
"metodo": "embeddings"
}
Gap score:
0.0 – 0.3 → Low. Texts share enough meaning.0.3 – 0.6 → Medium. Partial disconnection. Misunderstandings likely.0.6 – 1.0 → High. Texts operate in completely different conceptual worlds.reformular_preguntaTakes a question and returns three alternative framings that surface the real need behind it. Uses Claude.
Input:
{
"pregunta": "why doesn't anyone understand me"
}
Returns:
{
"pregunta_original": "why doesn't anyone understand me",
"variantes": [
"What specific communication breakdown is happening in your current context?",
"What would it look like if someone truly understood you — what would change?",
"Which part of your message consistently gets lost or misinterpreted?"
],
"instruccion": "Use these variants to explore the gap between what is asked and what is needed."
}
analizar_conversacionAnalyzes a sequence of messages to detect accumulating semantic gaps. Finds where a conversation starts drifting apart.
Input:
{
"mensajes": [
"We need to improve system performance",
"I think we should hire more engineers",
"The budget for Q3 is already allocated",
"Can we talk about team morale instead?"
]
}
Returns:
{
"gaps_detectados": [
{"entre_mensajes": "1 y 2", "gap_score": 0.45, "nivel": "medio"},
{"entre_mensajes": "2 y 3", "gap_score": 0.71, "nivel": "alto"},
{"entre_mensajes": "3 y 4", "gap_score": 0.83, "nivel": "alto"}
],
"gap_promedio": 0.66,
"punto_critico": {"entre_mensajes": "3 y 4", "gap_score": 0.83},
"diagnostico": "Conversación gravemente desacoplada"
}
Requirements: Python 3.10+ · Your own ANTHROPIC_API_KEY
pip install fastmcp anthropic
python server.py
Claude Desktop — add to claude_desktop_config.json:
{
"mcpServers": {
"interordra": {
"command": "python",
"args": ["/path/to/server.py"],
"env": {
"ANTHROPIC_API_KEY": "your-api-key-here"
}
}
}
}
InterOrdra uses your own Anthropic API key. The author does not pay for your usage.
InterOrdra emerged from a pattern: two systems broadcasting on completely different frequencies — technically communicating, actually disconnected.
The name comes from inter (between) + ordra (order/structure) — the space between ordered systems where gaps live.
Full project: github.com/rosibis-piedra/interordra
Rosibis Piedra AI Software Engineer · Costa Rica github.com/rosibis-piedra
MIT
Добавь это в claude_desktop_config.json и перезапусти Claude Desktop.
{
"mcpServers": {
"interordra-mcp": {
"command": "npx",
"args": []
}
}
}Web content fetching and conversion for efficient LLM usage.
Retrieval from AWS Knowledge Base using Bedrock Agent Runtime.
Provides auto-configuration for setting up an MCP server in Spring Boot applications.
A very streamlined mcp client that supports calling and monitoring stdio/sse/streamableHttp, and can also view request responses through the /logs page. It also