{"id":27356411,"url":"https://github.com/mcp-use/mcp-use","last_synced_at":"2026-05-24T03:02:38.705Z","repository":{"id":285400264,"uuid":"956472076","full_name":"mcp-use/mcp-use","owner":"mcp-use","description":"The fullstack MCP framework to develop MCP Apps for ChatGPT / Claude \u0026 MCP Servers for AI Agents.","archived":false,"fork":false,"pushed_at":"2026-05-21T00:25:40.000Z","size":123803,"stargazers_count":9979,"open_issues_count":80,"forks_count":1296,"subscribers_count":88,"default_branch":"main","last_synced_at":"2026-05-21T04:53:01.867Z","etag":null,"topics":["agentic-framework","ai","apps-sdk","chatgpt","claude-code","llms","mcp","mcp-apps","mcp-client","mcp-gateway","mcp-host","mcp-inspector","mcp-server","mcp-servers","mcp-tools","mcp-ui","model-context-protocol","modelcontextprotocol","openclaw","skills"],"latest_commit_sha":null,"homepage":"https://manufact.com","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mcp-use.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-03-28T10:06:31.000Z","updated_at":"2026-05-21T00:19:09.000Z","dependencies_parsed_at":"2025-03-31T14:57:07.798Z","dependency_job_id":"f64a56d7-3dac-4f15-be76-1537d73d2f94","html_url":"https://github.com/mcp-use/mcp-use","commit_stats":null,"previous_names":["pietrozullo/mcp-use","mcp-use/mcp-use","pietrozullo/mcpeer"],"tags_count":946,"template":false,"template_full_name":null,"purl":"pkg:github/mcp-use/mcp-use","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mcp-use%2Fmcp-use","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mcp-use%2Fmcp-use/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mcp-use%2Fmcp-use/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mcp-use%2Fmcp-use/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mcp-use","download_url":"https://codeload.github.com/mcp-use/mcp-use/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mcp-use%2Fmcp-use/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33417543,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-23T22:14:44.296Z","status":"ssl_error","status_checked_at":"2026-05-23T22:14:43.778Z","response_time":53,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["agentic-framework","ai","apps-sdk","chatgpt","claude-code","llms","mcp","mcp-apps","mcp-client","mcp-gateway","mcp-host","mcp-inspector","mcp-server","mcp-servers","mcp-tools","mcp-ui","model-context-protocol","modelcontextprotocol","openclaw","skills"],"created_at":"2025-04-12T23:02:29.645Z","updated_at":"2026-05-24T03:02:38.645Z","avatar_url":"https://github.com/mcp-use.png","language":"TypeScript","funding_links":[],"categories":["Development Tools Mcp Servers","Skills Catalog","MCP Servers \u0026 Tools","Build Tools \u0026 Frameworks","TypeScript","ai","🤖 AI \u0026 Machine Learning","Supported Clients","📚 Projects (1974 total)","The latest additions 🎉","🤖 AI/ML","HarmonyOS","python","Python","A01_文本生成_文本对话","Content Creation","Containerised MCP Servers","Skills, Hooks, and MCP for Coordination","Dev Tools (29)","Agent Integration \u0026 Deployment Tools","MCP Ecosystem","SDKs","MCP Servers","🛠️ Developer Infrastructure","Related Projects","MCP Servers \u0026 Protocol","🔎 Select Context","MCP Frameworks and libraries"],"sub_categories":["Agent (45)","Infrastructure","MCP Servers","Windows Manager","大语言对话模型及数据","AI \u0026 Machine Learning","AI Agent Operating System","Core \u0026 Frameworks","Python","MCP Frameworks and Tooling","Model Context Protocol (MCP)","AI Assistants","MCP Frameworks"],"readme":"\u003cdiv align=\"center\"\u003e\n\u003cdiv align=\"center\"\u003e\n  \u003ca href=\"https://mcp-use.com\"\u003e\n    \u003cpicture\u003e\n      \u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"./static/logo_white.svg\"\u003e\n      \u003csource media=\"(prefers-color-scheme: light)\" srcset=\"./static/logo_black.svg\"\u003e\n      \u003cimg alt=\"mcp use logo\" src=\"./static/logo_black.svg\" width=\"60%\" \u003e\n    \u003c/picture\u003e\n  \u003c/a\u003e\n\u003c/div\u003e\n\u0026nbsp;\n\n\u003cp align=\"center\"\u003e\n    \u003ca href=\"https://mcp-use.com/docs\" alt=\"Documentation\"\u003e\n        \u003cimg src=\"https://img.shields.io/badge/mcp--use-docs-blue?labelColor=white\" /\u003e\u003c/a\u003e\n    \u003ca href=\"https://manufact.com\" alt=\"Website\"\u003e\n        \u003cimg src=\"https://img.shields.io/badge/made by-manufact.com-blue\" /\u003e\u003c/a\u003e\n    \u003ca href=\"https://github.com/mcp-use/mcp-use/blob/main/LICENSE\" alt=\"License\"\u003e\n        \u003cimg src=\"https://img.shields.io/github/license/mcp-use/mcp-use\" /\u003e\u003c/a\u003e\n    \u003ca href=\"https://discord.gg/XkNkSkMz3V\" alt=\"Discord\"\u003e\n        \u003cimg src=\"https://dcbadge.limes.pink/api/server/XkNkSkMz3V?style=flat\" /\u003e\u003c/a\u003e\n    \u003cbr/\u003e\n    \u003ca href=\"https://mcp-use.com/docs/python\" alt=\"Python docs\"\u003e\n        \u003cimg src=\"https://img.shields.io/badge/python-docs-blue?labelColor=white\u0026logo=python\" alt=\"Badge\"\u003e\u003c/a\u003e\n    \u003ca href=\"https://pypi.org/project/mcp_use/\" alt=\"PyPI Version\"\u003e\n        \u003cimg src=\"https://img.shields.io/pypi/v/mcp_use.svg\"/\u003e\u003c/a\u003e\n    \u003ca href=\"https://pypi.org/project/mcp_use/\" alt=\"PyPI Downloads\"\u003e\n        \u003cimg src=\"https://static.pepy.tech/badge/mcp-use\" /\u003e\u003c/a\u003e\n    \u003cbr/\u003e\n    \u003ca href=\"https://mcp-use.com/docs/typescript\" alt=\"Typescript Documentation\"\u003e\n        \u003cimg src=\"https://img.shields.io/badge/typescript-docs-blue?labelColor=white\u0026logo=typescript\" alt=\"Badge\"\u003e\u003c/a\u003e\n    \u003ca href=\"https://www.npmjs.com/package/mcp-use\" alt=\"NPM Version\"\u003e\n        \u003cimg src=\"https://img.shields.io/npm/v/mcp-use.svg\"/\u003e\u003c/a\u003e\n    \u003ca href=\"https://www.npmjs.com/package/mcp-use\" alt=\"NPM Downloads\"\u003e\n        \u003cimg src=\"https://img.shields.io/npm/dw/mcp-use.svg\"/\u003e\u003c/a\u003e\n    \u003cbr/\u003e\n\u003c/p\u003e\n\u003c/div\u003e\n\n##  About\n\n  \u003cb\u003emcp-use\u003c/b\u003e is the fullstack MCP framework\n  to build MCP Apps for ChatGPT / Claude \u0026 MCP Servers for AI Agents.\n\n- **Build** with mcp-use SDK ([ts](https://www.npmjs.com/package/mcp-use) | [py](https://pypi.org/project/mcp_use/)): MCP Servers and MCP Apps\n- **Preview** on mcp-use MCP Inspector ([online](https://inspector.mcp-use.com/inspector) | [oss](https://github.com/mcp-use/mcp-use/tree/main/libraries/typescript/packages/inspector)): Test and debug your MCP Servers and Apps\n- **Deploy** on [Manufact MCP Cloud](https://manufact.com): Connect your GitHub repo and have your MCP Server and App up and running in production with observability, metrics, logs, branch-deployments, and more\n\n## Documentation\n\nVisit our [docs](https://mcp-use.com/docs) or jump to a quickstart ([TypeScript](https://mcp-use.com/docs/typescript/getting-started/quickstart) | [Python](https://mcp-use.com/docs/python/getting-started/quickstart))\n\n### Skills for Coding Agents\n\n\u003e **Using Claude Code, Codex, Cursor or other AI coding agents?**\n\u003e\n\u003e **[Install mcp-use skill for MCP Apps](https://skills.sh/mcp-use/mcp-use/mcp-apps-builder)**\n\n## Quickstart: MCP Servers and MCP Apps\n\n### \u003cimg src=\"./static/typescript.svg\" height=\"14\" style=\"margin-right:4px; top:-1px; position:relative;\" align=\"center\" /\u003e TypeScript\n\nBuild your first MCP Server or MPC App:\n\n```bash\nnpx create-mcp-use-app@latest\n```\n\nOr create a server manually:\n\n```typescript\nimport { MCPServer, text } from \"mcp-use/server\";\nimport { z } from \"zod\";\n\nconst server = new MCPServer({\n  name: \"my-server\",\n  version: \"1.0.0\",\n});\n\nserver.tool({\n  name: \"get_weather\",\n  description: \"Get weather for a city\",\n  schema: z.object({ city: z.string() }),\n}, async ({ city }) =\u003e {\n  return text(`Temperature: 72°F, Condition: sunny, City: ${city}`);\n});\n\nawait server.listen(3000);\n// Inspector at http://localhost:3000/inspector\n```\n\n[**→ Full TypeScript Server Documentation**](https://mcp-use.com/docs/typescript/server)\n\n## MCP Apps\n\nMCP Apps let you build interactive widgets that work across Claude, ChatGPT, and other MCP clients — write once, run everywhere.\n\n**Server**: define a tool and point it to a widget:\n\n```typescript\nimport { MCPServer, widget } from \"mcp-use/server\";\nimport { z } from \"zod\";\n\nconst server = new MCPServer({\n  name: \"weather-app\",\n  version: \"1.0.0\",\n});\n\nserver.tool({\n  name: \"get-weather\",\n  description: \"Get weather for a city\",\n  schema: z.object({ city: z.string() }),\n  widget: \"weather-display\", // references resources/weather-display/widget.tsx\n}, async ({ city }) =\u003e {\n  return widget({\n    props: { city, temperature: 22, conditions: \"Sunny\" },\n    message: `Weather in ${city}: Sunny, 22°C`,\n  });\n});\n\nawait server.listen(3000);\n```\n\n**Widget**: create a React component in `resources/weather-display/widget.tsx`:\n\n```tsx\nimport { useWidget, type WidgetMetadata } from \"mcp-use/react\";\nimport { z } from \"zod\";\n\nconst propSchema = z.object({\n  city: z.string(),\n  temperature: z.number(),\n  conditions: z.string(),\n});\n\nexport const widgetMetadata: WidgetMetadata = {\n  description: \"Display weather information\",\n  props: propSchema,\n};\n\nconst WeatherDisplay: React.FC = () =\u003e {\n  const { props, isPending, theme } = useWidget\u003cz.infer\u003ctypeof propSchema\u003e\u003e();\n  const isDark = theme === \"dark\";\n\n  if (isPending) return \u003cdiv\u003eLoading...\u003c/div\u003e;\n\n  return (\n    \u003cdiv style={{\n      background: isDark ? \"#1a1a2e\" : \"#f0f4ff\",\n      borderRadius: 16, padding: 24,\n    }}\u003e\n      \u003ch2\u003e{props.city}\u003c/h2\u003e\n      \u003cp\u003e{props.temperature}° — {props.conditions}\u003c/p\u003e\n    \u003c/div\u003e\n  );\n};\n\nexport default WeatherDisplay;\n```\n\nWidgets in `resources/` are **auto-discovered** — no manual registration needed.\n\nVisit [**MCP Apps Documentation**](https://mcp-use.com/docs/typescript/server/mcp-apps)\n\n## Templates\n\nReady-to-use MCP Apps you can deploy in one click or remix as your own.\n\n| Preview | Name | Tools | Demo URL | Repo | Deploy |\n| --- | --- | --- | --- | --- | --- |\n| ![Chart Builder](https://raw.githubusercontent.com/mcp-use/mcp-chart-builder/main/repo-assets/demo.gif) | Chart Builder | `create-chart` | [Open URL](https://yellow-shadow-21833.run.mcp-use.com/mcp) | [mcp-use/mcp-chart-builder](https://github.com/mcp-use/mcp-chart-builder) | [![Deploy to mcp-use](https://cdn.mcp-use.com/deploy.svg)](https://mcp-use.com/deploy/start?repository-url=https%3A%2F%2Fgithub.com%2Fmcp-use%2Fmcp-chart-builder\u0026branch=main\u0026project-name=mcp-chart-builder\u0026port=3000\u0026runtime=node\u0026base-image=node%3A20) |\n| ![Diagram Builder](https://raw.githubusercontent.com/mcp-use/mcp-diagram-builder/main/repo-assets/demo.gif) | Diagram Builder | `create-diagram`, `edit-diagram` | [Open URL](https://lucky-darkness-402ph.run.mcp-use.com/mcp) | [mcp-use/mcp-diagram-builder](https://github.com/mcp-use/mcp-diagram-builder) | [![Deploy to mcp-use](https://cdn.mcp-use.com/deploy.svg)](https://mcp-use.com/deploy/start?repository-url=https%3A%2F%2Fgithub.com%2Fmcp-use%2Fmcp-diagram-builder\u0026branch=main\u0026project-name=mcp-diagram-builder\u0026port=3000\u0026runtime=node\u0026base-image=node%3A20) |\n| ![Slide Deck](https://raw.githubusercontent.com/mcp-use/mcp-slide-deck/main/repo-assets/demo.gif) | Slide Deck | `create-slides`, `edit-slide` | [Open URL](https://solitary-block-r6m6x.run.mcp-use.com/mcp) | [mcp-use/mcp-slide-deck](https://github.com/mcp-use/mcp-slide-deck) | [![Deploy to mcp-use](https://cdn.mcp-use.com/deploy.svg)](https://mcp-use.com/deploy/start?repository-url=https%3A%2F%2Fgithub.com%2Fmcp-use%2Fmcp-slide-deck\u0026branch=main\u0026project-name=mcp-slide-deck\u0026port=3000\u0026runtime=node\u0026base-image=node%3A20) |\n| ![Maps Explorer](https://raw.githubusercontent.com/mcp-use/mcp-maps-explorer/main/repo-assets/demo.gif) | Maps Explorer | `show-map`, `get-place-details`, `add-markers` | [Open URL](https://super-night-ttde2.run.mcp-use.com/mcp) | [mcp-use/mcp-maps-explorer](https://github.com/mcp-use/mcp-maps-explorer) | [![Deploy to mcp-use](https://cdn.mcp-use.com/deploy.svg)](https://mcp-use.com/deploy/start?repository-url=https%3A%2F%2Fgithub.com%2Fmcp-use%2Fmcp-maps-explorer\u0026branch=main\u0026project-name=mcp-maps-explorer\u0026port=3000\u0026runtime=node\u0026base-image=node%3A20) |\n| ![Hugging Face Spaces](https://raw.githubusercontent.com/mcp-use/mcp-huggingface-spaces/main/repo-assets/demo.gif) | Hugging Face Spaces | `search-spaces`, `show-space`, `trending-spaces` | [Open URL](https://gentle-frost-pvxpk.run.mcp-use.com/mcp) | [mcp-use/mcp-huggingface-spaces](https://github.com/mcp-use/mcp-huggingface-spaces) | [![Deploy to mcp-use](https://cdn.mcp-use.com/deploy.svg)](https://mcp-use.com/deploy/start?repository-url=https%3A%2F%2Fgithub.com%2Fmcp-use%2Fmcp-huggingface-spaces\u0026branch=main\u0026project-name=mcp-huggingface-spaces\u0026port=3000\u0026runtime=node\u0026base-image=node%3A20) |\n| ![Recipe Finder](https://raw.githubusercontent.com/mcp-use/mcp-recipe-finder/main/repo-assets/demo.gif) | Recipe Finder | `search-recipes`, `get-recipe`, `meal-plan`, `recipe-suggestion` | [Open URL](https://bold-tree-1fe79.run.mcp-use.com/mcp) | [mcp-use/mcp-recipe-finder](https://github.com/mcp-use/mcp-recipe-finder) | [![Deploy to mcp-use](https://cdn.mcp-use.com/deploy.svg)](https://mcp-use.com/deploy/start?repository-url=https%3A%2F%2Fgithub.com%2Fmcp-use%2Fmcp-recipe-finder\u0026branch=main\u0026project-name=mcp-recipe-finder\u0026port=3000\u0026runtime=node\u0026base-image=node%3A20) |\n| ![Widget Gallery](https://raw.githubusercontent.com/mcp-use/mcp-widget-gallery/main/repo-assets/demo.gif) | Widget Gallery | `show-react-widget`, `html-greeting`, `mcp-ui-poll`, `programmatic-counter`, `detect-client` | [Open URL](https://wandering-lake-mmxhs.run.mcp-use.com/mcp) | [mcp-use/mcp-widget-gallery](https://github.com/mcp-use/mcp-widget-gallery) | [![Deploy to mcp-use](https://cdn.mcp-use.com/deploy.svg)](https://mcp-use.com/deploy/start?repository-url=https%3A%2F%2Fgithub.com%2Fmcp-use%2Fmcp-widget-gallery\u0026branch=main\u0026project-name=mcp-widget-gallery\u0026port=3000\u0026runtime=node\u0026base-image=node%3A20) |\n| ![Multi Server Hub](https://raw.githubusercontent.com/mcp-use/mcp-multi-server-hub/main/repo-assets/demo.gif) | Multi Server Hub | `hub-status`, `hub-config-example`, `audit-log` | [Open URL](https://soft-voice-4nxfi.run.mcp-use.com/mcp) | [mcp-use/mcp-multi-server-hub](https://github.com/mcp-use/mcp-multi-server-hub) | [![Deploy to mcp-use](https://cdn.mcp-use.com/deploy.svg)](https://mcp-use.com/deploy/start?repository-url=https%3A%2F%2Fgithub.com%2Fmcp-use%2Fmcp-multi-server-hub\u0026branch=main\u0026project-name=mcp-multi-server-hub\u0026port=3000\u0026runtime=node\u0026base-image=node%3A20) |\n| ![File Manager](https://raw.githubusercontent.com/mcp-use/mcp-file-manager/main/repo-assets/demo.gif) | File Manager | `open-vault`, `get-file`, `list-files` | [Open URL](https://muddy-pond-eyays.run.mcp-use.com/mcp) | [mcp-use/mcp-file-manager](https://github.com/mcp-use/mcp-file-manager) | [![Deploy to mcp-use](https://cdn.mcp-use.com/deploy.svg)](https://mcp-use.com/deploy/start?repository-url=https%3A%2F%2Fgithub.com%2Fmcp-use%2Fmcp-file-manager\u0026branch=main\u0026project-name=mcp-file-manager\u0026port=3000\u0026runtime=node\u0026base-image=node%3A20) |\n| ![Progress Demo](https://raw.githubusercontent.com/mcp-use/mcp-progress-demo/main/repo-assets/demo.gif) | Progress Demo | `process-data`, `fetch-report`, `delete-dataset`, `search-external`, `failing-tool` | [Open URL](https://crimson-river-pzsz1.run.mcp-use.com/mcp) | [mcp-use/mcp-progress-demo](https://github.com/mcp-use/mcp-progress-demo) | [![Deploy to mcp-use](https://cdn.mcp-use.com/deploy.svg)](https://mcp-use.com/deploy/start?repository-url=https%3A%2F%2Fgithub.com%2Fmcp-use%2Fmcp-progress-demo\u0026branch=main\u0026project-name=mcp-progress-demo\u0026port=3000\u0026runtime=node\u0026base-image=node%3A20) |\n| ![i18n Adaptive](https://raw.githubusercontent.com/mcp-use/mcp-i18n-adaptive/main/repo-assets/demo.gif) | i18n Adaptive | `show-context`, `detect-caller` | [Open URL](https://falling-grass-58yov.run.mcp-use.com/mcp) | [mcp-use/mcp-i18n-adaptive](https://github.com/mcp-use/mcp-i18n-adaptive) | [![Deploy to mcp-use](https://cdn.mcp-use.com/deploy.svg)](https://mcp-use.com/deploy/start?repository-url=https%3A%2F%2Fgithub.com%2Fmcp-use%2Fmcp-i18n-adaptive\u0026branch=main\u0026project-name=mcp-i18n-adaptive\u0026port=3000\u0026runtime=node\u0026base-image=node%3A20) |\n| ![Media Mixer](https://raw.githubusercontent.com/mcp-use/mcp-media-mixer/main/repo-assets/demo.gif) | Media Mixer | `generate-image`, `generate-audio`, `generate-pdf`, `get-report`, `get-html-snippet`, `get-xml-config`, `get-stylesheet`, `get-script`, `get-data-array` | [Open URL](https://wandering-breeze-nuipu.run.mcp-use.com/mcp) | [mcp-use/mcp-media-mixer](https://github.com/mcp-use/mcp-media-mixer) | [![Deploy to mcp-use](https://cdn.mcp-use.com/deploy.svg)](https://mcp-use.com/deploy/start?repository-url=https%3A%2F%2Fgithub.com%2Fmcp-use%2Fmcp-media-mixer\u0026branch=main\u0026project-name=mcp-media-mixer\u0026port=3000\u0026runtime=node\u0026base-image=node%3A20) |\n| ![Resource Watcher](https://raw.githubusercontent.com/mcp-use/mcp-resource-watcher/main/repo-assets/demo.gif) | Resource Watcher | `show-config`, `update-config`, `toggle-feature`, `list-roots` | [Open URL](https://fragrant-term-zmdks.run.mcp-use.com/mcp) | [mcp-use/mcp-resource-watcher](https://github.com/mcp-use/mcp-resource-watcher) | [![Deploy to mcp-use](https://cdn.mcp-use.com/deploy.svg)](https://mcp-use.com/deploy/start?repository-url=https%3A%2F%2Fgithub.com%2Fmcp-use%2Fmcp-resource-watcher\u0026branch=main\u0026project-name=mcp-resource-watcher\u0026port=3000\u0026runtime=node\u0026base-image=node%3A20) |\n\n---\n### \u003cimg src=\"./static/python.svg\" height=\"14\" style=\"margin-right:4px; top:-1px; position:relative;\" align=\"center\" /\u003e Python\n\n```bash\npip install mcp-use\n```\n\n```python\nfrom typing import Annotated\n\nfrom mcp.types import ToolAnnotations\nfrom pydantic import Field\n\nfrom mcp_use import MCPServer\n\nserver = MCPServer(name=\"Weather Server\", version=\"1.0.0\")\n\n@server.tool(\n    name=\"get_weather\",\n    description=\"Get current weather information for a location\",\n    annotations=ToolAnnotations(readOnlyHint=True, openWorldHint=True),\n)\nasync def get_weather(\n    city: Annotated[str, Field(description=\"City name\")],\n) -\u003e str:\n    return f\"Temperature: 72°F, Condition: sunny, City: {city}\"\n\n# Start server with auto-inspector\nserver.run(transport=\"streamable-http\", port=8000)\n# 🎉 Inspector at http://localhost:8000/inspector\n```\n\n[**→ Full Python Server Documentation**](https://mcp-use.com/docs/python/server/index)\n\n---\n\n## Inspector\n\nThe mcp-use Inspector lets you test and debug your MCP servers interactively.\n\n**Auto-included** when using `server.listen()`:\n\n```typescript\nserver.listen(3000);\n// Inspector at http://localhost:3000/inspector\n```\n\n**Online** when connecting to hosted MCP servers:\n\u003cbr\u003e\n\u003eVisit https://inspector.mcp-use.com\n\n**Standalone**: inspect any MCP server:\n\n```bash\nnpx @mcp-use/inspector --url http://localhost:3000/mcp\n```\n\nVisit [**Inspector Documentation**](https://mcp-use.com/docs/inspector/index)\n\n---\n\n## Deploy\n\nDeploy your MCP server to production:\n\n```bash\nnpx @mcp-use/cli login\nnpx @mcp-use/cli deploy\n```\n\nOr connect your GitHub repo on [manufact.com](https://manufact.com) — production-ready with observability, metrics, logs, and branch-deployments.\n\n---\n\n## Package Overview\n\nThis monorepo contains multiple packages for both Python and TypeScript:\n\n### Python Packages\n\n| Package     | Description                           | Version                                                                                 |\n| ----------- | ------------------------------------- | --------------------------------------------------------------------------------------- |\n| **mcp-use** | Complete MCP server and MCP agent SDK | [![PyPI](https://img.shields.io/pypi/v/mcp_use.svg)](https://pypi.org/project/mcp_use/) |\n\n### TypeScript Packages\n\n| Package                | Description                                     | Version                                                                                                         |\n| ---------------------- | ----------------------------------------------- | --------------------------------------------------------------------------------------------------------------- |\n| **mcp-use**            | Core framework for MCP servers, MCP apps, and MCP agents | [![npm](https://img.shields.io/npm/v/mcp-use.svg)](https://www.npmjs.com/package/mcp-use)                       |\n| **@mcp-use/cli**       | Build tool with hot reload and auto-inspector   | [![npm](https://img.shields.io/npm/v/@mcp-use/cli.svg)](https://www.npmjs.com/package/@mcp-use/cli)             |\n| **@mcp-use/inspector** | Web-based previewer and debugger for MCP servers              | [![npm](https://img.shields.io/npm/v/@mcp-use/inspector.svg)](https://www.npmjs.com/package/@mcp-use/inspector) |\n| **create-mcp-use-app** | Project scaffolding tool                        | [![npm](https://img.shields.io/npm/v/create-mcp-use-app.svg)](https://www.npmjs.com/package/create-mcp-use-app) |\n\n---\n\n## Also: MCP Agent \u0026 Client\n\nmcp-use also provides a full MCP Agent and Client implementation.\n\n\u003cdetails\u003e\n\u003csummary\u003eBuild an AI Agent\u003c/summary\u003e\n\n### \u003cimg src=\"./static/python.svg\" height=\"14\" style=\"margin-right:4px; top:-1px; position:relative;\" align=\"center\" /\u003e Python\n\n```bash\npip install mcp-use langchain-openai\n```\n\n```python\nimport asyncio\nfrom langchain_openai import ChatOpenAI\nfrom mcp_use import MCPAgent, MCPClient\n\nasync def main():\n    config = {\n        \"mcpServers\": {\n            \"filesystem\": {\n                \"command\": \"npx\",\n                \"args\": [\"-y\", \"@modelcontextprotocol/server-filesystem\", \"/tmp\"]\n            }\n        }\n    }\n\n    client = MCPClient.from_dict(config)\n    llm = ChatOpenAI(model=\"gpt-4o\")\n    agent = MCPAgent(llm=llm, client=client)\n\n    result = await agent.run(\"List all files in the directory\")\n    print(result)\n\nasyncio.run(main())\n```\n\n[**→ Full Python Agent Documentation**](./libraries/python/README.md#quick-start)\n\n### \u003cimg src=\"./static/typescript.svg\" height=\"14\" style=\"margin-right:4px; top:-1px; position:relative;\" align=\"center\" /\u003e TypeScript\n\n```bash\nnpm install mcp-use @langchain/openai\n```\n\n```typescript\nimport { ChatOpenAI } from \"@langchain/openai\";\nimport { MCPAgent, MCPClient } from \"mcp-use\";\n\nasync function main() {\n  const config = {\n    mcpServers: {\n      filesystem: {\n        command: \"npx\",\n        args: [\"-y\", \"@modelcontextprotocol/server-filesystem\", \"/tmp\"],\n      },\n    },\n  };\n\n  const client = MCPClient.fromDict(config);\n  const llm = new ChatOpenAI({ modelName: \"gpt-4o\" });\n  const agent = new MCPAgent({ llm, client });\n\n  const result = await agent.run(\"List all files in the directory\");\n  console.log(result);\n}\n\nmain();\n```\n\n[**→ Full TypeScript Agent Documentation**](./libraries/typescript/README.md#-quick-start)\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003eUse MCP Client\u003c/summary\u003e\n\n### \u003cimg src=\"./static/python.svg\" height=\"14\" style=\"margin-right:4px; top:-1px; position:relative;\" align=\"center\" /\u003e Python\n\n```python\nimport asyncio\nfrom mcp_use import MCPClient\n\nasync def main():\n    config = {\n        \"mcpServers\": {\n            \"calculator\": {\n                \"command\": \"npx\",\n                \"args\": [\"-y\", \"@modelcontextprotocol/server-everything\"]\n            }\n        }\n    }\n\n    client = MCPClient.from_dict(config)\n    await client.create_all_sessions()\n\n    session = client.get_session(\"calculator\")\n    result = await session.call_tool(name=\"add\", arguments={\"a\": 5, \"b\": 3})\n\n    print(f\"Result: {result.content[0].text}\")\n    await client.close_all_sessions()\n\nasyncio.run(main())\n```\n\n[**→ Python Client Documentation**](./libraries/python/README.md#direct-tool-calls-without-llm)\n\n### \u003cimg src=\"./static/typescript.svg\" height=\"14\" style=\"margin-right:4px; top:-1px; position:relative;\" align=\"center\" /\u003e TypeScript\n\n```typescript\nimport { MCPClient } from \"mcp-use\";\n\nasync function main() {\n  const config = {\n    mcpServers: {\n      calculator: {\n        command: \"npx\",\n        args: [\"-y\", \"@modelcontextprotocol/server-everything\"],\n      },\n    },\n  };\n\n  const client = new MCPClient(config);\n  await client.createAllSessions();\n\n  const session = client.getSession(\"calculator\");\n  const result = await session.callTool(\"add\", { a: 5, b: 3 });\n\n  console.log(`Result: ${result.content[0].text}`);\n  await client.closeAllSessions();\n}\n\nmain();\n```\n\n[**→ TypeScript Client Documentation**](./libraries/typescript/README.md#basic-usage)\n\n\u003c/details\u003e\n\n---\n\n## Conformance to Model Context Protocol\n\n\u003cdiv align=\"center\"\u003e\n    \u003ca href=\"https://github.com/mcp-use/mcp-use/actions/workflows/conformance.yml\" alt=\"Python MCP Conformance\"\u003e\n        \u003cimg src=\"https://img.shields.io/endpoint?url=https://gist.githubusercontent.com/tonxxd/6edf670f0446dc9f7a1f32d6bfda2b70/raw/python-conformance.json\" /\u003e\u003c/a\u003e\n    \u003ca href=\"https://github.com/mcp-use/mcp-use/actions/workflows/conformance.yml\" alt=\"Python MCP Client Conformance\"\u003e\n        \u003cimg src=\"https://img.shields.io/endpoint?url=https://gist.githubusercontent.com/tonxxd/6edf670f0446dc9f7a1f32d6bfda2b70/raw/python-client-conformance.json\" /\u003e\u003c/a\u003e\n    \u003ca href=\"https://github.com/mcp-use/mcp-use/actions/workflows/conformance.yml\" alt=\"TypeScript MCP Conformance\"\u003e\n        \u003cimg src=\"https://img.shields.io/endpoint?url=https://gist.githubusercontent.com/tonxxd/6edf670f0446dc9f7a1f32d6bfda2b70/raw/typescript-conformance.json\" /\u003e\u003c/a\u003e\n    \u003ca href=\"https://github.com/mcp-use/mcp-use/actions/workflows/conformance.yml\" alt=\"TypeScript MCP Client Conformance\"\u003e\n      \u003cimg src=\"https://img.shields.io/endpoint?url=https://gist.githubusercontent.com/tonxxd/6edf670f0446dc9f7a1f32d6bfda2b70/raw/typescript-node-client-conformance.json\" /\u003e\u003c/a\u003e\n\u003c/div\u003e\n\n---\n\n## Security\nSee [SECURITY.md](https://github.com/mcp-use/mcp-use/blob/main/SECURITY.md)\n\n## Community \u0026 Support\n\n- **Discord**: [Join our community](https://discord.gg/XkNkSkMz3V)\n- **GitHub Issues**: [Report bugs or request features](https://github.com/mcp-use/mcp-use/issues)\n- **Documentation**: [mcp-use.com/docs](https://mcp-use.com/docs)\n- **Website**: [manufact.com](https://manufact.com)\n- **X.com**: Follow [Manufact](https://x.com/manufact)\n- **Contributing**: See [CONTRIBUTING.md](https://github.com/mcp-use/mcp-use/blob/main/CONTRIBUTING.md)\n- **License**: MIT © [MCP-Use Contributors](https://github.com/mcp-use/mcp-use/graphs/contributors)\n\n---\n\n## Star History\n\n[![Star History Chart](https://api.star-history.com/svg?repos=mcp-use/mcp-use\u0026type=Date)](https://www.star-history.com/#mcp-use/mcp-use\u0026Date)\n\n---\n\n## Contributors\n\nThanks to all our amazing contributors!\n\n### Core Contributors\n\n1. **Pietro** ([@pietrozullo](https://github.com/pietrozullo))\n2. **Luigi** ([@pederzh](https://github.com/pederzh))\n3. **Enrico** ([@tonxxd](https://github.com/tonxxd))\n\n\u003cbr\u003e\n\n\u003ca href=\"https://github.com/mcp-use/mcp-use/graphs/contributors\"\u003e\n  \u003cimg src=\"https://contrib.rocks/image?repo=mcp-use/mcp-use\" /\u003e\n\u003c/a\u003e\n\n---\n\n\u003cdiv align=\"center\"\u003e\n  \u003cstrong\u003eBuilt with ❤️ by Manufact team and the mcp-use community\u003c/strong\u003e\n  \u003cbr/\u003e\n  \u003csub\u003eSan Francisco | Zürich\u003c/sub\u003e\n\u003c/div\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmcp-use%2Fmcp-use","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmcp-use%2Fmcp-use","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmcp-use%2Fmcp-use/lists"}