Luigit
repositories / pi-ext

pi-ext

bugabingas pi extensions

owned by admin

extensions/intellij/README.md

Raw
Rendered preview
intellij

intellij

Expose IntelliJ's project-aware MCP tools automatically when Pi starts inside an IntelliJ project.

Installation

Setup

In IntelliJ, open Settings | Tools | MCP Server | Manual Client Configuration. Copy its HTTP Stream URL into Pi's existing intellij.url setting.

{
	"intellij": {
		"url": "http://127.0.0.1:PORT/ENDPOINT"
	}
}

Pi reads trusted project settings first, then user settings. Untrusted project settings are ignored. The URL must be loopback HTTP without embedded credentials. Invalid values produce a warning and never fall through to another source.

Use

Pi searches upward from its current directory for nearest .idea directory. When both .idea and valid intellij.url exist, it registers native intellij MCP server for current session. Pi's built-in MCP support owns connection, retry, discovery, status, and /mcp management. Tools use native names such as mcp__intellij__get_project_modules and are discovered through tool search. Use /mcp to inspect, reconnect, disable, or change their exposure. The former /intellij command is no longer needed. Each IntelliJ MCP call receives detected .idea project root as projectPath. No IntelliJ connection, config write, or IDE launch occurs without both conditions.

Requires Pi 1.2.0 or later with built-in MCP support. SDK sessions must load createMcpExtension() explicitly; add tool search or codemode when using indirect exposure. Each Pi session owns its connection and project root, so concurrent sessions can use different projects or endpoint URLs. This extension never starts IntelliJ.

Reference

Setting names

Setting
intellij.url
<img src="assets/banner.svg" alt="intellij" height="70">

# intellij

Expose IntelliJ's project-aware MCP tools automatically when Pi starts inside an IntelliJ project.

[Installation](../../README.md#install)

## Setup

In IntelliJ, open **Settings | Tools | MCP Server | Manual Client Configuration**.
Copy its HTTP Stream URL into Pi's existing `intellij.url` setting.

```json
{
	"intellij": {
		"url": "http://127.0.0.1:PORT/ENDPOINT"
	}
}
```

Pi reads trusted project settings first, then user settings.
Untrusted project settings are ignored.
The URL must be loopback HTTP without embedded credentials.
Invalid values produce a warning and never fall through to another source.

## Use

Pi searches upward from its current directory for nearest `.idea` directory.
When both `.idea` and valid `intellij.url` exist, it registers native `intellij` MCP server for current session.
Pi's built-in MCP support owns connection, retry, discovery, status, and `/mcp` management.
Tools use native names such as `mcp__intellij__get_project_modules` and are discovered through tool search.
Use `/mcp` to inspect, reconnect, disable, or change their exposure.
The former `/intellij` command is no longer needed.
Each IntelliJ MCP call receives detected `.idea` project root as `projectPath`.
No IntelliJ connection, config write, or IDE launch occurs without both conditions.

Requires Pi 1.2.0 or later with built-in MCP support.
SDK sessions must load `createMcpExtension()` explicitly; add tool search or codemode when using indirect exposure.
Each Pi session owns its connection and project root, so concurrent sessions can use different projects or endpoint URLs.
This extension never starts IntelliJ.

## Reference

<!-- config:start -->
### Setting names

| Setting |
| --- |
| `intellij.url` |
<!-- config:end -->