Commit graph

1,500 commits

Author SHA1 Message Date
Jeremiah Lowin
e117fa0fa3
Merge pull request #924 from jlowin/docstring v2.9.0 2025-06-23 10:30:55 -04:00
Jeremiah Lowin
a14b621ab9 Update release.yml 2025-06-23 10:30:38 -04:00
Jeremiah Lowin
44d5bce0ec
Merge pull request #923 from jlowin/docstring 2025-06-23 10:28:46 -04:00
Jeremiah Lowin
4a4054fe5a Update release categories 2025-06-23 10:28:24 -04:00
Jeremiah Lowin
8b52a6ec73
Merge pull request #922 from jlowin/docstring 2025-06-23 10:23:11 -04:00
Jeremiah Lowin
547bceb154
Merge pull request #919 from jlowin/middleware 2025-06-23 10:18:54 -04:00
Jeremiah Lowin
03d0cad8ed ControlFlow -> FastMCP 😅 2025-06-23 10:18:18 -04:00
Jeremiah Lowin
b2c39f3ce1
Merge pull request #907 from jlowin/feature/api-ref-exclude-modules 2025-06-23 10:17:37 -04:00
nate nowack
e81327d687
Merge pull request #921 from jlowin/rm-source-example
remove uv source in example
2025-06-23 02:33:18 -05:00
zzstoatzz
7b14a00b4e remove uv source in example 2025-06-23 02:31:26 -05:00
nate nowack
8f6570f96c
Merge pull request #920 from jlowin/small-example-fix
fix path in atproto example pyproject
2025-06-23 02:29:01 -05:00
zzstoatzz
e42f9fec7f fix path in atproto example pyproject 2025-06-23 02:27:08 -05:00
nate nowack
d0e4fba34b
Merge pull request #916 from jlowin/atproto-example
Add ATProto (Bluesky) MCP Server Example
2025-06-23 01:07:48 -05:00
zzstoatzz
395bde3d5a rm example as workspace member for now 2025-06-23 01:05:48 -05:00
zzstoatzz
dc52874300 update url for main 2025-06-22 23:48:25 -05:00
zzstoatzz
2701de8e7b Move search from resource to tool
- Search is an action with parameters, not a resource
- Resources are for fetching by URI (profile, timeline, notifications)
- Tools are for actions (post, search, follow, like, repost)

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-22 23:28:29 -05:00
zzstoatzz
a5e2cf46fd ope 2025-06-22 23:16:22 -05:00
zzstoatzz
c70ac4284d allow config limit 2025-06-22 23:10:54 -05:00
zzstoatzz
0745f457c8 Refactor ATProto MCP server with unified API
- Consolidate 4 separate posting tools into single flexible 'post' tool
- Reorganize _atproto.py into modular structure with clear separation
- Update demo to test all features comprehensively
- Simplify API: post, follow, like, repost (was 8 tools, now 4)

