- Home
- MCP servers
- CodeKarma
CodeKarma
- python
0
GitHub Stars
python
Language
5 months ago
First Indexed
2 months ago
Catalog Refreshed
Documentation & install
Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.
CodeKarma MCP Server provides production insights and code analysis by connecting to Nexus instrumentation data. It helps you analyze real production flows, identify hot methods, generate test ideas, and make data-driven decisions about your code.
How to use
You use an MCP client to connect to the MCP Server and start exploring production data. There are two primary ways to connect: a local, direct Python-based setup for development, and a remote, Docker-based setup for teams and production access. Start by running the local server for quick testing, then consider deploying a remote instance for broader collaboration. Once connected, you can discover services from your production data, inspect production usage, view call flows, and identify hot methods to optimize performance.
How to install
Prerequisites: you need Python 3.8 or newer and a Nexus service running on http://localhost:8081. You should have an instrumented Java application producing production flow data.
Local server setup (development):
./setup.sh
python3 quick_test.py
./run_server.sh
Remote server setup (recommended for teams) with Docker:
cp env-example .env
docker-compose up -d --build
./restart-server.sh
Configure the MCP client for your environment using the interactive generator.
./generate-config.sh
Two connection models you can choose from when configuring the client:
Direct connection uses a ck-domain header and connects straight to the MCP server on port 8547.
nginx proxy uses a Bearer token. nginx validates the token and adds the ck-domain header.
Configuration and usage notes
Health checks and endpoints help you verify the MCP server is responding and connected to Nexus.
Example health check and configuration can help you verify setup during development or after deployment.
Troubleshooting
If you encounter connection issues, ensure Nexus is running and accessible at the configured URL. If hot methods are not detected, confirm that your application has CPU-intensive operations and consider lowering the CPU threshold for testing.
If flow trees are empty, verify that class names exist in production data and that there is active production traffic.
If you see missing CPU annotations, ensure hot methods data is being produced by the Nexus API and that the domain routing is correctly configured.
Notes
For development, you can start with the local server, run tests with real data, and then move to a Docker-based remote server for team access.
Available tools
find_service_names
Find service names from a list of fully qualified class names visible in your IDE. Use 10-20 class names for best matching accuracy. If multiple services are found, you will be prompted to choose which service to analyze.
get_production_usage
Retrieve production usage metrics for a given service, class, and optional method, with a time window parameter.
get_production_call_flows
Analyze production call flows for a service and class, with optional method and time window to show aggregated metrics.
get_hot_methods
Identify hot methods with high CPU utilization in production, with a configurable CPU threshold.