Data as of

Context Portal MCP (ConPort) for Claude Desktop: Setup

Context Portal stores structured project memory for Claude Desktop in a workspace-specific SQLite database.

What you can do with Context Portal MCP (ConPort) in Claude Desktop

Choose it for persistent, linked project memory rather than a collection of unstructured context files.

  • Retain architectural decisions across assistant sessions.
  • Track tasks, progress, and project-specific terminology.

Before you start: Context Portal MCP (ConPort) in Claude Desktop

  • Python 3.8 or later recommended
  • uv with uvx
  • An MCP-compatible client that supplies workspace context

Uses the README's alternative without launch-time --workspace_id. Supply workspace_id on tool calls; database initialization then occurs on the first call. Absolute launch-time paths are another option. Some IDEs do not expand ${workspaceFolder}. No required environment variables are stated.

Context Portal MCP (ConPort) Claude Desktop configuration

  1. Choose Claude Desktop configuration scope

    For Context Portal MCP (ConPort), open macOS: ~/Library/Application Support/Claude/claude_desktop_config.json Windows: %APPDATA%\Claude\claude_desktop_config.json. Merge under mcpServers via Settings → Developer → Edit Config when available.

  2. Add Context Portal MCP (ConPort) to Claude Desktop

    Use the context-portal entry below in mcpServers. Keep Context Portal MCP (ConPort)'s documented stdio connection fields and your other Claude Desktop entries.

  3. Check Context Portal MCP (ConPort) in Claude Desktop

    Context Portal MCP (ConPort): Fully quit and reopen Claude Desktop; check developer diagnostics.

Config file · macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

Windows: %APPDATA%\Claude\claude_desktop_config.json

JSON
{
  "mcpServers": {
    "context-portal": {
      "command": "uvx",
      "args": [
        "--from",
        "context-portal-mcp",
        "conport-mcp",
        "--mode",
        "stdio",
        "--log-file",
        "./logs/conport.log",
        "--log-level",
        "INFO"
      ],
      "env": {}
    }
  }
}

Context Portal MCP (ConPort) tools available to Claude Desktop

Context Portal MCP (ConPort)'s stored tool list documents 1 tool; compare it with Claude Desktop's connected tool list, because the stored list is not a live check.

get_conport_schema

When Claude Desktop requests get_conport_schema from Context Portal MCP (ConPort), review the action before approving it.

Discover exact ConPort tool names and parameter schemas dynamically.

Context Portal MCP (ConPort): full stored tool descriptions

Troubleshooting Context Portal MCP (ConPort) in Claude Desktop

  • Fully quit and reopen Claude Desktop for Context Portal MCP (ConPort). If uvx --from (from uv, for Python tools) is missing, check the desktop process's PATH, which may differ from your terminal.
  • Context Portal MCP (ConPort) uses stdio here: Claude Desktop must keep the configured process running; protocol output belongs on stdout and diagnostics on stderr.
  • Known limitation: Some IDEs do not expand workspace variables as expected.
  • Known limitation: Reliable agent use benefits from initialization and custom-instruction setup.
  • General Claude Desktop troubleshooting lives in the /clients/claude-desktop guide.

Context Portal MCP (ConPort) — details. Claude Desktop guide

Frequently asked questions

Claude Desktop loads Context Portal MCP (ConPort) from claude_desktop_config.json: ~/Library/Application Support/Claude/ on macOS, or %APPDATA%\Claude\ on Windows. Open it via Settings → Developer → Edit Config when available.

Claude Desktop's context-portal example uses stdio.

Context Portal MCP (ConPort)'s Claude Desktop configuration invokes uvx --from (from uv, for Python tools).

Context Portal MCP (ConPort)'s stored list contains 1 tool, including get_conport_schema. Compare those names with Claude Desktop's connected tool list; the stored list is not a live check.

Each workspace gets a SQLite database. The README identifies context_portal/context.db as the automatically created database location.

Use an absolute --workspace_id path or supply workspace_id on each tool call instead of relying on variable expansion.