mcp-server-thoth


Namemcp-server-thoth JSON
Version 0.2.1 PyPI version JSON
download
home_pageNone
SummaryMCP server for persistent codebase memory with semantic search
upload_time2025-07-08 20:49:33
maintainerNone
docs_urlNone
authorNone
requires_python<3.13,>=3.10
licenseMIT
keywords analysis codebase mcp memory semantic-search visualization
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Thoth

MCP server providing persistent codebase memory for AI assistants.

## Overview

Thoth indexes code repositories using AST parsing and provides tools for symbol lookup, cross-repository navigation, and architecture visualization. The index persists in `~/.thoth/`, giving Claude and other MCP-compatible assistants memory across conversations.

## Installation

### Claude Desktop

Add to your configuration file:
- macOS: `~/Library/Application Support/Claude/claude_desktop_config.json`
- Windows: `%APPDATA%\Claude\claude_desktop_config.json`
- Linux: `~/.config/claude/claude_desktop_config.json`

Single repository:
```json
{
  "mcpServers": {
    "thoth": {
      "command": "uvx",
      "args": ["mcp-server-thoth", "--init", "/path/to/thoth"]
    }
  }
}
```

Multiple repositories:
```json
{
  "mcpServers": {
    "thoth": {
      "command": "uvx",
      "args": ["mcp-server-thoth", "--init", "/path/to/repo1", "/path/to/repo2"]
    }
  }
}
```

The `--init` flag indexes repositories on first run. Subsequent runs use the cached index.


## Tools

- `find_definition` - Locate symbol definitions
- `get_file_structure` - Extract functions, classes, imports from a file
- `search_symbols` - Search symbols by name pattern
- `get_callers` - Find callers of a function
- `generate_module_diagram` - Generate Mermaid dependency diagrams
- `generate_system_architecture` - Visualize cross-repository relationships
- `trace_api_flow` - Trace client-server communication paths
- `list_repositories` - List indexed repositories

## Architecture

Thoth uses Python's `ast` module for parsing (with planned tree-sitter migration for multi-language support). The index is stored in SQLite at `~/.thoth/index.db` with the following schema:

- `symbols` - Functions, classes, methods with location and parent relationships
- `imports` - Import statements with cross-repository resolution
- `calls` - Function call graph (caller → callee mapping)
- `files` - File metadata and content hashes for incremental updates

## Implementation Notes

The indexer ignores common build artifacts and virtual environments. Cross-repository imports are resolved by checking if the target repository is indexed. Call graph analysis currently tracks direct calls within the same repository.

For large monorepos, pre-index before adding to Claude:
```bash
uvx mcp-server-thoth --init /path/to/large-repo
```

## Development

```bash
git clone <repository>
cd thoth
uv pip install -e ".[dev]"
```

## License

