fastmcp 0.4.1__tar.gz → 1.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (63) hide show
  1. {fastmcp-0.4.1 → fastmcp-1.0}/PKG-INFO +21 -4
  2. {fastmcp-0.4.1 → fastmcp-1.0}/README.md +18 -2
  3. {fastmcp-0.4.1 → fastmcp-1.0}/src/fastmcp/server.py +3 -6
  4. {fastmcp-0.4.1 → fastmcp-1.0}/.github/ai-labeler.yml +0 -0
  5. {fastmcp-0.4.1 → fastmcp-1.0}/.github/release.yml +0 -0
  6. {fastmcp-0.4.1 → fastmcp-1.0}/.github/workflows/ai-labeler.yml +0 -0
  7. {fastmcp-0.4.1 → fastmcp-1.0}/.github/workflows/publish.yml +0 -0
  8. {fastmcp-0.4.1 → fastmcp-1.0}/.github/workflows/run-static.yml +0 -0
  9. {fastmcp-0.4.1 → fastmcp-1.0}/.github/workflows/run-tests.yml +0 -0
  10. {fastmcp-0.4.1 → fastmcp-1.0}/.gitignore +0 -0
  11. {fastmcp-0.4.1 → fastmcp-1.0}/.pre-commit-config.yaml +0 -0
  12. {fastmcp-0.4.1 → fastmcp-1.0}/.python-version +0 -0
  13. {fastmcp-0.4.1 → fastmcp-1.0}/LICENSE +0 -0
  14. {fastmcp-0.4.1 → fastmcp-1.0}/Windows_Notes.md +0 -0
  15. {fastmcp-0.4.1 → fastmcp-1.0}/docs/assets/demo-inspector.png +0 -0
  16. {fastmcp-0.4.1 → fastmcp-1.0}/examples/complex_inputs.py +0 -0
  17. {fastmcp-0.4.1 → fastmcp-1.0}/examples/desktop.py +0 -0
  18. {fastmcp-0.4.1 → fastmcp-1.0}/examples/echo.py +0 -0
  19. {fastmcp-0.4.1 → fastmcp-1.0}/examples/memory.py +0 -0
  20. {fastmcp-0.4.1 → fastmcp-1.0}/examples/readme-quickstart.py +0 -0
  21. {fastmcp-0.4.1 → fastmcp-1.0}/examples/screenshot.py +0 -0
  22. {fastmcp-0.4.1 → fastmcp-1.0}/examples/simple_echo.py +0 -0
  23. {fastmcp-0.4.1 → fastmcp-1.0}/examples/text_me.py +0 -0
  24. {fastmcp-0.4.1 → fastmcp-1.0}/pyproject.toml +0 -0
  25. {fastmcp-0.4.1 → fastmcp-1.0}/src/fastmcp/__init__.py +0 -0
  26. {fastmcp-0.4.1 → fastmcp-1.0}/src/fastmcp/cli/__init__.py +0 -0
  27. {fastmcp-0.4.1 → fastmcp-1.0}/src/fastmcp/cli/claude.py +0 -0
  28. {fastmcp-0.4.1 → fastmcp-1.0}/src/fastmcp/cli/cli.py +0 -0
  29. {fastmcp-0.4.1 → fastmcp-1.0}/src/fastmcp/exceptions.py +0 -0
  30. {fastmcp-0.4.1 → fastmcp-1.0}/src/fastmcp/prompts/__init__.py +0 -0
  31. {fastmcp-0.4.1 → fastmcp-1.0}/src/fastmcp/prompts/base.py +0 -0
  32. {fastmcp-0.4.1 → fastmcp-1.0}/src/fastmcp/prompts/manager.py +0 -0
  33. {fastmcp-0.4.1 → fastmcp-1.0}/src/fastmcp/prompts/prompt_manager.py +0 -0
  34. {fastmcp-0.4.1 → fastmcp-1.0}/src/fastmcp/py.typed +0 -0
  35. {fastmcp-0.4.1 → fastmcp-1.0}/src/fastmcp/resources/__init__.py +0 -0
  36. {fastmcp-0.4.1 → fastmcp-1.0}/src/fastmcp/resources/base.py +0 -0
  37. {fastmcp-0.4.1 → fastmcp-1.0}/src/fastmcp/resources/resource_manager.py +0 -0
  38. {fastmcp-0.4.1 → fastmcp-1.0}/src/fastmcp/resources/templates.py +0 -0
  39. {fastmcp-0.4.1 → fastmcp-1.0}/src/fastmcp/resources/types.py +0 -0
  40. {fastmcp-0.4.1 → fastmcp-1.0}/src/fastmcp/tools/__init__.py +0 -0
  41. {fastmcp-0.4.1 → fastmcp-1.0}/src/fastmcp/tools/base.py +0 -0
  42. {fastmcp-0.4.1 → fastmcp-1.0}/src/fastmcp/tools/tool_manager.py +0 -0
  43. {fastmcp-0.4.1 → fastmcp-1.0}/src/fastmcp/utilities/__init__.py +0 -0
  44. {fastmcp-0.4.1 → fastmcp-1.0}/src/fastmcp/utilities/func_metadata.py +0 -0
  45. {fastmcp-0.4.1 → fastmcp-1.0}/src/fastmcp/utilities/logging.py +0 -0
  46. {fastmcp-0.4.1 → fastmcp-1.0}/src/fastmcp/utilities/types.py +0 -0
  47. {fastmcp-0.4.1 → fastmcp-1.0}/tests/__init__.py +0 -0
  48. {fastmcp-0.4.1 → fastmcp-1.0}/tests/prompts/__init__.py +0 -0
  49. {fastmcp-0.4.1 → fastmcp-1.0}/tests/prompts/test_base.py +0 -0
  50. {fastmcp-0.4.1 → fastmcp-1.0}/tests/prompts/test_manager.py +0 -0
  51. {fastmcp-0.4.1 → fastmcp-1.0}/tests/resources/__init__.py +0 -0
  52. {fastmcp-0.4.1 → fastmcp-1.0}/tests/resources/test_file_resources.py +0 -0
  53. {fastmcp-0.4.1 → fastmcp-1.0}/tests/resources/test_function_resources.py +0 -0
  54. {fastmcp-0.4.1 → fastmcp-1.0}/tests/resources/test_resource_manager.py +0 -0
  55. {fastmcp-0.4.1 → fastmcp-1.0}/tests/resources/test_resource_template.py +0 -0
  56. {fastmcp-0.4.1 → fastmcp-1.0}/tests/resources/test_resources.py +0 -0
  57. {fastmcp-0.4.1 → fastmcp-1.0}/tests/servers/__init__.py +0 -0
  58. {fastmcp-0.4.1 → fastmcp-1.0}/tests/servers/test_file_server.py +0 -0
  59. {fastmcp-0.4.1 → fastmcp-1.0}/tests/test_cli.py +0 -0
  60. {fastmcp-0.4.1 → fastmcp-1.0}/tests/test_func_metadata.py +0 -0
  61. {fastmcp-0.4.1 → fastmcp-1.0}/tests/test_server.py +0 -0
  62. {fastmcp-0.4.1 → fastmcp-1.0}/tests/test_tool_manager.py +0 -0
  63. {fastmcp-0.4.1 → fastmcp-1.0}/uv.lock +0 -0
