> For the complete documentation index, see [llms.txt](https://docs.tessl.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.tessl.io/reference/mcp-tools.md).

# MCP tools

The Tessl MCP (Model Context Protocol) server provides tools that AI coding agents can use to search for, install, and work with plugins from the Tessl registry.

## Server Configuration

The Tessl MCP server can be configured in your AI coding agent's MCP configuration or by running:

```sh
tessl init --agent <agent-name>
```

**Server Details:**

* **Command**: `tessl mcp start`
* **Type**: stdio
* **Name**: Tessl Registry MCP

## Available Tools

### login

Authenticate with Tessl to access registry features.

**Authentication**: Not required (this tool provides authentication)

**Parameters**

None

**Notes**

* Attempts to open authentication URL in your browser automatically
* Authentication happens asynchronously - credentials are saved in the background
* After completing authentication once, authenticated tools work automatically
* Triggers automatic dependency sync after successful login

***

### search

Search for plugins in the Tessl registry by name, package URL (PURL), or HTTP URL.

**Authentication**: Required (automatically handles authentication if needed)

**Parameters**

* `query` (string, required): Search query - can be a plugin name, package URL, or HTTP URL

**Notes**

* Works with partial names and package URLs (PURLs)
* Supports HTTP URLs from package registries (e.g., npm, PyPI)
* Returns plugin name, version, description, and installation command

**Example**

```json
{
  "query": "svelte"
}
```

***

### install

Install plugins into your project. Can install a specific plugin or sync all missing plugins from tessl.json.

**Authentication**: Required (automatically handles authentication if needed)

**Parameters**

* `packageName` (string, optional): plugin name to install (e.g., "workspace/plugin" or "workspace/plugin\@version"). If not provided, installs all missing plugins from tessl.json
* `projectDir` (string, optional): Project directory. Defaults to current working directory

**Notes**

* plugins are installed to `.tessl/plugins/<workspace>/<plugin>/` in your project
* Your project's `tessl.json` is automatically updated with the plugin reference
* If a plugin is already installed and up-to-date, it will be skipped
* If no version is specified, installs the latest version

**Example: Install specific plugin**

```json
{
  "packageName": "tessl/svelte@5.38.0"
}
```

**Example: Sync all missing plugins**

```json
{}
```

***

### uninstall

Uninstall a plugin from your project.

**Authentication**: Not required

**Parameters**

* `packageName` (string, required): plugin name to uninstall (e.g., "workspace/plugin")

**Notes**

* Removes the plugin from `tessl.json` and deletes files from `.tessl/plugins/`
* Does not require authentication (local operation only)
* Only affects your local project - doesn't unpublish from the registry

**Example**

```json
{
  "packageName": "tessl/svelte"
}
```

***

### status

Check authentication status and plugin synchronization status for your project.

**Authentication**: Not required

**Parameters**

None

**Notes**

* Returns JSON with authentication status and plugin sync summary
* Shows plugins that are up-to-date, missing, outdated, or invalid
* Useful for checking if you need to run `tessl install` to sync plugins

**Example**

```json
{                                                                     
       "authentication": {
         "authenticated": true,
         "email": "example@tessl.io"
       },
       "manifest": {
         "summary": {
           "upToDate": 1,
           "missing": 0,
           "outdated": 0,
           "invalid": 0
         },
         "tiles": {
           "upToDate": [
             {
               "workspaceName": "tessl",
               "tileName": "pypi-fastapi",
               "manifestVersion": "0.116.0",
               "installedVersion": "0.116.0"
             }
           ],
           "missing": [],
           "outdated": [],
           "invalidPackages": []
         }
       }
     }

```


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.tessl.io/reference/mcp-tools.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
