PluginBench
MCP Server

Ghostfolio MCP MCP Server

io.github.mhajder/ghostfolio-mcp

What is the Ghostfolio MCP MCP server?

MCP server for Ghostfolio portfolio management and financial data access

How to install Ghostfolio MCP

Copy-paste configuration for popular MCP clients.

transport: stdio
Config generated by PluginBench — verify against the source before use.
Environment / auth
  • GHOSTFOLIO_URL
    required

    Ghostfolio base URL (e.g., https://domain.tld:3333)

  • GHOSTFOLIO_TOKEN
    required
    secret

    Ghostfolio API token for authentication

  • GHOSTFOLIO_VERIFY_SSL

    Verify SSL certificates (true/false)

  • GHOSTFOLIO_TIMEOUT

    Request timeout in seconds

  • READ_ONLY_MODE

    Enable read-only mode to restrict write operations

  • GHOSTFOLIO_DISABLED_TAGS

    Comma-separated list of tags to disable tools for

  • LOG_LEVEL

    Logging level (DEBUG, INFO, WARNING, ERROR, CRITICAL)

  • RATE_LIMIT_ENABLED

    Enable rate limiting

  • RATE_LIMIT_MAX_REQUESTS

    Maximum requests per rate limit window

  • RATE_LIMIT_WINDOW_MINUTES

    Rate limit window in minutes

  • TOOL_SEARCH_ENABLED

    Enable FastMCP tool search transform

  • TOOL_SEARCH_STRATEGY

    Tool search strategy (bm25 or regex)

  • TOOL_SEARCH_MAX_RESULTS

    Maximum tool search results returned by search_tools

  • MCP_HTTP_PORT

    Port for HTTP server (default: 8000)

  • MCP_TRANSPORT

    MCP transport type (http for HTTP, stdio for stdio)

Claude Desktop
~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "ghostfolio-mcp": {
      "command": "uvx",
      "args": [
        "ghostfolio-mcp"
      ],
      "env": {
        "GHOSTFOLIO_URL": "<YOUR_GHOSTFOLIO_URL>",
        "GHOSTFOLIO_TOKEN": "<YOUR_GHOSTFOLIO_TOKEN>",
        "GHOSTFOLIO_VERIFY_SSL": "<YOUR_GHOSTFOLIO_VERIFY_SSL>",
        "GHOSTFOLIO_TIMEOUT": "<YOUR_GHOSTFOLIO_TIMEOUT>",
        "READ_ONLY_MODE": "<YOUR_READ_ONLY_MODE>",
        "GHOSTFOLIO_DISABLED_TAGS": "<YOUR_GHOSTFOLIO_DISABLED_TAGS>",
        "LOG_LEVEL": "<YOUR_LOG_LEVEL>",
        "RATE_LIMIT_ENABLED": "<YOUR_RATE_LIMIT_ENABLED>",
        "RATE_LIMIT_MAX_REQUESTS": "<YOUR_RATE_LIMIT_MAX_REQUESTS>",
        "RATE_LIMIT_WINDOW_MINUTES": "<YOUR_RATE_LIMIT_WINDOW_MINUTES>",
        "TOOL_SEARCH_ENABLED": "<YOUR_TOOL_SEARCH_ENABLED>",
        "TOOL_SEARCH_STRATEGY": "<YOUR_TOOL_SEARCH_STRATEGY>",
        "TOOL_SEARCH_MAX_RESULTS": "<YOUR_TOOL_SEARCH_MAX_RESULTS>",
        "MCP_HTTP_PORT": "<YOUR_MCP_HTTP_PORT>",
        "MCP_TRANSPORT": "<YOUR_MCP_TRANSPORT>"
      }
    }
  }
}
Cursor
~/.cursor/mcp.json
{
  "mcpServers": {
    "ghostfolio-mcp": {
      "command": "uvx",
      "args": [
        "ghostfolio-mcp"
      ],
      "env": {
        "GHOSTFOLIO_URL": "<YOUR_GHOSTFOLIO_URL>",
        "GHOSTFOLIO_TOKEN": "<YOUR_GHOSTFOLIO_TOKEN>",
        "GHOSTFOLIO_VERIFY_SSL": "<YOUR_GHOSTFOLIO_VERIFY_SSL>",
        "GHOSTFOLIO_TIMEOUT": "<YOUR_GHOSTFOLIO_TIMEOUT>",
        "READ_ONLY_MODE": "<YOUR_READ_ONLY_MODE>",
        "GHOSTFOLIO_DISABLED_TAGS": "<YOUR_GHOSTFOLIO_DISABLED_TAGS>",
        "LOG_LEVEL": "<YOUR_LOG_LEVEL>",
        "RATE_LIMIT_ENABLED": "<YOUR_RATE_LIMIT_ENABLED>",
        "RATE_LIMIT_MAX_REQUESTS": "<YOUR_RATE_LIMIT_MAX_REQUESTS>",
        "RATE_LIMIT_WINDOW_MINUTES": "<YOUR_RATE_LIMIT_WINDOW_MINUTES>",
        "TOOL_SEARCH_ENABLED": "<YOUR_TOOL_SEARCH_ENABLED>",
        "TOOL_SEARCH_STRATEGY": "<YOUR_TOOL_SEARCH_STRATEGY>",
        "TOOL_SEARCH_MAX_RESULTS": "<YOUR_TOOL_SEARCH_MAX_RESULTS>",
        "MCP_HTTP_PORT": "<YOUR_MCP_HTTP_PORT>",
        "MCP_TRANSPORT": "<YOUR_MCP_TRANSPORT>"
      }
    }
  }
}
Windsurf
~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "ghostfolio-mcp": {
      "command": "uvx",
      "args": [
        "ghostfolio-mcp"
      ],
      "env": {
        "GHOSTFOLIO_URL": "<YOUR_GHOSTFOLIO_URL>",
        "GHOSTFOLIO_TOKEN": "<YOUR_GHOSTFOLIO_TOKEN>",
        "GHOSTFOLIO_VERIFY_SSL": "<YOUR_GHOSTFOLIO_VERIFY_SSL>",
        "GHOSTFOLIO_TIMEOUT": "<YOUR_GHOSTFOLIO_TIMEOUT>",
        "READ_ONLY_MODE": "<YOUR_READ_ONLY_MODE>",
        "GHOSTFOLIO_DISABLED_TAGS": "<YOUR_GHOSTFOLIO_DISABLED_TAGS>",
        "LOG_LEVEL": "<YOUR_LOG_LEVEL>",
        "RATE_LIMIT_ENABLED": "<YOUR_RATE_LIMIT_ENABLED>",
        "RATE_LIMIT_MAX_REQUESTS": "<YOUR_RATE_LIMIT_MAX_REQUESTS>",
        "RATE_LIMIT_WINDOW_MINUTES": "<YOUR_RATE_LIMIT_WINDOW_MINUTES>",
        "TOOL_SEARCH_ENABLED": "<YOUR_TOOL_SEARCH_ENABLED>",
        "TOOL_SEARCH_STRATEGY": "<YOUR_TOOL_SEARCH_STRATEGY>",
        "TOOL_SEARCH_MAX_RESULTS": "<YOUR_TOOL_SEARCH_MAX_RESULTS>",
        "MCP_HTTP_PORT": "<YOUR_MCP_HTTP_PORT>",
        "MCP_TRANSPORT": "<YOUR_MCP_TRANSPORT>"
      }
    }
  }
}
VS Code
.vscode/mcp.json
{
  "servers": {
    "ghostfolio-mcp": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "ghostfolio-mcp"
      ],
      "env": {
        "GHOSTFOLIO_URL": "<YOUR_GHOSTFOLIO_URL>",
        "GHOSTFOLIO_TOKEN": "<YOUR_GHOSTFOLIO_TOKEN>",
        "GHOSTFOLIO_VERIFY_SSL": "<YOUR_GHOSTFOLIO_VERIFY_SSL>",
        "GHOSTFOLIO_TIMEOUT": "<YOUR_GHOSTFOLIO_TIMEOUT>",
        "READ_ONLY_MODE": "<YOUR_READ_ONLY_MODE>",
        "GHOSTFOLIO_DISABLED_TAGS": "<YOUR_GHOSTFOLIO_DISABLED_TAGS>",
        "LOG_LEVEL": "<YOUR_LOG_LEVEL>",
        "RATE_LIMIT_ENABLED": "<YOUR_RATE_LIMIT_ENABLED>",
        "RATE_LIMIT_MAX_REQUESTS": "<YOUR_RATE_LIMIT_MAX_REQUESTS>",
        "RATE_LIMIT_WINDOW_MINUTES": "<YOUR_RATE_LIMIT_WINDOW_MINUTES>",
        "TOOL_SEARCH_ENABLED": "<YOUR_TOOL_SEARCH_ENABLED>",
        "TOOL_SEARCH_STRATEGY": "<YOUR_TOOL_SEARCH_STRATEGY>",
        "TOOL_SEARCH_MAX_RESULTS": "<YOUR_TOOL_SEARCH_MAX_RESULTS>",
        "MCP_HTTP_PORT": "<YOUR_MCP_HTTP_PORT>",
        "MCP_TRANSPORT": "<YOUR_MCP_TRANSPORT>"
      }
    }
  }
}
Claude Code
claude mcp add ghostfolio-mcp --env GHOSTFOLIO_URL=<YOUR_GHOSTFOLIO_URL> --env GHOSTFOLIO_TOKEN=<YOUR_GHOSTFOLIO_TOKEN> --env GHOSTFOLIO_VERIFY_SSL=<YOUR_GHOSTFOLIO_VERIFY_SSL> --env GHOSTFOLIO_TIMEOUT=<YOUR_GHOSTFOLIO_TIMEOUT> --env READ_ONLY_MODE=<YOUR_READ_ONLY_MODE> --env GHOSTFOLIO_DISABLED_TAGS=<YOUR_GHOSTFOLIO_DISABLED_TAGS> --env LOG_LEVEL=<YOUR_LOG_LEVEL> --env RATE_LIMIT_ENABLED=<YOUR_RATE_LIMIT_ENABLED> --env RATE_LIMIT_MAX_REQUESTS=<YOUR_RATE_LIMIT_MAX_REQUESTS> --env RATE_LIMIT_WINDOW_MINUTES=<YOUR_RATE_LIMIT_WINDOW_MINUTES> --env TOOL_SEARCH_ENABLED=<YOUR_TOOL_SEARCH_ENABLED> --env TOOL_SEARCH_STRATEGY=<YOUR_TOOL_SEARCH_STRATEGY> --env TOOL_SEARCH_MAX_RESULTS=<YOUR_TOOL_SEARCH_MAX_RESULTS> --env MCP_HTTP_PORT=<YOUR_MCP_HTTP_PORT> --env MCP_TRANSPORT=<YOUR_MCP_TRANSPORT> -- uvx ghostfolio-mcp

Related MCP servers

MCP server for LibreNMS network monitoring - query devices, ports, alerts, and manage infrastructure

View repository →

MCP server for Zabbix monitoring and automation

View repository →