MCP server for Apollo Config Center with portal session authentication
Project description
mcp-apollo-config
MCP server for Apollo Config Center using portal username/password login, implemented with FastMCP.
Install
pip install mcp-apollo-config
Local editable install:
pip install -e .
Auth Mode
The plugin authenticates by portal session:
POST /signinwith username/password- Receives login session cookie (
SESSIONorJSESSIONID) - Uses portal management APIs under
/apps/{appId}/envs/{env}/...
No OpenAPI token is required.
Governance Mode
readonly(default): query onlyeditable: query + edit (requires--operator)
MCP Configuration
Configure the server in your MCP client with command + args:
{
"mcpServers": {
"apollo": {
"command": "mcp-apollo-config",
"args": [
"--portal-url", "http://apollo-portal.example.com",
"--username", "your.username",
"--password", "your.password",
"--governance-mode", "readonly",
"--default-app-id", "your-app-id",
"--default-env", "DEV",
"--default-cluster", "default",
"--default-namespace", "application"
]
}
}
}
Full Parameters
Required:
--portal-urlorAPOLLO_PORTAL_URL--usernameorAPOLLO_USERNAME--passwordorAPOLLO_PASSWORD
Optional:
--login-submitorAPOLLO_LOGIN_SUBMIT--governance-modeorAPOLLO_GOVERNANCE_MODE:readonly|editable--operatororAPOLLO_OPERATOR(required in editable mode)--default-app-idorAPOLLO_DEFAULT_APP_ID--default-envorAPOLLO_DEFAULT_ENV(for exampleDEV,TEST)--default-clusterorAPOLLO_DEFAULT_CLUSTER(default:default)--default-namespaceorAPOLLO_DEFAULT_NAMESPACE--timeout-msorAPOLLO_TIMEOUT_MS(default:10000)--log-levelorMCP_APOLLO_LOG_LEVEL:DEBUG|INFO|WARN|ERROR(default:WARN)--debug-httporMCP_APOLLO_DEBUG_HTTP=true
Tools
apollo_get_namespace_configs: query all key/value items under a namespace/environment/cluster with pagination controls (pageSize,maxItems).apollo_get_key: query one config key under a namespace/environment/cluster.apollo_edit_key(editable mode only): create or update one key and return the updated item.
Tests
Local tests use a mock Apollo portal server and do not require real credentials or network access.
python -m unittest discover -s tests -p "test_*.py"
Covered scenarios:
tools/listin readonly and editable modeapollo_get_keyapollo_get_namespace_configsapollo_edit_key- Portal session login + cookie flow
Notes
- The management API path includes
/envs/{env}. Set--default-envor passenvin tool arguments. - The server is built on FastMCP and runs in stdio transport mode.
- After editing a key, Apollo release may still be needed before clients see the change.
- Avoid keeping
DEBUGlogs enabled in production for long periods.
Chinese README
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file mcp_apollo_config-0.1.1.tar.gz.
File metadata
- Download URL: mcp_apollo_config-0.1.1.tar.gz
- Upload date:
- Size: 15.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d34fabba05c7857c2117465d41557d815d2c2f88b4f7fc17db7455f261b30668
|
|
| MD5 |
575b25cf155bc7c8bd59fed8d4f0307c
|
|
| BLAKE2b-256 |
b4e6dc063e6b3df0a128083fe23b39a96ddcdb83dc12595b0fd841eb1dca0526
|
File details
Details for the file mcp_apollo_config-0.1.1-py3-none-any.whl.
File metadata
- Download URL: mcp_apollo_config-0.1.1-py3-none-any.whl
- Upload date:
- Size: 12.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
57bf574305c04d7d0cf11906c14a3a378cb56ee819cb2d0d651ad2acb775084e
|
|
| MD5 |
969f3a070a7008a9fd4670b5b922e5d4
|
|
| BLAKE2b-256 |
0060dc1912be46a8a36bf2a3cf4ca9046add131f7168aff34b79bee6ebb8a883
|