Commit graph

1,780 commits

Author SHA1 Message Date
Jeremiah Lowin
1c20ad77c9
Remove deprecated proxy creation (#1186) 2025-07-19 13:37:46 -04:00
Jeremiah Lowin
ea54851736
Fix mcp-json output format to include server name (#1185)
Co-authored-by: Claude <noreply@anthropic.com>
2025-07-19 13:31:11 -04:00
Jeremiah Lowin
c02be184ee
Merge pull request #1182 from jlowin/update-api-ref 2025-07-19 10:48:40 -04:00
nate nowack
dfc1a81e33
Merge pull request #1183 from jlowin/fix-tests
skip on rate limit
2025-07-18 15:30:20 -05:00
zzstoatzz
ce49880aeb fix missing import 2025-07-18 15:27:52 -05:00
nate nowack
283bf68550
Update tests/integration_tests/conftest.py
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-07-18 15:19:24 -05:00
zzstoatzz
163db94266 more specific 2025-07-18 11:19:18 -05:00
zzstoatzz
1e473cd0ef skip on rate limit 2025-07-18 11:10:26 -05:00
zzstoatzz
c289f17217 update api ref for new mdxify version 2025-07-18 10:19:16 -05:00
Martin Melka
3543c13ca9
Fix nesting when making OpenAPI arrays and objects optional (#1178) 2025-07-18 08:26:42 -04:00
Aidan
ebe817601c
add server name to mounted server warnings (#1147) 2025-07-17 12:02:30 -07:00
Ka
ceb8d85826
feat(settings): add log level normalization (#1171) 2025-07-17 12:01:03 -07:00
itaru2622
eca3174922
fix: _replace_ref_with_defs; ensure ref_path is string, because some REST servers use "$ref" as property name of schema. (#1164) 2025-07-17 11:46:23 -07:00
Jeremiah Lowin
5fc7aa04aa
Update README.md (#1165) 2025-07-16 10:16:27 -07:00
tommitt
13dd2bfa0c
Upgrade Eunomia authorization docs (#1144) 2025-07-15 07:09:29 -07:00
nate nowack
0977d552ff
Fix tool output schema generation to respect Pydantic serialization aliases (#1148)
Co-authored-by: Claude <noreply@anthropic.com>
2025-07-15 07:08:56 -07:00
nate nowack
64d469be98
Add no-commit-to-branch hook to prevent direct commits to main (#1149)
Co-authored-by: Claude <noreply@anthropic.com>
2025-07-15 07:03:56 -07:00
Johannes Maron
7966514a86
Resolve #1139 -- Implement include_context argument in Context.sample (#1141) 2025-07-15 07:01:41 -07:00
Martin Melka
5151f218cf
Do not silently exclude the "context" key from JSON body (#1153) 2025-07-15 06:59:37 -07:00
Jeremiah Lowin
7ce0a59ea6
Fix optional parameter validation in OpenAPI integration (#1135)
Co-authored-by: Claude <noreply@anthropic.com>
2025-07-13 10:23:56 -04:00
Jeremiah Lowin
c0b01ceb1f
Merge pull request #1131 from jlowin/fix-tool-transform-title-field 2025-07-12 09:56:09 -04:00
Jeremiah Lowin
9326cb91db Fix title field preservation in tool transformations
Add title parameter to Tool.from_tool() and TransformedTool.from_tool()
to properly inherit or override title field when transforming tools.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-12 09:53:49 -04:00
Jeremiah Lowin
45228c5cfa
Merge pull request #1129 from jlowin/expand-empty-params-fix-1128 2025-07-12 09:35:35 -04:00
Jeremiah Lowin
e670ee708d
Merge branch 'main' into expand-empty-params-fix-1128 2025-07-12 09:29:34 -04:00
Jeremiah Lowin
b853bb85f9 Expand empty parameter filtering and add tests
Builds on PR #1128 by adding comprehensive filtering at parameter selection stage and test coverage for empty arrays/dicts.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-12 09:25:05 -04:00
Fabrizio Sandri
21ee0d3ea7
Fix OpenAPI empty parameters (#1128) 2025-07-12 09:24:11 -04:00
FabrizioSandri
2fb7d15894 ruff format 2025-07-12 10:32:26 +02:00
FabrizioSandri
59516e4b65 Check for non empty array and dictionary parameter 2025-07-12 10:22:54 +02:00
Jeremiah Lowin
9f1964aeca
Update changelog.mdx (#1127) 2025-07-11 21:06:34 -04:00
Jeremiah Lowin
add07be347
Improve console width (#1126) v2.10.5 2025-07-11 18:13:46 -04:00
Jeremiah Lowin
767de312f9
Fix middleware list result types (#1125)
* Catch more openapi changes

* Simplify middleware list operations to use lists directly

- Updated middleware signatures to work with list[Tool], list[Resource], etc instead of wrapper objects
- Removed unnecessary ListToolsResult, ListResourcesResult wrapper types
- Updated documentation to show simpler list-based filtering pattern
- Added tests for list-based middleware filtering

Closes #1121

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

Co-Authored-By: Claude <noreply@anthropic.com>

---------

Co-authored-by: Claude <noreply@anthropic.com>
2025-07-11 18:04:20 -04:00
Jeremiah Lowin
cf1c9f5f46
Catch more openapi changes (#1124) 2025-07-11 14:17:53 -04:00
Magnus
912bba2385
fix: replace oneOf with anyOf in OpenAPI schemas to handle overlapping unions (#1119)
Co-authored-by: Jeremiah Lowin <153965+jlowin@users.noreply.github.com>
2025-07-11 13:31:45 -04:00
Jeremiah Lowin
ce1a85ceaf
xfail when github token is not set (#1123) 2025-07-11 12:55:45 -04:00
Jeremiah Lowin
b0f45a85c4
Fix OpenAPI deepObject style parameter encoding (#1122)
* Fix OpenAPI deepObject style parameter encoding

Add support for deepObject style with explode=true to properly serialize
object parameters using bracket notation (param[key]=value) instead of
JSON strings. Fixes #1114.

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

Co-Authored-By: Claude <noreply@anthropic.com>

* Create README_OPENAPI.md

---------

Co-authored-by: Claude <noreply@anthropic.com>
2025-07-11 12:50:19 -04:00
Jeremiah Lowin
e55c360389
Update github remote server tests with secret (#1112)
* Adding client tests for streamable http against official GitHub Remote MCP server

* Apply suggestions from code review

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update tests/client/test_github_mcp_remote.py

applying review suggestions

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update github server tests and move to integration

* Set GITHUB_TOKEN variable

* Revert "Set GITHUB_TOKEN variable"

This reverts commit a87d6a303a.

---------

Co-authored-by: Didier Durand <didduran@amazon.ch>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Didier Durand <durand.didier@gmail.com>
2025-07-10 10:48:42 -04:00
coldfire.x
1b92f3e421
Update proxy.mdx (#1108)
fix typo
2025-07-10 09:27:38 -04:00
Jeremiah Lowin
6248a51435
Add mirrored component support for proxy servers (#1105)
* Add mirrored component support for proxy servers

Prevents enable/disable operations on mirrored components (tools, resources, prompts retrieved from proxy servers). Users must create local copies with .copy() and add them to their server to modify them. Local components take precedence over mirrored ones.

Closes #1102

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

Co-Authored-By: Claude <noreply@anthropic.com>

* Update proxy.mdx

---------

Co-authored-by: Claude <noreply@anthropic.com>
2025-07-09 19:02:07 -04:00
Jeremiah Lowin
4a42587afb
Merge pull request #1107 from jlowin/fix-openapi-parameter-collisions
Fix OpenAPI parameter name collisions with location suffixing
2025-07-09 19:01:27 -04:00
Jeremiah Lowin
5d95ddd8c0 Fix OpenAPI parameter name collisions with location suffixing
Resolves parameter conflicts when same name appears in path/query/header
and request body by adding double underscore suffixes (id__path, id__query).
Body parameters keep original names for natural REST API patterns.

Closes #1100

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-09 18:49:00 -04:00
Jeremiah Lowin
00da39f43c
Merge pull request #1106 from jlowin/fix-claude-code-detection
Fix Claude Code CLI detection for npm global installations
2025-07-09 18:09:17 -04:00
Jeremiah Lowin
f25bef7e21 Add mirrored component support for proxy servers
Prevents enable/disable operations on mirrored components (tools, resources, prompts retrieved from proxy servers). Users must create local copies with .copy() and add them to their server to modify them. Local components take precedence over mirrored ones.

Closes #1102

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-09 17:54:40 -04:00
Jeremiah Lowin
d04a216f10
Merge pull request #1103 from jlowin/docs
Improve transport + integration docs
2025-07-09 16:54:59 -04:00
Jeremiah Lowin
9cbfcab94c Update integration docs 2025-07-09 16:50:16 -04:00
Jeremiah Lowin
cef5278a9f Reorganize docs 2025-07-09 12:22:41 -04:00
Jeremiah Lowin
68cbb470ef Update transport docs 2025-07-09 12:14:33 -04:00
Jeremiah Lowin
4f4d06ffdb
Ensure the CLI accepts "streamable-http" as a valid transport (#1099) v2.10.4
* Ensure the CLI accepts "streamable-http" as a valid transport

* Add test for transport aliases
2025-07-09 09:35:26 -04:00
Jeremiah Lowin
09fae7541e
Fix OpenAPI tool name registration when modified by mcp_component_fn (#1096) v2.10.3
Resolves issue where tools modified by mcp_component_fn were registered
with original names but accessible with modified names, causing "Unknown tool"
errors. Now tools are registered using their final modified names.

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

Co-authored-by: Claude <noreply@anthropic.com>
2025-07-08 21:28:46 -04:00
Jeremiah Lowin
c452164e86
Fix concurrent proxy client operations with session isolation (#1083)
* Refactor Client session state with ClientSessionState dataclass

Fixes #1068 by introducing ClientSessionState to encapsulate session management
attributes, simplifying Client.new() and preventing concurrent proxy client
context mixing through client factory pattern.

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

Co-Authored-By: Claude <noreply@anthropic.com>

* Update proxy documentation for new client factory pattern

Documents the new session management behavior, client_factory parameter,
and concurrent operation safety introduced in v2.10.3 to fix #1068.

* Remove deprecation of client parameter and update documentation

- Undeprecated FastMCPProxy client parameter
- Made client_factory the advanced option for custom control
- Added detailed explanation of how client factories work internally
- Removed outdated note about proxy feature limitations
- Removed fabricated Advanced Usage section

* Re-do proxy documentation

* Fix deprecated client parameter to provide session isolation

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

Co-Authored-By: Claude <noreply@anthropic.com>

---------

Co-authored-by: Claude <noreply@anthropic.com>
2025-07-08 17:22:43 -04:00
Dimitri Barbot
f977e480ca
Fix max recursion error when pruning OpenAPI definitions (#1092)
* Fix max recursion error when pruning open api definitions

* Remove mutable default parameter in def_is_referenced function
2025-07-08 17:21:58 -04:00