@@ -1,9 +1,10 @@
1
- Metadata-Version: 2.3
1
+ Metadata-Version: 2.4
2
2
  Name: fastmcp
3
- Version: 0.4.1
3
+ Version: 1.0
4
4
  Summary: A more ergonomic interface for MCP servers
5
5
  Author: Jeremiah Lowin
6
6
  License: MIT
7
+ License-File: LICENSE
7
8
  Requires-Python: >=3.10
8
9
  Requires-Dist: httpx>=0.26.0
9
10
  Requires-Dist: mcp<2.0.0,>=1.0.0
@@ -32,11 +33,27 @@ Requires-Dist: pytest>=8.3.3; extra == 'tests'
32
33
  Requires-Dist: ruff; extra == 'tests'
33
34
  Description-Content-Type: text/markdown
34
35
 
35
- <!-- omit in toc -->
36
- # FastMCP 🚀
36
+ <div align="center">
37
+
38
+ ### 🎉 FastMCP has been added to the official MCP SDK! 🎉
39
+
40
+ You can now find FastMCP as part of the official Model Context Protocol Python SDK:
41
+
42
+ 👉 [github.com/modelcontextprotocol/python-sdk](https://github.com/modelcontextprotocol/python-sdk)
43
+
44
+ *Please note: this repository is no longer maintained.*
45
+
46
+ ---
47
+
48
+
49
+ </br></br></br>
50
+
51
+ </div>
37
52
 
38
53
  <div align="center">
39
54
 
55
+ <!-- omit in toc -->
56
+ # FastMCP 🚀
40
57
  <strong>The fast, Pythonic way to build MCP servers.</strong>
41
58
 
42
59
  [![PyPI - Version](https://img.shields.io/pypi/v/fastmcp.svg)](https://pypi.org/project/fastmcp)
@@ -1,8 +1,24 @@
1
- <!-- omit in toc -->
2
- # FastMCP 🚀
1
+ <div align="center">
2
+
3
+ ### 🎉 FastMCP has been added to the official MCP SDK! 🎉
4
+
5
+ You can now find FastMCP as part of the official Model Context Protocol Python SDK:
6
+
7
+ 👉 [github.com/modelcontextprotocol/python-sdk](https://github.com/modelcontextprotocol/python-sdk)
8
+
9
+ *Please note: this repository is no longer maintained.*
10
+
11
+ ---
12
+
13
+
14
+ </br></br></br>
15
+
16
+ </div>
3
17
 
4
18
  <div align="center">
5
19
 
20
+ <!-- omit in toc -->
21
+ # FastMCP 🚀
6
22
  <strong>The fast, Pythonic way to build MCP servers.</strong>
7
23
 
8
24
  [![PyPI - Version](https://img.shields.io/pypi/v/fastmcp.svg)](https://pypi.org/project/fastmcp)
@@ -428,9 +428,9 @@ class FastMCP:
428
428
  async def run_sse_async(self) -> None:
429
429
  """Run the server using SSE transport."""
430
430
  from starlette.applications import Starlette
431
- from starlette.routing import Route
431
+ from starlette.routing import Route, Mount
432
432
 
433
- sse = SseServerTransport("/messages")
433
+ sse = SseServerTransport("/messages/")
434
434
 
435
435
  async def handle_sse(request):
436
436
  async with sse.connect_sse(
@@ -442,14 +442,11 @@ class FastMCP:
442
442
  self._mcp_server.create_initialization_options(),
443
443
  )
444
444
 
445
- async def handle_messages(request):
446
- await sse.handle_post_message(request.scope, request.receive, request._send)
447
-
448
445
  starlette_app = Starlette(
449
446
  debug=self.settings.debug,
450
447
  routes=[
451
448
  Route("/sse", endpoint=handle_sse),
452
- Route("/messages", endpoint=handle_messages, methods=["POST"]),
449
+ Mount("/messages/", app=sse.handle_post_message),
453
450
  ],
454
451
  )
455
452
 
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes