StudyToolMCP
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., "@StudyToolMCPgenerate flashcards on World War II causes"
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.
StudyTools MCP
A Model Context Protocol (MCP) server that exposes four study tools — PDF summarization, flashcard generation, math/code problem solving, and trust-filtered web search — to any MCP-compatible client (Claude Desktop, MCP Inspector, custom agents, etc.).
See Student_MCP_Server_PRD.md and Student_MCP_Server_TechStack.md for the full spec and design rationale.
Tools
Tool | Description |
| Extracts text from a PDF and returns a summary + 3-5 key points. |
| Turns raw notes/text into Q&A flashcard pairs (default 10). |
|
|
| Searches the web via Tavily, filtered by default ( |
Prerequisites
Local setup
python -m venv .venv
.venv\Scripts\activate # Windows
# source .venv/bin/activate # macOS/Linux
pip install -r requirements.txt
cp .env.example .env # then fill in GROQ_API_KEY and TAVILY_API_KEYRunning locally
MCP Inspector (browser UI to call tools directly, no client wiring needed):
mcp dev server.pyOpens a browser at localhost:6274 listing all four tools — fill in inputs and run them.
Claude Desktop: add an entry to your claude_desktop_config.json
(Windows: %APPDATA%\Claude\claude_desktop_config.json; some installs — e.g. Microsoft
Store builds — sandbox this under
%LOCALAPPDATA%\Packages\<PackageName>\LocalCache\Roaming\Claude\):
{
"mcpServers": {
"studytools": {
"command": "C:\\path\\to\\project\\.venv\\Scripts\\python.exe",
"args": ["C:\\path\\to\\project\\server.py"]
}
}
}Fully quit and relaunch Claude Desktop afterward, then check the tools/connectors icon
in a new chat for studytools.
By default the server runs over stdio (MCP_TRANSPORT unset). No host/port needed
for local client use.
Deploying
The server supports streamable-http in addition to stdio, needed for any remotely hosted deployment (a hosted process can't run stdio the way a local desktop client does).
AWS EC2 (free tier) — primary target
Uses a t2.micro/t3.micro instance (750 hrs/month free for 12 months) running the server as a systemd service so it survives reboots and restarts on crash.
Launch an instance: Ubuntu 22.04/24.04,
t2.microort3.micro(free-tier eligible), with a key pair you can SSH in with.Security group: allow inbound
port
22(SSH) from your IP only, not0.0.0.0/0port
8000(the MCP endpoint) from0.0.0.0/0if you want it publicly reachable, or restrict it to known client IPs — note there's no auth in front of the server (matches the PRD's v1 scope, which excludes multi-user auth), so anything with network access can call your tools and consume your Groq/Tavily quota.
SSH in, clone the repo, and run the setup script:
git clone <your-repo-url> studytools-mcp cd studytools-mcp bash deploy/setup_ec2.shThis installs Python deps into a venv, creates
.envfrom.env.exampleif missing, and registers/startsdeploy/studytools-mcp.servicevia systemd.Add your real API keys:
nano .env, fill inGROQ_API_KEYandTAVILY_API_KEY, thensudo systemctl restart studytools-mcp.Verify:
curl http://<ec2-public-ip>:8000/mcp(a 400/406 response is expected from a bare curl request — it means the server is up; a real MCP client will complete the full handshake). Logs:sudo journalctl -u studytools-mcp -f.
This serves plain HTTP, not HTTPS — fine for a free-tier demo, but note it if you ever point a client that requires TLS at it (adding an Nginx reverse proxy + Let's Encrypt would be the next step, out of scope for v1).
Render — alternative
render.yaml is included as a documented fallback if you'd rather not manage a server
yourself:
Push this repo to GitHub/GitLab/Bitbucket.
In Render, choose New > Blueprint and point it at the repo — it reads render.yaml and provisions the service automatically.
Add
GROQ_API_KEYandTAVILY_API_KEYunder the service's Environment tab (markedsync: falsein the blueprint, so Render won't set them for you).The MCP endpoint is reachable at
https://<your-service>.onrender.com/mcp.
If Render's health check fails against / (the MCP route only exists at /mcp), set
the service's Health Check Path to /mcp in the dashboard.
Project structure
app.py # FastMCP instance, host/port/env config
llm.py # Groq client wrapper (chat_completion, JSON mode)
server.py # Entrypoint — registers tools, runs stdio or streamable-http
tools/
pdf_tools.py # summarize_pdf
flashcard_tools.py # generate_flashcards
solve_tools.py # solve_and_explain
search_tools.py # web_search
deploy/
studytools-mcp.service # systemd unit for AWS EC2
setup_ec2.sh # EC2 provisioning script
requirements.txt
render.yaml # Render Blueprint (alternative deploy path)
.env.exampleThis server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- 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/Naman-sys/StudyToolMCP'
If you have feedback or need assistance with the MCP directory API, please join our Discord server