loading…
Search for a command to run...
loading…
A FastMCP server with web search, local notes CRUD, and a generative UI dashboard using Prefab.
A FastMCP server with web search, local notes CRUD, and a generative UI dashboard using Prefab.
A FastMCP server with three tools that exercise (1) the internet, (2) local-file CRUD, and (3) generative UI via Prefab. Designed to run inside Claude Desktop.
| Tool | Type | Purpose |
|---|---|---|
web_search(query) |
internet | DuckDuckGo Instant Answer API — returns abstract + related topics |
notes_file(action, key, content) |
local CRUD | one tool, action-dispatched (create / read / update / delete / list) over ./notes.json |
show_dashboard() |
UI | renders saved notes as a Prefab card grid (uses @mcp.tool(app=True)) |
Requires uv (brew install uv) and Claude Desktop.
cd /Users/nitingangwar/Documents/Code/eagv3/mcp
uv sync
Edit ~/Library/Application Support/Claude/claude_desktop_config.json and add (or merge) the mcpServers block:
{
"mcpServers": {
"eag-mcp-demo": {
"command": "/opt/homebrew/bin/uv",
"args": [
"run",
"--directory",
"/Users/nitingangwar/Documents/Code/eagv3/mcp",
"python",
"server.py"
]
}
}
}
Restart Claude Desktop. The MCP indicator should show eag-mcp-demo with three tools.
python3 -m venv .venv
.venv/bin/pip install -e .
Then in Claude Desktop config use:
"command": "/Users/nitingangwar/Documents/Code/eagv3/mcp/.venv/bin/python",
"args": ["/Users/nitingangwar/Documents/Code/eagv3/mcp/server.py"]
Paste this in Claude Desktop after the server is wired up:
Find the ownership details of Tata Sons via web search, save a 2–3 sentence summary into my notes file under the key
tata_sons, then open the dashboard so I can see it.
Expected behavior:
web_search("Tata Sons ownership") → DDG abstract.notes_file("create", "tata_sons", "<summary>") → writes to notes.json.show_dashboard() → renders a Prefab card grid inline with one card.Re-run with another company (e.g. "Reliance Industries") and the dashboard now shows two cards.
# Server starts and blocks on stdin (correct):
uv run python server.py
# Or interactive inspector:
npx @modelcontextprotocol/inspector uv run python server.py
In the inspector: list tools, call web_search("Tata Sons"), then call notes_file("create", "x", "y") and confirm notes.json updates on disk.
show_dashboard decorator from @mcp.tool(app=True) to plain @mcp.tool and have it return a Markdown table built from notes.json.server.py # FastMCP server with the 3 tools
notes.json # backing store for notes_file (starts as {})
pyproject.toml # deps: fastmcp[apps], prefab-ui==0.19.1, httpx
Добавь это в claude_desktop_config.json и перезапусти Claude Desktop.
{
"mcpServers": {
"eag-mcp-demo": {
"command": "npx",
"args": []
}
}
}