essentials
mcpotherio.github.fieldcure/essentials · v2.6.1
Essential MCP server: HTTP, web search, downloads, Wolfram|Alpha, shell, JS, file I/O, memory.
run it
on your own machines, one way per deploy methodgenerated from the record, not tested yet
#!/usr/bin/env bash # essentials (io.github.fieldcure/essentials), recipe baremetal (generated). # Generated by Hub for toolset "my-agent"; started by mcp-my-agent-essentials.service. set -euo pipefail export HOST=127.0.0.1 PORT=8101 exec uvx mcp-proxy --host 127.0.0.1 --port 8101 --pass-environment -- dnx [email protected] --yes [Unit] Description=MCP server essentials (toolset my-agent), generated by Hub After=network-online.target Wants=network-online.target [Service] Type=simple User=mcp Group=mcp EnvironmentFile=/etc/mcp/my-agent.env Environment=HOME=/var/lib/mcp/essentials WorkingDirectory=/var/lib/mcp/essentials ExecStart=/opt/mcp/my-agent/bin/essentials.sh Restart=on-failure RestartSec=5 NoNewPrivileges=true ProtectSystem=strict ProtectHome=true PrivateTmp=true ReadWritePaths=/var/lib/mcp/essentials [Install] WantedBy=multi-user.target
connect to it
copy what your client needsdnx [email protected] --yes # env: ESSENTIALS_SEARCH_ENGINE, ESSENTIALS_SEARCH_API_KEY, SERPER_API_KEY, SERPAPI_API_KEY, TAVILY_API_KEY, WOLFRAM_APPID, ESSENTIALS_MEMORY_PATH, ESSENTIALS_DOWNLOAD_DIRECTORY, ESSENTIALS_SETTINGS_PATH
{
"mcpServers": {
"essentials": {
"command": "dnx",
"args": [
"[email protected]",
"--yes"
],
"env": {
"ESSENTIALS_SEARCH_ENGINE": "${ESSENTIALS_SEARCH_ENGINE}",
"ESSENTIALS_SEARCH_API_KEY": "${ESSENTIALS_SEARCH_API_KEY}",
"SERPER_API_KEY": "${SERPER_API_KEY}",
"SERPAPI_API_KEY": "${SERPAPI_API_KEY}",
"TAVILY_API_KEY": "${TAVILY_API_KEY}",
"WOLFRAM_APPID": "${WOLFRAM_APPID}",
"ESSENTIALS_MEMORY_PATH": "${ESSENTIALS_MEMORY_PATH}",
"ESSENTIALS_DOWNLOAD_DIRECTORY": "${ESSENTIALS_DOWNLOAD_DIRECTORY}",
"ESSENTIALS_SETTINGS_PATH": "${ESSENTIALS_SETTINGS_PATH}"
}
}
}
}
#!/usr/bin/env bash
# Registers every server with Claude Code (run once; `claude mcp list` to check).
set -euo pipefail
set -a; [ -f .env ] && source .env; set +a
claude mcp add essentials -e "ESSENTIALS_SEARCH_ENGINE=${ESSENTIALS_SEARCH_ENGINE}" -e "ESSENTIALS_SEARCH_API_KEY=${ESSENTIALS_SEARCH_API_KEY}" -e "SERPER_API_KEY=${SERPER_API_KEY}" -e "SERPAPI_API_KEY=${SERPAPI_API_KEY}" -e "TAVILY_API_KEY=${TAVILY_API_KEY}" -e "WOLFRAM_APPID=${WOLFRAM_APPID}" -e "ESSENTIALS_MEMORY_PATH=${ESSENTIALS_MEMORY_PATH}" -e "ESSENTIALS_DOWNLOAD_DIRECTORY=${ESSENTIALS_DOWNLOAD_DIRECTORY}" -e "ESSENTIALS_SETTINGS_PATH=${ESSENTIALS_SETTINGS_PATH}" -- dnx [email protected] --yes
{
"mcpServers": {
"essentials": {
"command": "dnx",
"args": [
"[email protected]",
"--yes"
],
"env": {
"ESSENTIALS_SEARCH_ENGINE": "${ESSENTIALS_SEARCH_ENGINE}",
"ESSENTIALS_SEARCH_API_KEY": "${ESSENTIALS_SEARCH_API_KEY}",
"SERPER_API_KEY": "${SERPER_API_KEY}",
"SERPAPI_API_KEY": "${SERPAPI_API_KEY}",
"TAVILY_API_KEY": "${TAVILY_API_KEY}",
"WOLFRAM_APPID": "${WOLFRAM_APPID}",
"ESSENTIALS_MEMORY_PATH": "${ESSENTIALS_MEMORY_PATH}",
"ESSENTIALS_DOWNLOAD_DIRECTORY": "${ESSENTIALS_DOWNLOAD_DIRECTORY}",
"ESSENTIALS_SETTINGS_PATH": "${ESSENTIALS_SETTINGS_PATH}"
}
}
}
}
{
"servers": {
"essentials": {
"type": "stdio",
"command": "dnx",
"args": [
"[email protected]",
"--yes"
],
"env": {
"ESSENTIALS_SEARCH_ENGINE": "${ESSENTIALS_SEARCH_ENGINE}",
"ESSENTIALS_SEARCH_API_KEY": "${ESSENTIALS_SEARCH_API_KEY}",
"SERPER_API_KEY": "${SERPER_API_KEY}",
"SERPAPI_API_KEY": "${SERPAPI_API_KEY}",
"TAVILY_API_KEY": "${TAVILY_API_KEY}",
"WOLFRAM_APPID": "${WOLFRAM_APPID}",
"ESSENTIALS_MEMORY_PATH": "${ESSENTIALS_MEMORY_PATH}",
"ESSENTIALS_DOWNLOAD_DIRECTORY": "${ESSENTIALS_DOWNLOAD_DIRECTORY}",
"ESSENTIALS_SETTINGS_PATH": "${ESSENTIALS_SETTINGS_PATH}"
}
}
}
}
name: my-agent target: local servers: - hub: io.github.fieldcure/essentials
- not probed yet: tools unpinned, ingest lists them
tools
Not probed yetThe tools appear once the hub or its worker has listed this entry. Running it still works: your client lists them on first start.