kontext-mcp


Namekontext-mcp JSON
Version 0.1.0 PyPI version JSON
download
home_pageNone
SummaryPortable, provider-agnostic memory on top of Azure Data Explorer (Kusto)
upload_time2025-07-28 16:50:29
maintainerNone
docs_urlNone
authorKontext Team
requires_python>=3.10
licenseMIT
keywords agents ai azure embeddings kusto mcp memory
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Kontext MCP Server

[![Install with UVX in VS Code](https://img.shields.io/badge/VS_Code-Install_Kontext_MCP_Server-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://insiders.vscode.dev/redirect/mcp/install?name=kontext-mcp&config=%7B%22command%22%3A%20%22uvx%22%2C%22args%22%3A%20%5B%22kontext-mcp%22%5D%2C%22env%22%3A%20%7B%22KUSTO_CLUSTER%22%3A%20%22https%3A%2F%2Fyour-cluster.kusto.windows.net%2F%22%2C%22KUSTO_DATABASE%22%3A%20%22your-database%22%2C%22KUSTO_TABLE%22%3A%20%22Memory%22%2C%22EMBEDDING_URI%22%3A%20%22https%3A%2F%2Fyour-openai.azure.com%2Fopenai%2Fdeployments%2Ftext-embedding-3-large%2Fembeddings%3Fapi-version%3D2023-05-15%3Bmanaged_identity%3Dsystem%22%7D) [![PyPI Downloads](https://static.pepy.tech/badge/kontext-mcp)](https://pepy.tech/projects/kontext-mcp)

**Own your Kontext: portable, provider‑agnostic memory for AI agents. Never repeat yourself again.**

Kontext transforms Azure Data Explorer (Kusto) into a sophisticated context engine that goes beyond simple vector storage. While traditional vector DBs only store embeddings, Kontext provides layered memory with rich temporal and usage signals—combining recency, frequency, semantic similarity, pins, and decay scoring.

## Why Kontext?

**The Gap**: Agents need intelligent memory that considers not just semantic similarity, but also temporal patterns, usage frequency, and contextual relevance. Most vector databases fall short by ignoring these rich signals and locking you into a single cloud provider.

**The Solution**: Kontext leverages Kusto's powerful query language (KQL) to score and rank memories using multiple dimensions:

```kql
// Conceptual query for scoring memories
Memory 
| extend score = w_t * exp(-ago(ingest)/7d) * 
                 w_f * log(1+hits) * 
                 w_s * cosine_sim * 
                 w_p * pin 
| top 20 by score
```

## Key Benefits

- **Temporal Reasoning**: Native timestamp handling, retention policies, and time-decay scoring
- **Semantic Retrieval**: Built-in vector columns with cosine similarity search  
- **Expressive Ranking**: KQL enables complex scoring that weighs time, frequency, pins, and semantics
- **Cost Effective**: Free tier with instant provisioning and predictable scaling
- **True Portability**: Simple MCP API keeps your models and cloud providers interchangeable

## Architecture

```
Agent ⇆ Kontext MCP
         ├── remember(fact, meta)
         └── recall(query, meta)
                  ↓
           Azure Kusto
```

**Ingest**: Text splitting → embedding generation → vector + metadata storage  
**Retrieve**: KQL-powered scoring combines temporal, frequency, semantic, and pin signals

## Quick Setup

Add Kontext to your MCP settings with the following configuration:

```json
{
  "servers": {
    "kontext": {
      "type": "stdio",
      "command": "uvx",
      "args": ["kontext-mcp"],
      "env": {
        "KUSTO_CLUSTER": "https://your-cluster.kusto.windows.net/",
        "KUSTO_DATABASE": "your-database",
        "KUSTO_TABLE": "Memory",
        "EMBEDDING_URI": "https://your-openai.azure.com/openai/deployments/text-embedding-3-large/embeddings?api-version=2023-05-15;managed_identity=system"
      }
    }
  }
}
```

**Environment Variables:**
- `KUSTO_CLUSTER`: Your Azure Data Explorer cluster URL
- `KUSTO_DATABASE`: Database name for storing memories
- `KUSTO_TABLE`: Table name for memory storage (default: "Memory")
- `EMBEDDING_URI`: Azure OpenAI endpoint for embedding generation

## Current Features

- **remember**: Store facts with automatic embedding generation using Kusto's `ai_embeddings()` plugin
- **recall**: Retrieve semantically similar facts using cosine similarity search
- **FastMCP Integration**: Built on the FastMCP framework for easy tool registration and schema generation
- **Kusto Backend**: Leverages Azure Data Explorer for scalable storage and querying

## Roadmap

- **Advanced Scoring**: Multi-dimensional ranking with temporal decay, frequency weighting, and pin support
- **Memory Tiers**: Short-term context, working memory, and long-term fact storage
- **Hosted Embeddings**: Optional E5 model hosting to reduce setup friction
- **Enhanced Caching**: Multi-tier memory management and query optimization



## License

MIT License - see LICENSE file for details.

## Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "kontext-mcp",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.10",
    "maintainer_email": null,
    "keywords": "agents, ai, azure, embeddings, kusto, mcp, memory",
    "author": "Kontext Team",
    "author_email": null,
    "download_url": "https://files.pythonhosted.org/packages/0a/29/2d8216e5e825c369b27180a10078be3c30decd1e7c3a2dafa1bea59d927e/kontext_mcp-0.1.0.tar.gz",
    "platform": null,
    "description": "# Kontext MCP Server\n\n[![Install with UVX in VS Code](https://img.shields.io/badge/VS_Code-Install_Kontext_MCP_Server-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://insiders.vscode.dev/redirect/mcp/install?name=kontext-mcp&config=%7B%22command%22%3A%20%22uvx%22%2C%22args%22%3A%20%5B%22kontext-mcp%22%5D%2C%22env%22%3A%20%7B%22KUSTO_CLUSTER%22%3A%20%22https%3A%2F%2Fyour-cluster.kusto.windows.net%2F%22%2C%22KUSTO_DATABASE%22%3A%20%22your-database%22%2C%22KUSTO_TABLE%22%3A%20%22Memory%22%2C%22EMBEDDING_URI%22%3A%20%22https%3A%2F%2Fyour-openai.azure.com%2Fopenai%2Fdeployments%2Ftext-embedding-3-large%2Fembeddings%3Fapi-version%3D2023-05-15%3Bmanaged_identity%3Dsystem%22%7D) [![PyPI Downloads](https://static.pepy.tech/badge/kontext-mcp)](https://pepy.tech/projects/kontext-mcp)\n\n**Own your Kontext: portable, provider\u2011agnostic memory for AI agents. Never repeat yourself again.**\n\nKontext transforms Azure Data Explorer (Kusto) into a sophisticated context engine that goes beyond simple vector storage. While traditional vector DBs only store embeddings, Kontext provides layered memory with rich temporal and usage signals\u2014combining recency, frequency, semantic similarity, pins, and decay scoring.\n\n## Why Kontext?\n\n**The Gap**: Agents need intelligent memory that considers not just semantic similarity, but also temporal patterns, usage frequency, and contextual relevance. Most vector databases fall short by ignoring these rich signals and locking you into a single cloud provider.\n\n**The Solution**: Kontext leverages Kusto's powerful query language (KQL) to score and rank memories using multiple dimensions:\n\n```kql\n// Conceptual query for scoring memories\nMemory \n| extend score = w_t * exp(-ago(ingest)/7d) * \n                 w_f * log(1+hits) * \n                 w_s * cosine_sim * \n                 w_p * pin \n| top 20 by score\n```\n\n## Key Benefits\n\n- **Temporal Reasoning**: Native timestamp handling, retention policies, and time-decay scoring\n- **Semantic Retrieval**: Built-in vector columns with cosine similarity search  \n- **Expressive Ranking**: KQL enables complex scoring that weighs time, frequency, pins, and semantics\n- **Cost Effective**: Free tier with instant provisioning and predictable scaling\n- **True Portability**: Simple MCP API keeps your models and cloud providers interchangeable\n\n## Architecture\n\n```\nAgent \u21c6 Kontext MCP\n         \u251c\u2500\u2500 remember(fact, meta)\n         \u2514\u2500\u2500 recall(query, meta)\n                  \u2193\n           Azure Kusto\n```\n\n**Ingest**: Text splitting \u2192 embedding generation \u2192 vector + metadata storage  \n**Retrieve**: KQL-powered scoring combines temporal, frequency, semantic, and pin signals\n\n## Quick Setup\n\nAdd Kontext to your MCP settings with the following configuration:\n\n```json\n{\n  \"servers\": {\n    \"kontext\": {\n      \"type\": \"stdio\",\n      \"command\": \"uvx\",\n      \"args\": [\"kontext-mcp\"],\n      \"env\": {\n        \"KUSTO_CLUSTER\": \"https://your-cluster.kusto.windows.net/\",\n        \"KUSTO_DATABASE\": \"your-database\",\n        \"KUSTO_TABLE\": \"Memory\",\n        \"EMBEDDING_URI\": \"https://your-openai.azure.com/openai/deployments/text-embedding-3-large/embeddings?api-version=2023-05-15;managed_identity=system\"\n      }\n    }\n  }\n}\n```\n\n**Environment Variables:**\n- `KUSTO_CLUSTER`: Your Azure Data Explorer cluster URL\n- `KUSTO_DATABASE`: Database name for storing memories\n- `KUSTO_TABLE`: Table name for memory storage (default: \"Memory\")\n- `EMBEDDING_URI`: Azure OpenAI endpoint for embedding generation\n\n## Current Features\n\n- **remember**: Store facts with automatic embedding generation using Kusto's `ai_embeddings()` plugin\n- **recall**: Retrieve semantically similar facts using cosine similarity search\n- **FastMCP Integration**: Built on the FastMCP framework for easy tool registration and schema generation\n- **Kusto Backend**: Leverages Azure Data Explorer for scalable storage and querying\n\n## Roadmap\n\n- **Advanced Scoring**: Multi-dimensional ranking with temporal decay, frequency weighting, and pin support\n- **Memory Tiers**: Short-term context, working memory, and long-term fact storage\n- **Hosted Embeddings**: Optional E5 model hosting to reduce setup friction\n- **Enhanced Caching**: Multi-tier memory management and query optimization\n\n\n\n## License\n\nMIT License - see LICENSE file for details.\n\n## Contributing\n\nContributions are welcome! Please feel free to submit a Pull Request.\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Portable, provider-agnostic memory on top of Azure Data Explorer (Kusto)",
    "version": "0.1.0",
    "project_urls": {
        "Documentation": "https://github.com/danield137/kontext-mcp#readme",
        "Homepage": "https://github.com/danield137/kontext-mcp",
        "Issues": "https://github.com/danield137/kontext-mcp/issues",
        "Repository": "https://github.com/danield137/kontext-mcp"
    },
    "split_keywords": [
        "agents",
        " ai",
        " azure",
        " embeddings",
        " kusto",
        " mcp",
        " memory"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "c46dbb85dca74782391803c89b2062dc789963620333975cbe1edbe04749a0e3",
                "md5": "a687ed72e40215b5599f0c31c2c0fd8c",
                "sha256": "b43d33f628206be4bd6b77571aaa76accfce7568b3b94580cda59a24d4e2d48b"
            },
            "downloads": -1,
            "filename": "kontext_mcp-0.1.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "a687ed72e40215b5599f0c31c2c0fd8c",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.10",
            "size": 10708,
            "upload_time": "2025-07-28T16:50:28",
            "upload_time_iso_8601": "2025-07-28T16:50:28.737727Z",
            "url": "https://files.pythonhosted.org/packages/c4/6d/bb85dca74782391803c89b2062dc789963620333975cbe1edbe04749a0e3/kontext_mcp-0.1.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "0a292d8216e5e825c369b27180a10078be3c30decd1e7c3a2dafa1bea59d927e",
                "md5": "6f38b4d6f7a1c2dab82cddfa89fa8971",
                "sha256": "02b932196da6f5b62048e95cae87184250d828bd9b4f88bcce608ccb85115787"
            },
            "downloads": -1,
            "filename": "kontext_mcp-0.1.0.tar.gz",
            "has_sig": false,
            "md5_digest": "6f38b4d6f7a1c2dab82cddfa89fa8971",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.10",
            "size": 92599,
            "upload_time": "2025-07-28T16:50:29",
            "upload_time_iso_8601": "2025-07-28T16:50:29.930243Z",
            "url": "https://files.pythonhosted.org/packages/0a/29/2d8216e5e825c369b27180a10078be3c30decd1e7c3a2dafa1bea59d927e/kontext_mcp-0.1.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-07-28 16:50:29",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "danield137",
    "github_project": "kontext-mcp#readme",
    "github_not_found": true,
    "lcname": "kontext-mcp"
}
        
Elapsed time: 1.51969s