Metadata-Version: 2.4
Name: agentis-mcp
Version: 0.1.0
Summary: MCP server for the Agentis agent identity registry
Author-email: Lujain Khalil <lujainasharfkhalil@gmail.com>
License: MIT
Project-URL: Homepage, https://agentis-id.vercel.app
Project-URL: Repository, https://github.com/lujainkhalil/Agentis
Keywords: mcp,agents,identity,ai,agentis
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Requires-Python: >=3.10
Description-Content-Type: text/markdown
Requires-Dist: mcp>=1.0.0
Requires-Dist: httpx>=0.24.0

# agentis-mcp

An MCP (Model Context Protocol) server that connects any MCP-compatible AI orchestrator to the Agentis agent identity registry. It exposes four tools: searching the registry by capability, verifying a specific agent by DID, fetching registry statistics, and reading the cryptographic audit trail for an agent.

## Install

```bash
pip install agentis-mcp
```

## Usage with Claude Desktop

Add the following to your `claude_desktop_config.json`:

```json
{
  "mcpServers": {
    "agentis": {
      "command": "python",
      "args": ["-m", "agentis_mcp.server"]
    }
  }
}
```

The config file is located at:
- macOS: `~/Library/Application Support/Claude/claude_desktop_config.json`
- Windows: `%APPDATA%\Claude\claude_desktop_config.json`

Restart Claude Desktop after saving. The Agentis tools will appear in the tool list.

## Usage with any MCP client

```python
import asyncio
from mcp import ClientSession, StdioServerParameters
from mcp.client.stdio import stdio_client

server_params = StdioServerParameters(
    command="python",
    args=["-m", "agentis_mcp.server"],
)

async def main():
    async with stdio_client(server_params) as (read, write):
        async with ClientSession(read, write) as session:
            await session.initialize()

            # List available tools
            tools = await session.list_tools()
            for tool in tools.tools:
                print(tool.name, "-", tool.description[:60])

            # Search for agents that can read invoices
            result = await session.call_tool(
                "search_agents",
                {"capability": "invoices:read", "min_tier": 2},
            )
            print(result.content[0].text)

            # Verify a specific agent
            result = await session.call_tool(
                "verify_agent",
                {"did": "did:web:agentis.dev:agents:28e83dff641920ad"},
            )
            print(result.content[0].text)

asyncio.run(main())
```

## Available tools

### search_agents

Search the registry for active agents. Optionally filter by capability ID and minimum verification tier.

Parameters:
- `capability` (string, optional): capability ID to filter by, e.g. `"invoices:read"`
- `min_tier` (integer, optional, default 1): minimum verification tier (1=email, 2=individual, 3=company)
- `limit` (integer, optional, default 10, max 50): number of results to return

### verify_agent

Look up a specific agent by its DID and return its full verified identity. Use this before delegating sensitive work to an agent.

Parameters:
- `did` (string, required): the agent's DID, e.g. `"did:web:agentis.dev:agents:28e83dff641920ad"`

### get_registry_stats

Return aggregate statistics about the registry: agent counts by status, developer counts by tier, and Agent Card coverage.

No parameters.

### get_audit_trail

Fetch the cryptographic audit chain for an agent. Each record includes a hash of the previous one, so any tampering breaks the chain.

Parameters:
- `did` (string, required): the agent's DID
- `api_key` (string, required): your Agentis API key (starts with `agentis_`)

## Links

- Agentis platform: https://agentis-id.vercel.app
- Agentis on GitHub: https://github.com/lujainkhalil/Agentis
- proveyouragent on PyPI: https://pypi.org/project/proveyouragent/
