MCP in editors and other clients
Any client that speaks MCP over Streamable HTTP can connect directly. Clients that only speak stdio can use the mcp-remote bridge (last section).
In every example, keep the key in an environment variable or a secret prompt, never in a file you commit.
Cursor
~/.cursor/mcp.json (or .cursor/mcp.json in a project)
{
"mcpServers": {
"highland": {
"url": "https://api.highlnd-intel.group/mcp",
"headers": { "Authorization": "Bearer ${env:HIGHLAND_KEY}" }
}
}
}Open Cursor Settings → MCP, check Highland is green, then ask the agent to use a tool by name.
VS Code (GitHub Copilot agent mode)
.vscode/mcp.json
{
"inputs": [
{ "type": "promptString", "id": "highland-key", "description": "Highland API key", "password": true }
],
"servers": {
"highland": {
"type": "http",
"url": "https://api.highlnd-intel.group/mcp",
"headers": { "Authorization": "Bearer ${input:highland-key}" }
}
}
}VS Code asks for the key once and stores it securely. Open Copilot Chat in Agent mode and pick the Highland tools from the tools button.
Windsurf
~/.codeium/windsurf/mcp_config.json
{
"mcpServers": {
"highland": {
"serverUrl": "https://api.highlnd-intel.group/mcp",
"headers": { "Authorization": "Bearer ${env:HIGHLAND_KEY}" }
}
}
}Codex CLI
~/.codex/config.toml
[mcp_servers.highland]
url = "https://api.highlnd-intel.group/mcp"
bearer_token_env_var = "HIGHLAND_KEY"Gemini CLI
~/.gemini/settings.json
{
"mcpServers": {
"highland": {
"httpUrl": "https://api.highlnd-intel.group/mcp",
"headers": { "Authorization": "Bearer $HIGHLAND_KEY" }
}
}
}Zed and stdio-only clients (mcp-remote bridge)
Zed settings.json
{
"context_servers": {
"highland": {
"command": {
"path": "npx",
"args": ["-y", "mcp-remote", "https://api.highlnd-intel.group/mcp", "--header", "Authorization:${HIGHLAND_AUTH}"],
"env": { "HIGHLAND_AUTH": "Bearer hk_live_YOUR_KEY" }
}
}
}
}The same command + args work in any client that launches stdio servers.
Your own code (MCP SDK)
python (mcp SDK)
# pip install mcp
import os, asyncio
from mcp import ClientSession
from mcp.client.streamable_http import streamablehttp_client
async def main():
headers = {"Authorization": f"Bearer {os.environ['HIGHLAND_KEY']}"}
async with streamablehttp_client("https://api.highlnd-intel.group/mcp", headers=headers) as (r, w, _):
async with ClientSession(r, w) as s:
await s.initialize()
tools = await s.list_tools()
print(len(tools.tools), "tools")
out = await s.call_tool("dns-lookup", {"domain": "example.com"})
print(out.structuredContent)
asyncio.run(main())typescript (@modelcontextprotocol/sdk)
// npm i @modelcontextprotocol/sdk
import { Client } from "@modelcontextprotocol/sdk/client/index.js";
import { StreamableHTTPClientTransport } from "@modelcontextprotocol/sdk/client/streamableHttp.js";
const transport = new StreamableHTTPClientTransport(new URL("https://api.highlnd-intel.group/mcp"), {
requestInit: { headers: { Authorization: `Bearer ${process.env.HIGHLAND_KEY}` } },
});
const client = new Client({ name: "my-app", version: "1.0.0" });
await client.connect(transport);
const { tools } = await client.listTools();
const out = await client.callTool({ name: "hash", arguments: { text: "hello", algorithm: "sha256" } });
console.log(tools.length, out.structuredContent);