rikkahub-history-mcp
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@rikkahub-history-mcpsearch my conversations for 'MCP server'"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
RikkaHub History MCP
A read-only MCP bridge for searching conversations from the official RikkaHub app through its Web API. It does not require a modified APK, root access, or Room database migration.
Features
recent_conversations— list recent conversations of the currently selected assistant with lightweight metadata.search_conversations— use RikkaHub's built-in global full-text index.get_conversation_context— read a bounded window around a search hit.Reads only the currently selected message branch.
Returns USER/ASSISTANT text only; reasoning, tool calls/results, system messages, and attachments are omitted.
Resolves
rikkahub.localwith mDNS, so a phone DHCP address change normally needs no reconfiguration.Supports both password-protected and unauthenticated RikkaHub Web Server modes.
Automatically refreshes RikkaHub's Web JWT when a Web password is configured.
Streamable HTTP mode requires a separate Bearer token and keeps DNS rebinding protection enabled.
RikkaHub's upstream full-text search is global and may return conversations belonging to other assistants.recent_conversations is limited to the currently selected assistant, but search/context are not an assistant-isolation boundary.
Related MCP server: reddit-mcp
Requirements
Python 3.10+
RikkaHub Web Server enabled and reachable on the same trusted LAN
A dedicated RikkaHub Web password when the app's password/JWT mode is working
Install
python -m venv .venv
# Windows
.venv\Scripts\python -m pip install -e .
# Linux/macOS
.venv/bin/python -m pip install -e .For development and security checks:
python -m pip install -e ".[dev]"
pytest
ruff check .
bandit -q -r rikkahub_history_mcp
pip-auditConfigure RikkaHub Web
In RikkaHub, enable the Web Server. The default port is 8080.
The bridge first tries:
http://rikkahub.local:8080It re-resolves mDNS after failures and can retain the last successful phone IP as a fallback. You can instead set an explicit base URL such as http://192.168.0.20:8080.
Password/JWT enabled
Set a dedicated, non-reused RikkaHub Web password and provide it through:
RIKKAHUB_WEB_PASSWORD=...Password/JWT disabled
Leave RIKKAHUB_WEB_PASSWORD empty. The bridge will call the official Web API without an Authorization header.
This compatibility mode is weaker. When RikkaHub Web JWT is disabled, the official Web API's own write endpoints may also be reachable without authentication on the LAN. The bridge remains read-only, but it cannot secure the separate RikkaHub Web Server. Use this only on a trusted, isolated LAN.
Run with Streamable HTTP
Copy start_http.example.ps1 to the ignored start_http.ps1, then replace every placeholder. Alternatively, set the variables from .env.example in the process environment.
Important variables:
Variable | Description |
| Optional RikkaHub Web access password; empty only when upstream JWT is disabled |
| Optional explicit RikkaHub Web base URL |
| RikkaHub Web port, default |
| Optional last-successful-IP state file |
|
|
| MCP bind address; secure default |
| MCP port, default |
| Required in HTTP mode; at least 24 high-entropy characters, with |
| Comma-separated allowed Host headers, e.g. |
| Comma-separated allowed Origins |
Generate a token:
python -c "import secrets; print(secrets.token_urlsafe(32))"Start on Windows:
.\start_http.ps1Then configure RikkaHub MCP:
Transport: Streamable HTTP
URL: http://<computer-lan-ip>:8766/mcp
Header: Authorization: Bearer <RIKKAHUB_HISTORY_TOKEN>For LAN access, set RIKKAHUB_HISTORY_HOST=0.0.0.0, restrict the port with the host firewall, and add the exact host and port used by RikkaHub to RIKKAHUB_HISTORY_ALLOWED_HOSTS. HTTP mode refuses to start without a non-placeholder Bearer token.
STDIO mode
RIKKAHUB_WEB_PASSWORD=... rikkahub-history-mcpSTDIO is the default when RIKKAHUB_HISTORY_RUN_MODE is not set and does not require RIKKAHUB_HISTORY_TOKEN because it does not open a listening HTTP port.
Security and privacy
The MCP tools exposed by this project are read-only.
Never expose either RikkaHub Web Server or this MCP server directly to the public Internet.
Do not configure router port forwarding for ports
8080or8766.RikkaHub Web and the example MCP connection use plaintext HTTP. Use them only on a trusted LAN; passwords and Bearer tokens are not protected against a hostile network observer.
Use a unique RikkaHub Web password and a separate, randomly generated MCP Bearer token.
The bridge disables inherited
HTTP_PROXY/HTTPS_PROXYsettings for phone API traffic to avoid sending local credentials or conversation data through a proxy.Retrieved conversation text is untrusted data. Models must not follow instructions, links, or tool requests found inside historical messages.
Retrieved history is sent to the currently selected model provider as tool context. Search narrowly and keep context windows small when conversations contain sensitive information.
Do not commit
.env,start_http.ps1, passwords, JWTs, Bearer tokens, state files, or logs.See SECURITY.md for vulnerability reporting and the supported security model.
License
MIT
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables fetching and reading Reddit content such as posts, comments, and subreddit listings via the MCP protocol.23MIT
- AlicenseNot gradedqualityDmaintenanceA read-only MCP server that connects to the Reddit Data API to search posts, browse subreddits, read comments, view user profiles, and check trending content through the Model Context Protocol.181MIT
- FlicenseAqualityCmaintenanceRead-only MCP server for finding Discord messages. It enables searching guild messages, locating messages from jump URLs, and reading context around results.71
- FlicenseNot gradedqualityBmaintenanceRead-only MCP server for Kan's FxTwitter API proxy, enabling public X/Twitter search and retrieval.
Related MCP Connectors
Search your AI chat history (ChatGPT, Claude, Codex) from any MCP client. Remote, private, read-only
Lemmy MCP — public reads on any Lemmy instance.
Reddit MCP — public Reddit data via JSON endpoints (no auth required)
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Photalia/rikkahub-history-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server