The unified post tool supports all combinations:
- Simple text posts
- Images (up to 4)
- Rich text (links, mentions)
- Replies and threads
- Quote posts
- Advanced combinations (quote + image, reply + rich text, etc.)

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-22 23:06:53 -05:00
zzstoatzz
d30b1b771d update python verison 2025-06-22 22:39:14 -05:00
zzstoatzz
2502ba8093 Fix strong ref creation and image handling in new features
- Use ComAtprotoRepoStrongRef.Main instead of create_strong_ref
- Fix image posting to properly handle downloads and uploads
- Add follow_redirects for image URLs
- All features now tested and working

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-22 22:39:14 -05:00
zzstoatzz
3264c85606 Add advanced ATProto features: replies, rich text, quotes, and images
- Add reply_to_post for threaded conversations
- Add post_with_rich_text for clickable links and mentions
- Add quote_post for sharing with commentary
- Add post_with_images for visual content (up to 4 images)
- Update types with new response structures
- Add httpx dependency for image downloads
- Document AI assistant use cases in README
2025-06-22 22:39:14 -05:00
zzstoatzz
0e89236185 update python verison 2025-06-22 22:39:14 -05:00
zzstoatzz
6905a00b0b Fix ATProto API calls for follow, like, and repost
- Fix follow_user to use params dict for search_actors API
- Add CID fetching for like_post (required by atproto API)
- Add CID fetching for repost (required by atproto API)
- Both like and repost now fetch the post first to get its CID
2025-06-22 22:39:14 -05:00
zzstoatzz
2eb10094b5 Refactor ATProto example to use resources and proper type annotations
- Add TypedDict definitions for all responses in types.py
- Convert read operations to resources (status, timeline, search, notifications)
- Keep state-modifying operations as tools (post, follow, like, repost)
- Add proper type annotations with Annotated and Field descriptions
- Update demo to use read_resource for resources
- Better separation of concerns with typed interfaces
2025-06-22 22:39:14 -05:00
zzstoatzz
5c23ac8ee9 Refactor ATProto example with modular design and improved demo
- Create _atproto.py module for private implementation details
- Clean server.py to only expose public API (tools)
- Update demo with --post flag instead of comments
- Better separation of concerns
2025-06-22 22:39:14 -05:00
zzstoatzz
4421bafb2a Add script entry point for atproto-mcp command 2025-06-22 22:39:14 -05:00
zzstoatzz
1952d5d320 push code 2025-06-22 22:39:14 -05:00
zzstoatzz
40226a8fb7 Implement full ATProto functionality with 8 tools for Bluesky interaction 2025-06-22 22:39:14 -05:00
zzstoatzz
8faf3f5721 Add ATProto MCP example 2025-06-22 22:39:14 -05:00
Jeremiah Lowin
f821edb252 Remove production-ready language from middleware docs 2025-06-22 22:01:10 -04:00
Jeremiah Lowin
6d033eeaf1 Add production-ready middleware examples with comprehensive tests
Implements timing, logging, rate limiting, and error handling middleware to showcase
FastMCP's middleware capabilities as a headline feature. Each middleware includes:

- Production-ready implementations with full configurability
- Comprehensive unit and integration tests with real FastMCP servers
- Updated documentation with teaching examples and production usage patterns

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-22 21:57:49 -04:00
Jeremiah Lowin
d76f42ceb8 Create middleware module 2025-06-22 21:05:10 -04:00
Jeremiah Lowin
2480ad8f58
Merge pull request #918 from jlowin/fields 2025-06-22 21:00:30 -04:00
Jeremiah Lowin
44f14b1f7b Clean up parameter documentation 2025-06-22 20:59:53 -04:00
Jeremiah Lowin
c64554c4e7
Merge pull request #917 from jlowin/http 2025-06-22 20:20:42 -04:00
Jeremiah Lowin
84ca1b0f09 Update CLAUDE.md 2025-06-22 20:09:14 -04:00
Jeremiah Lowin
987dd85826 Update test_streamable_http.py 2025-06-22 20:08:36 -04:00
Jeremiah Lowin
ffe0c92d63 Alias streamable-http as http 2025-06-22 20:00:11 -04:00
Jeremiah Lowin
76e3df1bc1 Add "http" as an alias for streamable-http 2025-06-22 18:55:07 -04:00
Jeremiah Lowin
9b85d492e8 Add http as an alias for streamable http 2025-06-22 18:35:28 -04:00
zzstoatzz
29a30917af accidental removal 2025-06-22 15:21:54 -05:00
zzstoatzz
6299411c6d update 2025-06-22 15:20:40 -05:00
zzstoatzz
dc3630bc93 adapt to new structure 2025-06-22 15:15:15 -05:00
Jeremiah Lowin
74c3fdc1e7
Merge pull request #915 from jlowin/integrations 2025-06-22 15:46:45 -04:00
Jeremiah Lowin
6503b79352 Add claude code 2025-06-22 15:44:46 -04:00
Jeremiah Lowin
fbc4fc1490 Add ChatGPT doc 2025-06-22 15:28:51 -04:00
Jeremiah Lowin
686df919ff Update gemini address 2025-06-22 14:41:18 -04:00
Jeremiah Lowin
9250d2932a Update Claude Desktop to reflect remote server support
#742
2025-06-22 14:41:12 -04:00
Jeremiah Lowin
b4b9c57bdd Update anthropic + openai to show SHTTP 2025-06-22 14:19:32 -04:00