Context7
Up-to-date docs for AI agents
제작자가 쓴 설명(영어 원문)
Essential MCP server: HTTP, web search, downloads, Wolfram|Alpha, shell, JS, file I/O, memory.
이 세 가지는 절대 하나의 점수로 합치지 않아요. 의견, 측정, 인기는 서로 다른 것이니까요.
이 서버는 아직 쉬운 말로 된 요약을 쓰지 못했어요. 아래는 레지스트리에서 읽어 온 사실이에요.
쓰고 있는 AI 앱을 고른 다음 설정을 복사하세요.
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어떤 앱을 쓰세요?
위에서 앱을 고르세요. 기억해 두었다가 다음부터는 버튼에 “…에 설치”라고 표시해요.
Claude Desktop → Settings → Developer → Edit Config를 열고 claude_desktop_config.json에 이 내용을 붙여 넣으세요
{
"mcpServers": {
"essentials": {
"command": "dnx",
"args": [
"FieldCure.Mcp.Essentials",
"--yes"
],
"env": {
"ESSENTIALS_SEARCH_ENGINE": "your-value",
"ESSENTIALS_SEARCH_API_KEY": "your-value",
"SERPER_API_KEY": "your-value",
"SERPAPI_API_KEY": "your-value",
"TAVILY_API_KEY": "your-value",
"WOLFRAM_APPID": "your-value",
"ESSENTIALS_MEMORY_PATH": "your-value",
"ESSENTIALS_DOWNLOAD_DIRECTORY": "your-value",
"ESSENTIALS_SETTINGS_PATH": "your-value"
}
}
}
}터미널에서 이 명령어를 실행하세요
claude mcp add essentials --env ESSENTIALS_SEARCH_ENGINE=your-value --env ESSENTIALS_SEARCH_API_KEY=your-value --env SERPER_API_KEY=your-value --env SERPAPI_API_KEY=your-value --env TAVILY_API_KEY=your-value --env WOLFRAM_APPID=your-value --env ESSENTIALS_MEMORY_PATH=your-value --env ESSENTIALS_DOWNLOAD_DIRECTORY=your-value --env ESSENTIALS_SETTINGS_PATH=your-value -- dnx FieldCure.Mcp.Essentials --yes실행하기 전에 빈 값을 채워 주세요.
프로젝트의 .cursor/mcp.json 또는 ~/.cursor/mcp.json에 붙여 넣으세요
{
"mcpServers": {
"essentials": {
"command": "dnx",
"args": [
"FieldCure.Mcp.Essentials",
"--yes"
],
"env": {
"ESSENTIALS_SEARCH_ENGINE": "your-value",
"ESSENTIALS_SEARCH_API_KEY": "your-value",
"SERPER_API_KEY": "your-value",
"SERPAPI_API_KEY": "your-value",
"TAVILY_API_KEY": "your-value",
"WOLFRAM_APPID": "your-value",
"ESSENTIALS_MEMORY_PATH": "your-value",
"ESSENTIALS_DOWNLOAD_DIRECTORY": "your-value",
"ESSENTIALS_SETTINGS_PATH": "your-value"
}
}
}
}브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.
프로젝트의 .vscode/mcp.json에 붙여 넣으세요
{
"servers": {
"essentials": {
"type": "stdio",
"command": "dnx",
"args": [
"FieldCure.Mcp.Essentials",
"--yes"
],
"env": {
"ESSENTIALS_SEARCH_ENGINE": "your-value",
"ESSENTIALS_SEARCH_API_KEY": "your-value",
"SERPER_API_KEY": "your-value",
"SERPAPI_API_KEY": "your-value",
"TAVILY_API_KEY": "your-value",
"WOLFRAM_APPID": "your-value",
"ESSENTIALS_MEMORY_PATH": "your-value",
"ESSENTIALS_DOWNLOAD_DIRECTORY": "your-value",
"ESSENTIALS_SETTINGS_PATH": "your-value"
}
}
}
}브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.
이 서버는 내 컴퓨터에서 실행되는데, ChatGPT는 인터넷에 있는 서버에만 연결할 수 있어요. 다른 앱을 고르세요.
선택한 앱은 이 기기의 쿠키에만 저장돼요. 계정은 필요 없어요.
ESSENTIALS_SEARCH_ENGINE envESSENTIALS_SEARCH_API_KEY envSERPER_API_KEY envSERPAPI_API_KEY envTAVILY_API_KEY envWOLFRAM_APPID envESSENTIALS_MEMORY_PATH envESSENTIALS_DOWNLOAD_DIRECTORY envESSENTIALS_SETTINGS_PATH env이 설정은 제작자의 레지스트리 정보로 만들었어요. README와 다르면 README를 따르세요.
내 컴퓨터에서 실행돼요. 설치하면 AI 앱에 도구 목록이 나타나요.
누구나 볼 수 있는 정보를 점검했고, 코드는 읽지 않았어요. 해당하지 않는 항목은 개수에서 뺐어요. · 2026년 11월 6일 점검
레지스트리 이름이 GitHub 계정 fieldcure 기준으로 확인되었고, 이 계정이 저장소를 소유하고 있어요
아직 GitHub에서 이 저장소를 읽어 오지 않았어요
아직 GitHub에서 이 저장소를 읽어 오지 않았어요
내 컴퓨터에서 실행되는 서버라 인터넷 엔드포인트가 없어요
내 컴퓨터에서 실행되며, 대신 로컬 설정을 사용해요
내 컴퓨터에서 실행돼요. 도구 목록은 인터넷 엔드포인트가 있는 서버에서만 읽을 수 있어요
레지스트리에서 이 카테고리의 활성 서버 전체와 비교했어요. 스타는 게시자가 저장소를 소유한 경우에만 세요.
해당하는 기본 점검 1개 중 1개를 통과했어요. 코드는 읽지 않았어요. 키나 토큰을 넣기 전에 서버가 어떤 권한을 요구하는지 확인하고, 꼭 필요한 권한만 있는 키를 쓰세요.
레지스트리에 필수 키가 나와 있지 않아요. 다만 처음 쓸 때 로그인을 요구하는 서버도 있어요.
내 컴퓨터에서 실행돼요. AI 앱이 필요할 때 실행하고, 데이터는 제작자의 서버를 거치지 않아요(서버 자체가 온라인 서비스를 호출하는 경우는 제외).
GitHub 저장소는 마지막으로 – 변경됐고, 최신 버전(2.6.1)은 5개월 전 레지스트리에 올라왔어요.
Claude Desktop, Claude Code, Cursor, VS Code처럼 MCP를 지원하는 앱에서 쓸 수 있어요. 내 컴퓨터에 .NET도 있어야 해요.
같은 카테고리에는: Context7, Codebase Memory, Exa
같은 카테고리에서 다른 제작자가 만든 서버예요. 스타 순으로 정렬했어요.
카드 보는 법:★ GitHub 스타i세 기둥: 리뷰 · 점검 · 사용 정도i업데이트 = 최신 버전을 레지스트리에 공개한 날i
Up-to-date docs for AI agents
Codebase knowledge graph for AI agents — 162 languages, sub-ms queries, 99% fewer tokens.
Connect AI agents to Exa for web search, content fetching, and multi-step research.
제작자의 저장소에서 쓰인 그대로 가져왔어요. PopNx MCP가 검토하거나 보증한 내용이 아니에요. HTML, 이미지, 스크립트는 제거했어요. 링크를 누르면 이 사이트를 벗어나요.
Install once, get the basics. A Model Context Protocol (MCP) server that provides 20 essential tools — HTTP requests, web search & fetch, URL file downloads, Wolfram|Alpha computational knowledge, shell commands, JavaScript execution, file I/O, environment info, and persistent memory — for any MCP client. Category search (news, images, scholar, patents) and runtime engine switching (get/set) are always available; capabilities are guarded at invocation time against the active engine. Built with C# and the official MCP C# SDK.
web_fetch and read_file extract text from PDF, DOCX, HWPX, PPTX, XLSX into Markdown. PDF text extraction is text-layer only; scanned PDFs without a text layer yield empty text. For OCR-backed indexing use fieldcure-mcp-rag.dotnet tool install -g FieldCure.Mcp.Essentials
After installation, the fieldcure-mcp-essentials command is available globally.
git clone https://github.com/fieldcure/fieldcure-mcp-essentials.git
cd fieldcure-mcp-essentials dotnet build
| Tool | Description | Destructive |
|---|---|---|
http_request | Full HTTP client (GET/POST/PUT/DELETE/PATCH/HEAD) with custom headers and body | — |
web_search | Search the web and return snippets (title, URL, description) | — |
web_fetch | Fetch a URL and extract content as Markdown — HTML pages and documents (PDF, DOCX, HWPX, PPTX, XLSX) | — |
download_file | Download URL content to disk with a configurable download directory, 100 MB limit, and atomic save | Yes |
run_command | Execute shell commands with working directory, environment variables, shell selection, and output truncation flags | Yes |
run_javascript | Sandboxed JavaScript execution (Jint) for math, data processing, JSON, regex | — |
wolfram_alpha | Wolfram|Alpha Full Results API — symbolic math, plots, unit conversions, constants; MathML passes through for native rendering | — |
get_environment | System info — local time, timezone, OS, hostname, username, .NET version | — |
read_file | Read files — text with offset/limit, documents (PDF, DOCX, HWPX, PPTX, XLSX) parsed to Markdown | — |
write_file | Write or append text to files with auto directory creation | Yes |
search_files | Search files by glob pattern and content (grep-like) | — |
remember | Store a key-value memory (persisted in SQLite) | — |
forget | Delete memories by key or keyword search | Yes |
list_memories | Search and list stored memories with FTS5 and pagination | — |
Always registered. Each tool runtime-guards on the active engine's capabilities and returns a descriptive error pointing at set_search_engine when the current engine does not support the category.
| Tool | Description | SerpApi | Serper | Tavily |
|---|---|---|---|---|
search_news | Search recent news articles via Google News | Yes | Yes | Yes |
search_images | Search images with size/type filtering | Yes | Yes | — |
search_scholar | Search academic papers with citation counts | Yes | Yes | — |
search_patents | Search patent documents with inventor/assignee filtering | Yes | Yes | — |
| Tool | Description |
|---|---|
set_search_engine | Switch the active engine (bing, duckduckgo, serper, tavily, serpapi) at runtime. Paid-engine API keys resolve lazily via env var or MCP Elicitation on the next search; the switch itself takes only the engine name. Emits notifications/tools/list_changed on success. |
get_search_engine | Return the currently active engine and its category capabilities. Read-only; use this to reflect live engine state in host UIs or to check category support before calling a category search tool. |
web_search vs web_fetch vs download_file vs http_requesthttp_request | web_search | web_fetch | download_file | |
|---|---|---|---|---|
| Purpose | API calls, raw HTTP | Web search | Read web pages | Save original files |
| Response | Raw (JSON, HTML, etc.) | {title, url, snippet}[] | Markdown (body only) | JSON metadata with saved path |
| Conversion | None | None | SmartReader HTML → Markdown | None |
| Length limit | max_response_chars (default: unlimited, up to 1MB) | max_results (max 10) | max_length (max 20000) | 100 MB |
web_fetch and read_file can parse binary documents into Markdown:
| Format | Extension | Detection |
|---|---|---|
.pdf | Content-Type / URL extension (text layer only; no OCR) | |
| Word | .docx | Content-Type / URL extension |
| Hangul (HWPX) | .hwpx | URL extension (no standard Content-Type) |
| PowerPoint | .pptx | Content-Type / URL extension |
| Excel | .xlsx | Content-Type / URL extension |
Output includes headings, tables, math expressions ([math: LaTeX]), and slide/page separators.
download_file saves the original bytes from an HTTP(S) URL. If save_path is omitted, the tool infers a filename from Content-Disposition, the URL path, or a generated fallback name. Relative save_path values resolve under the configured download_directory; absolute paths are used as-is except for protected system directories.
The default download directory is ~/Downloads/mcp and is created automatically on first use. Downloads are written to a temporary file in the destination directory and then committed with an atomic move/replace, so failed or cancelled downloads do not leave a partial final file.
{
"url": "https://example.com/report.pdf" }
{
"url": "https://example.com/report.pdf", "save_path": "reports/report.pdf", "overwrite": false }
Default engine is Bing (free, no API key needed). For more reliable results, use an API-based engine:
| Engine | Free Tier | Category Search | API Key |
|---|---|---|---|
| Bing (default) | Unlimited (scraping) | — | Not needed |
| Serper | 2,500 one-time | news, images, scholar, patents | serper.dev |
| SerpApi | 100/month | news, images, scholar, patents | serpapi.com |
| Tavily | 1,000/month | news | tavily.com |
# Use Serper
fieldcure-mcp-essentials --search-engine serper --search-api-key YOUR_KEY
fieldcure-mcp-essentials --search-engine tavily --search-api-key YOUR_KEY
ESSENTIALS_SEARCH_ENGINE=serper ESSENTIALS_SEARCH_API_KEY=xxx fieldcure-mcp-essentials
When --search-engine is omitted, the server scans environment variables and automatically selects the best available engine:
| Engine | Environment Variable |
|---|---|
| Serper | SERPER_API_KEY |
| SerpApi | SERPAPI_API_KEY |
| Tavily | TAVILY_API_KEY |
Detection priority: Serper → SerpApi → Tavily → Bing/DuckDuckGo fallback.
| Engine | Auth Method | Key Exposure |
|---|---|---|
| Serper | HTTP header (X-API-KEY) | Not in URL |
| Tavily | Authorization header (Bearer token) | Not in URL |
| SerpApi | URL query parameter (api_key=xxx) | Visible in server logs |
Use the region parameter for localized results:
// Korean results
{ "query": "서울 맛집", "region": "ko-kr" }
// US English results { "query": "best restaurants NYC", "region": "en-us" }
// Global (default) { "query": "Python tutorial" }
Without --search-engine, a fallback engine (Bing → DuckDuckGo) auto-switches on CAPTCHA. Free engines rely on scraping and may be intermittent — an API-based engine is strongly recommended for any non-trivial use.
When --search-engine serper|tavily|serpapi is selected explicitly but no API key is configured (CLI arg, ESSENTIALS_SEARCH_API_KEY, or engine-specific env var), the server waits until the first web_search call and then asks the MCP client for the key via MCP Elicitation. If the user declines, a follow-up prompt asks whether to run the search with free Bing/DuckDuckGo instead. Declining both lets the tool soft-fail with a clear message so the LLM can recover.
Clients without Elicitation support (including older CLI hosts) fall back to the free engine immediately, matching the pre-2.1 behaviour. Cached keys live for the process lifetime; the host can re-elicit after an upstream 401/403 if the tool invalidates the cache.
wolfram_alpha calls the Full Results API v2 and returns mixed content — plaintext, MathML (passed through verbatim for clients that render MathML natively, e.g. ChatPanel/WebView2), and plot images embedded as ImageContent. The API's reinterpret=true flag is always on so most typo-level failures auto-correct server-side; only real parse failures surface isError: true with assumptions > tips > didyoumeans guidance.
Set WOLFRAM_APPID to the AppID obtained at developer.wolframalpha.com (select "Full Results API"; free tier: 2,000 calls/month, non-commercial). On MCP clients that support Elicitation the key can also be supplied interactively on first use. A rejected AppID (401/403) triggers a single invalidate-and-retry so a mistyped key can be re-elicited; the existing ApiKeyResolverRegistry re-elicit cap (2 per env-var slot) prevents loops.
⚠️ Use
developer.wolframalpha.com, notdeveloper.wolfram.com— the latter is a separate paid portal and will show "no permission to access any API keys" for free accounts.
The tool is always registered regardless of AppID status; without a key it returns a setup-guidance error so the model can inform the user instead of silently skipping.
'France population', not 'how many people live in France')6*10^14, never 6e14x, y, n)'speed of light', not 299792458)RECOMMENDED / AVOID hints steer the model — simple arithmetic to run_javascript, general web queries to web_search, subjective/news questions away from Wolfram앞부분만 보여 드려요. 나머지는 저장소에서 읽어 보세요