Anthropic publishes the available environment variables, as well as the many settings you can change via JSON configs on their [Claude Code Settings](https://code.claude.com/docs/en/settings) page. This page also lists the tools that Claude Code has by default.
[Plugins](https://code.claude.com/docs/en/plugins-reference) sound like an interesting way to standardize a set of configurations or features across a user base. For example, plugins can include MCP server connections, pre- and post-tool hooks, agents, skills, slash commands, and more. A plugin is basically just a collection of configuration files, and potentially scripts for hooks.
Anthropic provides some [example plugins](https://github.com/anthropics/claude-code/tree/main/plugins) in the Claude Code repository.
[From the docs](https://code.claude.com/docs/en/mcp#environment-variable-expansion-in-mcp-json), here's how you would include a remote MCP server in a Claude Code plugin using environment variables for header authentication:
```json
{
"mcpServers": {
"api-server": {
"type": "http",
"url": "${API_BASE_URL:-https://api.example.com}/mcp",
"headers": {
"Authorization": "Bearer ${API_KEY}"
}
}
}
}
```
This configuration would reside in the `.mcp.json` file in the root of the plugin's directory, or inline in its `plugin.json`.