-
Notifications
You must be signed in to change notification settings - Fork 854
Adding client tests for streamable http against official GitHub Remote MCP Server #867
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
Adds a suite of asynchronous pytest tests to validate the StreamableHttpTransport
client against GitHub’s new Remote MCP Server.
- Introduces a fixture to configure the client with a GitHub PAT and base URL.
- Covers connect/disconnect, ping, listing tools/resources/prompts, and tool invocation success/failure.
@jlowin :
|
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
applying review suggestions Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Applied remaining changes from review and updated branch. Can be merged now. |
Hi, what's blocking this merge? |
Hi,
Github released a few days ago in Preview its official Remote MCP Server working on streamable http: https://github.blog/changelog/2025-06-12-remote-github-mcp-server-is-now-available-in-public-preview/
Tech details at https://docs.github.com/en/copilot/customizing-copilot/using-model-context-protocol/using-the-github-mcp-server
So, we built some tests against this remote MCP server to validate fastmcp streamable http client against the independent implementation. They can be run on a basis of continuous testing.
To run them on the fastmcp repo, a Github PAT (Personal Access Token) has to be added [I don't have credentials to do it on fastmcp repo ]with name
MCP_GITHUB_PAT
to match code. It is converted to a corresponding env var by the Github action: see my own Github workflow runnning those tests as well on my Strands Agents repo: https://github.com/didier-durand/strands-serverless/blob/5b1d087fef53fa8df4b2278f825a1c1551262fc7/.github/workflows/build_python.yaml#L28Those tests work fine on my laptop and fine on GithHub with PAT added