other-mcp-clients.md•2.9 kB
# Using with Other MCP Clients
## MCP Inspector
Test the server with the official MCP Inspector:
```bash
# Install MCP Inspector
npm install -g @modelcontextprotocol/inspector
# Run with your server
mcp-inspector mcp-gradle-tomcat
```
## Custom Node.js Client
```javascript
import { Client } from '@modelcontextprotocol/sdk/client/index.js';
import { StdioClientTransport } from '@modelcontextprotocol/sdk/client/stdio.js';
import { spawn } from 'child_process';
// Start the MCP server
const serverProcess = spawn('mcp-gradle-tomcat', [], {
env: {
...process.env,
GRADLE_WORKING_DIR: '/path/to/your/project'
}
});
// Connect to the server
const transport = new StdioClientTransport({
reader: serverProcess.stdout,
writer: serverProcess.stdin
});
const client = new Client(
{ name: "gradle-client", version: "1.0.0" },
{ capabilities: {} }
);
await client.connect(transport);
// List available tools
const tools = await client.request(
{ method: "tools/list" },
{ tools: [] }
);
console.log('Available tools:', tools);
// Start Tomcat
const result = await client.request(
{
method: "tools/call",
params: {
name: "start_tomcat",
arguments: {}
}
},
{}
);
console.log('Start result:', result);
```
## Python Client
```python
import asyncio
import json
from mcp import ClientSession, StdioServerParameters
from mcp.client.stdio import stdio_client
async def main():
server_params = StdioServerParameters(
command="mcp-gradle-tomcat",
env={"GRADLE_WORKING_DIR": "/path/to/your/project"}
)
async with stdio_client(server_params) as (read, write):
async with ClientSession(read, write) as session:
await session.initialize()
# List tools
tools = await session.list_tools()
print("Available tools:", [tool.name for tool in tools.tools])
# Start Tomcat
result = await session.call_tool("start_tomcat", {})
print("Start result:", result.content)
if __name__ == "__main__":
asyncio.run(main())
```
## Configuration Examples
### Spring Boot Projects
```json
{
"mcpServers": {
"spring-boot": {
"command": "mcp-gradle-tomcat",
"env": {
"GRADLE_WORKING_DIR": "/path/to/spring/project",
"GRADLE_COMMAND": "bootRun",
"TOMCAT_PORT": "8080"
}
}
}
}
```
### Multi-Project Gradle Build
```json
{
"mcpServers": {
"webapp": {
"command": "mcp-gradle-tomcat",
"env": {
"GRADLE_WORKING_DIR": "/path/to/project",
"GRADLE_COMMAND": ":webapp:appRun",
"TOMCAT_PORT": "8080"
}
},
"api": {
"command": "mcp-gradle-tomcat",
"env": {
"GRADLE_WORKING_DIR": "/path/to/project",
"GRADLE_COMMAND": ":api:bootRun",
"TOMCAT_PORT": "8081"
}
}
}
}
```