Skip to main content
Glama

Basic MCP

by nimishgautam
main.py1.99 kB
from fastmcp import FastMCP import wikipedia from duckduckgo_search import DDGS from basic_mcp.tools.web_tools import fetch_page mcp = FastMCP( "Wikipedia and DuckDuckGo Search", dependencies=["wikipedia", "duckduckgo-search", "trafilatura"], ) # Wikipedia tools @mcp.tool() def wiki_search(query: str): """Search Wikipedia for articles matching the query""" return wikipedia.search(query) @mcp.tool() def wiki_summary(query: str): """Get a summary of a Wikipedia article""" return wikipedia.summary(query) @mcp.tool() def wiki_page(query: str): """Get a full Wikipedia page""" return wikipedia.page(query) @mcp.tool() def wiki_set_lang(lang: str): """Set Wikipedia language""" wikipedia.set_lang(lang) return f"Language set to {lang}" # DuckDuckGo Search tools @mcp.tool() def ddg_text_search(query: str, max_results: int = 10): """Search DuckDuckGo for text results""" with DDGS() as ddgs: results = list(ddgs.text(query, max_results=max_results)) return results @mcp.tool() def ddg_news_search(query: str, max_results: int = 10): """Search DuckDuckGo for news articles""" with DDGS() as ddgs: results = list(ddgs.news(query, max_results=max_results)) return results @mcp.tool() def ddg_image_search(query: str, max_results: int = 10): """Search DuckDuckGo for images""" with DDGS() as ddgs: results = list(ddgs.images(query, max_results=max_results)) return results @mcp.tool() def ddg_video_search(query: str, max_results: int = 10): """Search DuckDuckGo for videos""" with DDGS() as ddgs: results = list(ddgs.videos(query, max_results=max_results)) return results @mcp.tool() def fetch_webpage(url: str, include_metadata: bool = False): """Fetch a clean text version of a webpage""" return fetch_page(url, include_metadata) def main(): mcp.run(transport="stdio", show_banner=False) if __name__ == "__main__": main()

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/nimishgautam/basic-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server