semvec/pypi-packages huggingface dataset:
globus-mcp 0.1.1
Globus MCP server
Requires Python: >=3.13
Keywords: globus, llm, mcp

# Globus MCP Server

The Globus [MCP](https://modelcontextprotocol.io) Server enables LLM applications to interact
with [Globus](https://www.globus.org/) services.

## Supported Tools

### [Globus Transfer](https://docs.globus.org/api/transfer/)

- `globus_transfer_list_endpoints_and_collections` - List endpoints and collections the user has
access to
- `globus_transfer_search_endpoints_and_collections` - Use a filter string to search all endpoints
and collections that are visible to the user
- `globus_transfer_submit_task` - Submit a transfer task between two collections
- `globus_transfer_get_task_events` - Get a list of task events
- `globus_transfer_list_directory` - List contents of a directory on a collection

### [Globus Compute](https://docs.globus.org/compute/)

- `globus_compute_list_endpoints` - List endpoints that the user has access to
- `globus_compute_register_python_function` - Register a Python function
- `globus_compute_register_shell_command` - Register a shell command
- `globus_compute_submit_task` - Submit a task to an endpoint
- `globus_compute_get_task_status` - Retrieve the status and result of a task

## Configuration

The following configuration is compatible with most LLM applications that support MCP such as
[Claude Desktop](https://modelcontextprotocol.io/docs/develop/connect-local-servers):

```json
{
  "mcpServers": {
    "globus-mcp": {
      "command": "uvx",
      "args": ["globus-mcp"]
    }
  }
}
```

### Limiting Tool Registration

By default, the Globus MCP server registers tools for every service. To register tools for only
specific services, use the `--services` command-line flag:

```json
{
  "mcpServers": {
    "globus-mcp": {
      "command": "uvx",
      "args": [
        "globus-mcp",
        "--services",
        "compute"
      ]
    }
  }
}
```

### Specifying Client Credentials

If you've [registered a client application](https://docs.globus.org/api/auth/developer-guide/#register-app)
in the [Globus web UI](https://app.globus.org/settings/developers/), you can specify the client
credentials via the `GLOBUS_CLIENT_ID` and `GLOBUS_CLIENT_SECRET` environment variables:

```json
{
  "mcpServers": {
    "globus-mcp": {
      "command": "uvx",
      "args": ["globus-mcp"],
      "env": {
        "GLOBUS_CLIENT_ID": "...",
        "GLOBUS_CLIENT_SECRET": "..."
      }
    }
  }
}
```
exelock 1.0.2
A robust library to prevent multiple instances of a program from running
Requires Python: >=3.6
Keywords: single instance lock prevent duplicate

# exelock

一个强大的 Python 库，用于防止程序重复启动。使用混合锁机制（端口+文件锁），确保在打包成 exe 后也能可靠工作。

## 安装

```bash
pip install exelock
langgraph-checkpoint-cosmosdb 0.2.5
Azure CosmosDB checkpoint saver implementation for LangGraph
Requires Python: >=3.9

# LangGraph Checkpoint CosmosDB

This project provides an implementation of a checkpoint saver for LangGraph using Azure CosmosDB. 

## Features
- Save and retrieve langgraph checkpoints in Azure CosmosDB.
- Suppports both sync and async saver functionality

## Installation

To install the package, ensure you have Python 3.9 or higher, and run:

```pip install langgraph-checkpoint-cosmosdb```

## Usage

### Setting Up Environment

To use the `CosmosDBSaver`
- You need to set CosmosDB endpoint and key if you want it to create your specified database and container.
```
export COSMOSDB_ENDPOINT='your_cosmosdb_endpoint'
export COSMOSDB_KEY='your_cosmosdb_key'
```
- If database and container already exists then this can work via default RBAC credentials. Ex. az login or by setting TENANT_ID, CLIENT_ID and CLIENT_SECRET in environment.
    - For user-assigned managed identity, ensure AZURE_CLIENT_ID environment variable is set to the identity's client ID. 
    - Note that in this case error will be thrown if database and container do not exist.
  


## Import

```
from langgraph_checkpoint_cosmosdb import CosmosDBSaver
```

## Initialize the saver
Database and Container is created if it does not exists
```
saver = CosmosDBSaver(database_name='your_database', container_name='your_container')
```

## Limitations
List function does not support filters. You can only pass config on thread id to get the list.

```
print(list(memory.list(config=config)))
```
## License

This project is licensed under the MIT License.