The EpicMe MCP server is an experimental personal journaling application and MCP tool demonstration platform that provides:
Journaling Features: Create, manage, and organize journal entries with tags, moods, and privacy settings. Get AI-powered tag suggestions and summaries.
User Management: Authenticate users via email with TOTP validation, manage authentication sessions, and access user information.
Tag Management: Create, update, delete, and associate tags with journal entries.
MCP Demonstrations: Echo messages, add numbers, simulate long-running operations with progress updates, demonstrate message annotations (error, success, debug), provide resource references (ID 1-100), and showcase user elicitation for gathering information like favorite color, number, and pets.
Utilities: Print environment variables for debugging, sample text from LLMs, fetch tiny image references, return multiple resource links, and provide structured content like weather data with schema validation.
EpicMe MCP
This is an example of an application that's exclusively accessible via Model Context Protocol (MCP).
Everything from user registration and authentication to interacting with user data is handled via MCP tools.
The goal is to demonstrate a possible future of applications where users interact with our apps via natural language with LLMs and the MCP protocol. This will also be the basis upon which I will teach how to build MCP tools on EpicAI.pro.
Authentication
The authentication flow is unique because we need to be able to go through OAuth for users who don't exist yet (users need to register first). So we generate a grant automatically without the user having to go through the OAuth flow themselves. Then we allow the user to claim the grant via a TOTP code which is emailed to them.
This works well enough.
Known Issues
During development, if you delete the .wrangler
directory, you're deleting the
dynamically registered clients. Those clients don't know that their entries have
been deleted so they won't attempt to re-register. In the MCP Inspector, you can
go in the browser dev tools and clear the session storage and it will
re-register. In other clients I do not know how to make them re-register.
Tools
An application that demonstrates the future of user interactions through natural language with LLMs, enabling user registration, authentication, and data interaction exclusively via Model Context Protocol (MCP) tools.
Related MCP Servers
- -securityAlicense-qualityA Model Context Protocol (MCP) server that enables LLMs to interact directly the documents that they have on-disk through agentic RAG and hybrid search in LanceDB. Ask LLMs questions about the dataset as a whole or about specific documents.Last updated -672MIT License
- -securityAlicense-qualityA Model Context Protocol Server that enables LLMs to interact with and execute REST API calls through natural language prompts, supporting GET/PUT/POST/PATCH operations on configured APIs.Last updated -6Apache 2.0
- -securityFlicense-qualityA simple application demonstrating Model Context Protocol (MCP) integration with FastAPI and Streamlit, allowing users to interact with LLMs through a clean interface.Last updated -3