iflow-mcp_memory-system


Nameiflow-mcp_memory-system JSON
Version 0.1.2 PyPI version JSON
download
home_pageNone
SummaryA Model Context Protocol server providing file system management tools with enhanced editing capabilities
upload_time2025-09-01 09:34:01
maintainerNone
docs_urlNone
authorMemory System Team
requires_python==3.12.7
licenseMIT
keywords automation file-system llm mcp memory
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # MCP Memory System

A Model Context Protocol (MCP) server that provides enhanced file system management capabilities with agent-based workspace isolation for Large Language Models (LLMs).

## Features

- **Agent-Based Workspace Management**: Multi-agent support with isolated workspace permissions
- **File Operations**: Read, write, edit, and create files with enhanced safety checks
- **Directory Management**: Create and list directories with permission controls
- **Concurrent Safe Editing**: File locking mechanism to prevent concurrent edit conflicts
- **Media File Protection**: Prevents reading of binary files (images, videos, PDFs, etc.)
- **UTF-8 Validation**: Ensures file encoding integrity
- **Workspace Isolation**: All operations are strictly restricted to agent-specific workspace directories
- **Permission System**: Granular read/write permissions per agent with directory-level access control

## Tools Provided

### Agent Management Tools
- `register_agent`: Register an agent with automatic workspace setup (creates directory with read/write access)
- `register_agent_workspace`: Register or update an agent's workspace with custom readable and writable directory paths
- `update_agent_workspace`: Add new readable and writable directory paths to an existing agent's workspace
- `get_agent_workspace`: Get workspace configuration information for a specific agent

### File System Tools
- `write_memory_file`: Create or overwrite files with automatic directory creation (requires agent registration)
- `edit_memory_file`: Edit existing files with multiple find-and-replace operations (requires agent registration)
- `read_multiple_memory_files`: Read multiple text files at once (requires agent registration)
- `create_memory_directory`: Create directories with automatic parent creation (requires agent registration)
- `list_memory_directory`: List directory contents (requires agent registration)
- `move_memory_file`: Move or rename files (requires agent registration)
- `get_memory_files`: Get all file paths in the workspace directory with unified format output

## Usage

### 1. Agent Registration (Required)

Before performing any file operations, agents must be registered:

```python
# Simple registration - creates agent workspace directory automatically
register_agent(agent_name="my_agent", agent_workspace="my_agent")

# Or advanced registration with custom paths
register_agent_workspace(
    agent_name="my_agent",
    readable_paths=["shared_data", "my_agent"],
    writable_paths=["my_agent", "output"]
)
```

### 2. File Operations

All file operations require the `agent_name` parameter and respect the agent's workspace permissions:

```python
# Write a file
write_memory_file(agent_name="my_agent", path="my_agent/data.txt", content="Hello World")

# Read multiple files
read_multiple_memory_files(agent_name="my_agent", paths=["my_agent/data.txt", "shared_data/config.json"])

# Edit a file
edit_memory_file(
    agent_name="my_agent",
    path="my_agent/data.txt",
    edits=[{"oldText": "Hello", "newText": "Hi"}]
)
```

## Installation

```bash
# Install with uv
uv add mcp-memory-system

# Or install with pip
pip install mcp-memory-system
```

## Server Configuration

### Using with MCP clients

Add the following configuration to your MCP settings:

```json
{
  "mcpServers": {
    "memory-system": {
      "command": "uv",
      "args": ["--directory", "/path/to/mcp-memory-system", "run", "mcp-memory-system"],
      "env": {}
    }
  }
}
```

### Configuration Options

- `--workspace-path`: Set the workspace directory (default: ./workspace)

## Permission System

The server implements a comprehensive permission system:

- **Agent Registration Required**: All agents must be registered before performing any memory operations
- **Directory-Level Permissions**: Permissions are granted at the directory level, not individual files
- **Read/Write Separation**: Agents can have different read and write permissions
- **Workspace Isolation**: Each agent can only access files within their permitted directories
- **Automatic Directory Creation**: Directories are created automatically when agents are registered

### Permission Examples

```python
# Agent can read from "shared" and "agent1" directories, write to "agent1" only
register_agent_workspace(
    agent_name="agent1",
    readable_paths=["shared", "agent1"],
    writable_paths=["agent1"]
)

# Add additional permissions to existing agent
update_agent_workspace(
    agent_name="agent1",
    additional_readable_paths=["public_data"],
    additional_writable_paths=["output"]
)
```

## Safety Features