MIT
            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "mcp-server-thoth",
    "maintainer": null,
    "docs_url": null,
    "requires_python": "<3.13,>=3.10",
    "maintainer_email": "Varun Shijo <varun.shijo@gmail.com>",
    "keywords": "analysis, codebase, mcp, memory, semantic-search, visualization",
    "author": null,
    "author_email": "Varun Shijo <varunshi@buffalo.edu>",
    "download_url": "https://files.pythonhosted.org/packages/d0/f4/c81c83e555de0a51745825bc6c1849865ffb58c92b87c385c0a3c3fbc2cc/mcp_server_thoth-0.2.1.tar.gz",
    "platform": null,
    "description": "# Thoth\n\nMCP server providing persistent codebase memory for AI assistants.\n\n## Overview\n\nThoth indexes code repositories using AST parsing and provides tools for symbol lookup, cross-repository navigation, and architecture visualization. The index persists in `~/.thoth/`, giving Claude and other MCP-compatible assistants memory across conversations.\n\n## Installation\n\n### Claude Desktop\n\nAdd to your configuration file:\n- macOS: `~/Library/Application Support/Claude/claude_desktop_config.json`\n- Windows: `%APPDATA%\\Claude\\claude_desktop_config.json`\n- Linux: `~/.config/claude/claude_desktop_config.json`\n\nSingle repository:\n```json\n{\n  \"mcpServers\": {\n    \"thoth\": {\n      \"command\": \"uvx\",\n      \"args\": [\"mcp-server-thoth\", \"--init\", \"/path/to/thoth\"]\n    }\n  }\n}\n```\n\nMultiple repositories:\n```json\n{\n  \"mcpServers\": {\n    \"thoth\": {\n      \"command\": \"uvx\",\n      \"args\": [\"mcp-server-thoth\", \"--init\", \"/path/to/repo1\", \"/path/to/repo2\"]\n    }\n  }\n}\n```\n\nThe `--init` flag indexes repositories on first run. Subsequent runs use the cached index.\n\n\n## Tools\n\n- `find_definition` - Locate symbol definitions\n- `get_file_structure` - Extract functions, classes, imports from a file\n- `search_symbols` - Search symbols by name pattern\n- `get_callers` - Find callers of a function\n- `generate_module_diagram` - Generate Mermaid dependency diagrams\n- `generate_system_architecture` - Visualize cross-repository relationships\n- `trace_api_flow` - Trace client-server communication paths\n- `list_repositories` - List indexed repositories\n\n## Architecture\n\nThoth uses Python's `ast` module for parsing (with planned tree-sitter migration for multi-language support). The index is stored in SQLite at `~/.thoth/index.db` with the following schema:\n\n- `symbols` - Functions, classes, methods with location and parent relationships\n- `imports` - Import statements with cross-repository resolution\n- `calls` - Function call graph (caller \u2192 callee mapping)\n- `files` - File metadata and content hashes for incremental updates\n\n## Implementation Notes\n\nThe indexer ignores common build artifacts and virtual environments. Cross-repository imports are resolved by checking if the target repository is indexed. Call graph analysis currently tracks direct calls within the same repository.\n\nFor large monorepos, pre-index before adding to Claude:\n```bash\nuvx mcp-server-thoth --init /path/to/large-repo\n```\n\n## Development\n\n```bash\ngit clone <repository>\ncd thoth\nuv pip install -e \".[dev]\"\n```\n\n## License\n\nMIT",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "MCP server for persistent codebase memory with semantic search",
    "version": "0.2.1",
    "project_urls": {
        "Bug Tracker": "https://github.com/braininahat/thoth/issues",
        "Homepage": "https://github.com/braininahat/thoth",
        "Source Code": "https://github.com/braininahat/thoth"
    },
    "split_keywords": [
        "analysis",
        " codebase",
        " mcp",
        " memory",
        " semantic-search",
        " visualization"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "f998cd2955823c71cd2dcd08f479acbd8fa1f3c802700f19562a966b76037b9f",
                "md5": "57adb67564adadc38fc049732d86ceaa",
                "sha256": "7f338601d103b71249f12bfdc5cca6ad293802143cde4a434123e587597e1cda"
            },
            "downloads": -1,
            "filename": "mcp_server_thoth-0.2.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "57adb67564adadc38fc049732d86ceaa",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": "<3.13,>=3.10",
            "size": 35378,
            "upload_time": "2025-07-08T20:49:32",
            "upload_time_iso_8601": "2025-07-08T20:49:32.145174Z",
            "url": "https://files.pythonhosted.org/packages/f9/98/cd2955823c71cd2dcd08f479acbd8fa1f3c802700f19562a966b76037b9f/mcp_server_thoth-0.2.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "d0f4c81c83e555de0a51745825bc6c1849865ffb58c92b87c385c0a3c3fbc2cc",
                "md5": "295d3df4c993637abc3428d63e51dcf3",
                "sha256": "b24e3be8f35a17acdfdebf0fd0da7e5eecfb4dfaf5b7fa900425e4fb3e2b2621"
            },
            "downloads": -1,
            "filename": "mcp_server_thoth-0.2.1.tar.gz",
            "has_sig": false,
            "md5_digest": "295d3df4c993637abc3428d63e51dcf3",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "<3.13,>=3.10",
            "size": 320620,
            "upload_time": "2025-07-08T20:49:33",
            "upload_time_iso_8601": "2025-07-08T20:49:33.002218Z",
            "url": "https://files.pythonhosted.org/packages/d0/f4/c81c83e555de0a51745825bc6c1849865ffb58c92b87c385c0a3c3fbc2cc/mcp_server_thoth-0.2.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-07-08 20:49:33",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "braininahat",
    "github_project": "thoth",
    "github_not_found": true,
    "lcname": "mcp-server-thoth"
}
        
Elapsed time: 1.26885s