Merge branch 'v1.1.x'

This commit is contained in:
David Soria Parra 2024-12-12 16:42:39 +00:00
commit 93bce513a5
No known key found for this signature in database

View file

@ -2,9 +2,9 @@ import logging
import sys import sys
from functools import partial from functools import partial
from urllib.parse import urlparse from urllib.parse import urlparse
import argparse
import anyio import anyio
import click
from mcp.client.session import ClientSession from mcp.client.session import ClientSession
from mcp.client.sse import sse_client from mcp.client.sse import sse_client
@ -57,19 +57,24 @@ async def main(command_or_url: str, args: list[str], env: list[tuple[str, str]])
await run_session(*streams) await run_session(*streams)
@click.command() def cli():
@click.argument("command_or_url") parser = argparse.ArgumentParser()
@click.argument("args", nargs=-1) parser.add_argument("command_or_url", help="Command or URL to connect to")
@click.option( parser.add_argument("args", nargs="*", help="Additional arguments")
"--env", parser.add_argument(
"-e", "-e", "--env",
multiple=True, nargs=2,
nargs=2, action="append",
metavar="KEY VALUE", metavar=("KEY", "VALUE"),
help="Environment variables to set. Can be used multiple times.", help="Environment variables to set. Can be used multiple times.",
) default=[]
def cli(*args, **kwargs): )
anyio.run(partial(main, *args, **kwargs), backend="trio")
args = parser.parse_args()
anyio.run(
partial(main, args.command_or_url, args.args, args.env),
backend="trio"
)
if __name__ == "__main__": if __name__ == "__main__":