- **Agent-Based Access Control**: Each agent can only access files within their permitted workspace directories
- **File Type Filtering**: Automatically blocks operations on binary files (images, videos, PDFs, etc.)
- **Concurrent Access Control**: File-level locking prevents data corruption during edits
- **Strict Workspace Sandboxing**: All operations are contained within the specified workspace directory
- **Path Validation**: Prevents directory traversal attacks with "../" path components
- **UTF-8 Validation**: Ensures text file integrity after operations
- **Permission Validation**: All operations validate agent permissions before execution

## Error Handling

The server provides detailed error messages for permission violations, including:
- Current agent permissions
- Specific paths that caused the error
- Suggestions for resolving permission issues

## License

MIT License - see LICENSE file for details.
            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "iflow-mcp_memory-system",
    "maintainer": null,
    "docs_url": null,
    "requires_python": "==3.12.7",
    "maintainer_email": null,
    "keywords": "automation, file-system, llm, mcp, memory",
    "author": "Memory System Team",
    "author_email": null,
    "download_url": "https://files.pythonhosted.org/packages/4c/df/4b1e737ca673469c06625cef29b1dbb1825ec6fc5eeca2ac6562a9367740/iflow_mcp_memory_system-0.1.2.tar.gz",
    "platform": null,
    "description": "# MCP Memory System\n\nA Model Context Protocol (MCP) server that provides enhanced file system management capabilities with agent-based workspace isolation for Large Language Models (LLMs).\n\n## Features\n\n- **Agent-Based Workspace Management**: Multi-agent support with isolated workspace permissions\n- **File Operations**: Read, write, edit, and create files with enhanced safety checks\n- **Directory Management**: Create and list directories with permission controls\n- **Concurrent Safe Editing**: File locking mechanism to prevent concurrent edit conflicts\n- **Media File Protection**: Prevents reading of binary files (images, videos, PDFs, etc.)\n- **UTF-8 Validation**: Ensures file encoding integrity\n- **Workspace Isolation**: All operations are strictly restricted to agent-specific workspace directories\n- **Permission System**: Granular read/write permissions per agent with directory-level access control\n\n## Tools Provided\n\n### Agent Management Tools\n- `register_agent`: Register an agent with automatic workspace setup (creates directory with read/write access)\n- `register_agent_workspace`: Register or update an agent's workspace with custom readable and writable directory paths\n- `update_agent_workspace`: Add new readable and writable directory paths to an existing agent's workspace\n- `get_agent_workspace`: Get workspace configuration information for a specific agent\n\n### File System Tools\n- `write_memory_file`: Create or overwrite files with automatic directory creation (requires agent registration)\n- `edit_memory_file`: Edit existing files with multiple find-and-replace operations (requires agent registration)\n- `read_multiple_memory_files`: Read multiple text files at once (requires agent registration)\n- `create_memory_directory`: Create directories with automatic parent creation (requires agent registration)\n- `list_memory_directory`: List directory contents (requires agent registration)\n- `move_memory_file`: Move or rename files (requires agent registration)\n- `get_memory_files`: Get all file paths in the workspace directory with unified format output\n\n## Usage\n\n### 1. Agent Registration (Required)\n\nBefore performing any file operations, agents must be registered:\n\n```python\n# Simple registration - creates agent workspace directory automatically\nregister_agent(agent_name=\"my_agent\", agent_workspace=\"my_agent\")\n\n# Or advanced registration with custom paths\nregister_agent_workspace(\n    agent_name=\"my_agent\",\n    readable_paths=[\"shared_data\", \"my_agent\"],\n    writable_paths=[\"my_agent\", \"output\"]\n)\n```\n\n### 2. File Operations\n\nAll file operations require the `agent_name` parameter and respect the agent's workspace permissions:\n\n```python\n# Write a file\nwrite_memory_file(agent_name=\"my_agent\", path=\"my_agent/data.txt\", content=\"Hello World\")\n\n# Read multiple files\nread_multiple_memory_files(agent_name=\"my_agent\", paths=[\"my_agent/data.txt\", \"shared_data/config.json\"])\n\n# Edit a file\nedit_memory_file(\n    agent_name=\"my_agent\",\n    path=\"my_agent/data.txt\",\n    edits=[{\"oldText\": \"Hello\", \"newText\": \"Hi\"}]\n)\n```\n\n## Installation\n\n```bash\n# Install with uv\nuv add mcp-memory-system\n\n# Or install with pip\npip install mcp-memory-system\n```\n\n## Server Configuration\n\n### Using with MCP clients\n\nAdd the following configuration to your MCP settings:\n\n```json\n{\n  \"mcpServers\": {\n    \"memory-system\": {\n      \"command\": \"uv\",\n      \"args\": [\"--directory\", \"/path/to/mcp-memory-system\", \"run\", \"mcp-memory-system\"],\n      \"env\": {}\n    }\n  }\n}\n```\n\n### Configuration Options\n\n- `--workspace-path`: Set the workspace directory (default: ./workspace)\n\n## Permission System\n\nThe server implements a comprehensive permission system:\n\n- **Agent Registration Required**: All agents must be registered before performing any memory operations\n- **Directory-Level Permissions**: Permissions are granted at the directory level, not individual files\n- **Read/Write Separation**: Agents can have different read and write permissions\n- **Workspace Isolation**: Each agent can only access files within their permitted directories\n- **Automatic Directory Creation**: Directories are created automatically when agents are registered\n\n### Permission Examples\n\n```python\n# Agent can read from \"shared\" and \"agent1\" directories, write to \"agent1\" only\nregister_agent_workspace(\n    agent_name=\"agent1\",\n    readable_paths=[\"shared\", \"agent1\"],\n    writable_paths=[\"agent1\"]\n)\n\n# Add additional permissions to existing agent\nupdate_agent_workspace(\n    agent_name=\"agent1\",\n    additional_readable_paths=[\"public_data\"],\n    additional_writable_paths=[\"output\"]\n)\n```\n\n## Safety Features\n\n- **Agent-Based Access Control**: Each agent can only access files within their permitted workspace directories\n- **File Type Filtering**: Automatically blocks operations on binary files (images, videos, PDFs, etc.)\n- **Concurrent Access Control**: File-level locking prevents data corruption during edits\n- **Strict Workspace Sandboxing**: All operations are contained within the specified workspace directory\n- **Path Validation**: Prevents directory traversal attacks with \"../\" path components\n- **UTF-8 Validation**: Ensures text file integrity after operations\n- **Permission Validation**: All operations validate agent permissions before execution\n\n## Error Handling\n\nThe server provides detailed error messages for permission violations, including:\n- Current agent permissions\n- Specific paths that caused the error\n- Suggestions for resolving permission issues\n\n## License\n\nMIT License - see LICENSE file for details.",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "A Model Context Protocol server providing file system management tools with enhanced editing capabilities",
    "version": "0.1.2",
    "project_urls": null,
    "split_keywords": [
        "automation",
        " file-system",
        " llm",
        " mcp",
        " memory"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "e6d2883dd6e3d21c5416a6374f483c17aa0012ecddd950d8daa5c17bb51e043b",
                "md5": "49718d1bc690fd69a18299454d4b314f",
                "sha256": "81927b5c5aa6636bb2c8a951f7eb2a02491fdd3a18c20b6f2a87dac2875cd93e"
            },
            "downloads": -1,
            "filename": "iflow_mcp_memory_system-0.1.2-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "49718d1bc690fd69a18299454d4b314f",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": "==3.12.7",
            "size": 313314,
            "upload_time": "2025-09-01T09:33:59",
            "upload_time_iso_8601": "2025-09-01T09:33:59.938506Z",
            "url": "https://files.pythonhosted.org/packages/e6/d2/883dd6e3d21c5416a6374f483c17aa0012ecddd950d8daa5c17bb51e043b/iflow_mcp_memory_system-0.1.2-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "4cdf4b1e737ca673469c06625cef29b1dbb1825ec6fc5eeca2ac6562a9367740",
                "md5": "c53e4901a1d11e5c24427f410423e9b8",
                "sha256": "57269ce9d2a103e0a9435ea5bf676ee7b793bd7a9e35600155ba799c99927e72"
            },
            "downloads": -1,
            "filename": "iflow_mcp_memory_system-0.1.2.tar.gz",
            "has_sig": false,
            "md5_digest": "c53e4901a1d11e5c24427f410423e9b8",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "==3.12.7",
            "size": 315195,
            "upload_time": "2025-09-01T09:34:01",
            "upload_time_iso_8601": "2025-09-01T09:34:01.370121Z",
            "url": "https://files.pythonhosted.org/packages/4c/df/4b1e737ca673469c06625cef29b1dbb1825ec6fc5eeca2ac6562a9367740/iflow_mcp_memory_system-0.1.2.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-09-01 09:34:01",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "lcname": "iflow-mcp_memory-system"
}
        
Elapsed time: 1.49742s