Inspiration
We were inspired by a simple problem: How can we verify whether a programmer actually wrote a piece of code?
Traditional plagiarism and code-similarity tools mainly compare the code itself. But programmers have individual habits in the way they name variables, structure functions, use loops, format code, write comments, and manage complexity.
We wanted to turn these behavioral patterns into a unique Coding Fingerprint, similar to a digital identity for programming style. This idea led to StyleShield AI.
What it does
StyleShield AI analyzes a programmer's previous code samples and creates a Coding Fingerprint and Coding DNA based on their programming behavior.
When a new code submission is provided, StyleShield:
- Extracts structural and behavioral coding features
- Compares the new code with established coding patterns
- Calculates a similarity score
- Uses machine learning for prediction
- Generates Coding DNA
- Provides programming-style/personality insights
- Produces an explainable verification result
For the WebMCP Challenge, we extended StyleShield with WebMCP tools such as analyze_code, get_coding_fingerprint, and explain_verification. This allows AI agents to directly access StyleShield's analysis capabilities through structured tool calls while keeping the human involved in the final verification decision.
How we built it
We built StyleShield using Python, Flask, JavaScript, SQLite, and machine-learning techniques.
The system extracts features such as variable naming, indentation, function structure, complexity, loops, comments, and AST-based characteristics. These features are combined to create a programmer's Coding Fingerprint and Coding DNA.
We then developed a Flask API that connects the frontend to the analysis modules.
For the WebMCP extension, we used document.modelContext.registerTool() to expose StyleShield functionality as structured WebMCP tools. These tools communicate with our Flask API and return structured JSON results that an AI agent can understand and use.
Challenges we ran into
One of our biggest challenges was connecting WebMCP with our existing Flask application while keeping the existing StyleShield functionality stable.
We faced issues with asynchronous JavaScript requests, API responses, and exposing our local Flask application through a Cloudflare Quick Tunnel. At one point, the tunnel returned an HTTP 530 error, which initially looked like an application failure.
After debugging, we identified the problem as tunnel connectivity rather than our StyleShield backend. We restarted the tunnel and successfully established communication between the WebMCP layer and our Flask API.
Another challenge was representing programming style accurately. A programmer's identity cannot be determined from one feature, so we combined multiple coding characteristics to create a more meaningful fingerprint.
Accomplishments that we're proud of
We are proud that we transformed an existing programmer-code analysis concept into a WebMCP-enabled AI-assisted verification system.
Our key accomplishments include:
- Building a working Coding Fingerprint system
- Generating unique Coding DNA
- Combining multiple programming-style features
- Integrating machine-learning-based prediction
- Building an explainable verification workflow
- Successfully registering multiple WebMCP tools
- Connecting WebMCP directly to our Flask analysis backend
- Successfully receiving structured analysis results through the WebMCP-connected application
Most importantly, we learned how an existing application can be extended so that AI agents can directly use its capabilities instead of only interacting with its visual interface.
What we learned
We learned that programming style contains many subtle behavioral patterns that can be useful for identity verification.
Technically, we learned how to build modular AI applications with Flask, connect frontend tools to backend APIs, handle asynchronous requests, work with structured JSON responses, and integrate WebMCP into an existing web application.
We also learned that good human-agent interaction is not about replacing human decisions. Instead, an AI agent can gather evidence, perform analysis, and explain results while the human remains responsible for the final decision.
What's next for StyleShield AI
We plan to make StyleShield more robust and useful in real-world environments.
Future improvements include:
- More advanced behavioral and semantic code analysis
- Larger and more diverse training datasets
- Cross-language programmer fingerprinting
- Stronger confidence and explainability mechanisms
- Continuous learning from new verified code samples
- Integration with coding assessment and educational platforms
- Advanced AI-agent workflows using additional WebMCP tools
- Programmer verification history and audit trails
- Better protection against intentional style imitation
Our long-term goal is to make StyleShield a reliable programmer identity intelligence layer that can assist organizations, educators, and developers in understanding whether code is consistent with a programmer's established coding behavior.
Built With
- analysis
- api
- artificial
- ast
- cloudflare
- coding
- css
- data
- fingerprinting
- flask
- html
- intelligence
- javascript
- jinja
- learning
- machine
- python
- rest
- sqlite
- tunnel
- webmcp
Log in or sign up for Devpost to join the conversation.