{"id":12192,"name":"Nikola Dikić","description":"WooCommerce and ERP integration · Remote, worldwide","card_url":"https://nikoladikic.com/.well-known/agent-card.json","endpoint":"https://nikoladikic.com/mcp","protocol_version":"1.0","first_seen":"2026-10-10T13:44:03.591726+00:00","last_verified":"2026-10-10T16:40:13.026127+00:00","card":{"url":"https://nikoladikic.com/mcp","name":"Nikola Dikić","skills":[{"id":"svc-full-stack","name":"Full-stack development","tags":["WordPress","WooCommerce","PHP","MySQL","Laravel"],"examples":["custom wordpress development","from scratch","legacy modernisation","take over project","developer left","developer disappeared","half finished","half-finished","inherited","legacy","take over","no documentation","abandoned"],"description":"Custom WordPress and WooCommerce applications built from an empty directory, and legacy applications modernised. Markup, templates, data model, admin, integrations, testing, deployment and documentation, all by the same person."},{"id":"svc-erp-crm-integration","name":"ERP and CRM integration","tags":["NetSuite","Macolla","SAP","Acumatica","Salesforce","Microsoft Dynamics","HubSpot"],"examples":["woocommerce netsuite","erp integration","stock sync","two-way sync","governance limits","acumatica","sap","salesforce","hubspot","order push"],"description":"Two-way synchronisation between a storefront and the systems that run the business — ERP for products, stock, contract pricing, parts and orders; CRM for leads, contacts and pipeline."},{"id":"svc-subscriptions","name":"Subscriptions and recurring billing","tags":["WooCommerce Subscriptions","Paid Memberships Pro","Stripe","PayPal"],"examples":["woocommerce subscriptions","recurring billing","failed renewals","dunning","subscription migration","charged twice","renewal not processing"],"description":"Subscription systems on WooCommerce Subscriptions and Paid Memberships Pro — simple and variable subscriptions, recurring shipping, donations, gated access, wallets — and migrations of live subscribers without interrupting billing."},{"id":"svc-migrations","name":"Data and platform migrations","tags":["MySQL","PostgreSQL","MongoDB","ETL","WP-CLI"],"examples":["platform migration","database migration","sql to nosql","mongodb to mysql","wordpress migration","zero downtime","lost data"],"description":"Moving data between systems without losing any of it — relational and document databases, platform moves onto WordPress, subscriptions, products, orders, customers, content and media, with verification and zero-downtime cutover where needed."},{"id":"svc-b2b-commerce","name":"B2B and wholesale commerce","tags":["WooCommerce","B2B Suite","ERP sync"],"examples":["dealer portal","wholesale pricing","contract pricing","msrp","quantity breaks","ltl freight","sales rep ordering","tax exemption"],"description":"Dealer portals and wholesale stores on WooCommerce: contract pricing, MSRP, quantity breaks, geolocation pricing, sales rep ordering, purchase orders, tax exemption and LTL freight quoting."},{"id":"svc-lms-membership","name":"LMS, membership and credentialing","tags":["LearnDash","Moodle","WooCommerce Subscriptions","Paid Memberships Pro","SCORM"],"examples":["learndash","moodle","parent child accounts","company seats","course migration","certificates","scorm"],"description":"Course and membership platforms where the payer is often not the learner — parent and child accounts, company seat pools, instructor cohorts, credit wallets and credentialing that carries professional weight."},{"id":"svc-configurators","name":"Product configurators","tags":["WebGL","Three.js","ImageMagick","WooCommerce"],"examples":["product configurator","3d configurator","webgl","360 spinner","cylindo alternative","made to order"],"description":"Four approaches to letting a customer build a product before buying it: WebGL rendered in real time, 360 degree frame spinners, layered image compositing, and simple image swap — built into WooCommerce so the configuration becomes a priced order line."},{"id":"svc-performance","name":"Performance optimization","tags":["Query Monitor","Redis","nginx","Core Web Vitals"],"examples":["site slow","core web vitals","lcp","inp","elementor slow","slow admin","slow when logged in","ttfb","slow","sluggish","takes forever","loading slowly","slow loading","speed","speed up","wordpress speed","page speed","pagespeed","lighthouse","google speed test","high server load","cpu usage","server load","bloated","too many plugins","slow checkout","slow search","slow queries","database slow","cls","fcp","web vitals","mobile score"],"description":"Making slow sites fast — WordPress, Elementor and any codebase. Plugin and theme reduction with replacements written, database work, caching layers, asset delivery, server tuning, and Core Web Vitals measured on real user data."},{"id":"svc-security","name":"Compromised site recovery and hardening","tags":["WP-CLI","YARA","nginx","2FA"],"examples":["wordpress hacked","woocommerce hacked","malware removal","card skimmer","japanese keyword hack","site blacklisted","google warning","hacked","malware","virus","infected","defaced","spam","pharma hack","redirecting to spam","crypto miner","backdoor","brute force","wp-vcd","suspicious files","host suspended","security warning","ssl warning","not secure"],"description":"Same-day recovery for compromised WooCommerce stores — payload removed, entry vector closed, database cleaned as well as files, payment path verified — followed by hardening. Sold as a return to trading, not as a guarantee of cleanliness."},{"id":"svc-ai-development","name":"AI features and agentic development","tags":["MCP","A2A","LLM APIs","schema.org"],"examples":["mcp server","ai agent","rag","llms.txt","agent readable","ai features"],"description":"AI built into applications that already exist — assistants, extraction, classification and search grounded in the client's own data — plus agents that take actions behind an approval gate, and exposing systems to external assistants via MCP."},{"id":"svc-pmpro-migration","name":"Paid Memberships Pro to WooCommerce Subscriptions","tags":["Paid Memberships Pro","WooCommerce Subscriptions","Stripe","PayPal"],"examples":["pmpro to woocommerce","paid memberships pro migration","gateway deprecated","membership migration"],"description":"The specific migration: levels mapped to products, old data repaired first, run twice against a clone, cutover with a tested rollback, then two full billing cycles of reconciliation."},{"id":"arrange-consultation","name":"Arrange a consultation","tags":["booking","scheduling","consultation","calendar"],"examples":["book a call with Nikola next Tuesday morning","when is he free this week","arrange a consultation about our failing renewals"],"description":"Find free 45-minute slots and propose one. Proposing reserves nothing: it emails the person a confirmation link valid for thirty minutes, the slot stays open to others, and their click is what books it. Nothing here commits his calendar without a human. Free, no obligation."}],"version":"0.2.0","x-notes":["This describes a single freelance developer, not an autonomous service.","Connect the MCP endpoint above to search the services, list projects by technology, check real calendar availability, and propose a consultation.","Proposing is not booking and does not reserve the time. It emails the person a confirmation link valid for thirty minutes; only their click puts it in the calendar, and the slot stays open to others until then. That is deliberate: an agent acting on a misread instruction should cost an unwanted email, not an unwanted meeting.","Read tools carry readOnlyHint and need no confirmation. request_consultation does not, because it sends mail to a real person.","Figures come from the same store the website renders from, so answers here and answers on the site agree by construction."],"provider":{"url":"https://nikoladikic.com","organization":"Nikola Dikić"},"description":"WooCommerce and ERP integration · Remote, worldwide","capabilities":{"streaming":false,"pushNotifications":false,"stateTransitionHistory":false},"protocolVersion":"0.3.0","documentationUrl":"https://nikoladikic.com/llms.txt","defaultInputModes":["text/plain"],"defaultOutputModes":["text/plain","application/json"],"preferredTransport":"JSONRPC","supportedInterfaces":[{"url":"https://nikoladikic.com/mcp","protocolBinding":"JSONRPC","protocolVersion":"1.0"}],"additionalInterfaces":[{"url":"https://nikoladikic.com/mcp","transport":"JSONRPC"}]},"signature_status":"unsigned","signature_detail":"No card signature supplied","signature_key_url":null,"signature_checked_at":"2026-10-10T16:40:13.026127+00:00","domain_claimed_at":null,"domain_proof_checked_at":null,"source_name":"Agent Tools Catalog","source_url":"https://agent-tools.cloud","last_check":{"checked_at":"2026-10-10T16:40:13.026127+00:00","success":true,"http_status":200,"detail":"Agent Card validated"},"also_published_at":[],"history_urls":["https://nikoladikic.com/.well-known/agent-card.json"],"skills":[{"skill_id":"svc-ai-development","name":"AI features and agentic development","description":"AI built into applications that already exist — assistants, extraction, classification and search grounded in the client's own data — plus agents that take actions behind an approval gate, and exposing systems to external assistants via MCP.","tags":["MCP","A2A","LLM APIs","schema.org"],"quality_warning":false},{"skill_id":"arrange-consultation","name":"Arrange a consultation","description":"Find free 45-minute slots and propose one. Proposing reserves nothing: it emails the person a confirmation link valid for thirty minutes, the slot stays open to others, and their click is what books it. Nothing here commits his calendar without a human. Free, no obligation.","tags":["booking","scheduling","consultation","calendar"],"quality_warning":false},{"skill_id":"svc-b2b-commerce","name":"B2B and wholesale commerce","description":"Dealer portals and wholesale stores on WooCommerce: contract pricing, MSRP, quantity breaks, geolocation pricing, sales rep ordering, purchase orders, tax exemption and LTL freight quoting.","tags":["WooCommerce","B2B Suite","ERP sync"],"quality_warning":false},{"skill_id":"svc-security","name":"Compromised site recovery and hardening","description":"Same-day recovery for compromised WooCommerce stores — payload removed, entry vector closed, database cleaned as well as files, payment path verified — followed by hardening. Sold as a return to trading, not as a guarantee of cleanliness.","tags":["WP-CLI","YARA","nginx","2FA"],"quality_warning":false},{"skill_id":"svc-migrations","name":"Data and platform migrations","description":"Moving data between systems without losing any of it — relational and document databases, platform moves onto WordPress, subscriptions, products, orders, customers, content and media, with verification and zero-downtime cutover where needed.","tags":["MySQL","PostgreSQL","MongoDB","ETL","WP-CLI"],"quality_warning":false},{"skill_id":"svc-erp-crm-integration","name":"ERP and CRM integration","description":"Two-way synchronisation between a storefront and the systems that run the business — ERP for products, stock, contract pricing, parts and orders; CRM for leads, contacts and pipeline.","tags":["NetSuite","Macolla","SAP","Acumatica","Salesforce","Microsoft Dynamics","HubSpot"],"quality_warning":false},{"skill_id":"svc-full-stack","name":"Full-stack development","description":"Custom WordPress and WooCommerce applications built from an empty directory, and legacy applications modernised. Markup, templates, data model, admin, integrations, testing, deployment and documentation, all by the same person.","tags":["WordPress","WooCommerce","PHP","MySQL","Laravel"],"quality_warning":false},{"skill_id":"svc-lms-membership","name":"LMS, membership and credentialing","description":"Course and membership platforms where the payer is often not the learner — parent and child accounts, company seat pools, instructor cohorts, credit wallets and credentialing that carries professional weight.","tags":["LearnDash","Moodle","WooCommerce Subscriptions","Paid Memberships Pro","SCORM"],"quality_warning":false},{"skill_id":"svc-pmpro-migration","name":"Paid Memberships Pro to WooCommerce Subscriptions","description":"The specific migration: levels mapped to products, old data repaired first, run twice against a clone, cutover with a tested rollback, then two full billing cycles of reconciliation.","tags":["Paid Memberships Pro","WooCommerce Subscriptions","Stripe","PayPal"],"quality_warning":false},{"skill_id":"svc-performance","name":"Performance optimization","description":"Making slow sites fast — WordPress, Elementor and any codebase. Plugin and theme reduction with replacements written, database work, caching layers, asset delivery, server tuning, and Core Web Vitals measured on real user data.","tags":["Query Monitor","Redis","nginx","Core Web Vitals"],"quality_warning":false},{"skill_id":"svc-configurators","name":"Product configurators","description":"Four approaches to letting a customer build a product before buying it: WebGL rendered in real time, 360 degree frame spinners, layered image compositing, and simple image swap — built into WooCommerce so the configuration becomes a priced order line.","tags":["WebGL","Three.js","ImageMagick","WooCommerce"],"quality_warning":false},{"skill_id":"svc-subscriptions","name":"Subscriptions and recurring billing","description":"Subscription systems on WooCommerce Subscriptions and Paid Memberships Pro — simple and variable subscriptions, recurring shipping, donations, gated access, wallets — and migrations of live subscribers without interrupting billing.","tags":["WooCommerce Subscriptions","Paid Memberships Pro","Stripe","PayPal"],"quality_warning":false}],"quality_flags":["thin_description"],"check_history":{"checks":2,"passed":2},"recent_checks":[{"card_url":"https://nikoladikic.com/.well-known/agent-card.json","checked_at":"2026-10-10T16:40:13.026127+00:00","success":true,"http_status":200,"detail":"Agent Card validated"},{"card_url":"https://nikoladikic.com/.well-known/agent-card.json","checked_at":"2026-10-10T13:44:03.591726+00:00","success":true,"http_status":200,"detail":"Agent Card validated"}],"endpoint_tls_check":{"checked_at":"2026-10-10T16:40:13.026127+00:00","success":true,"detail":"Valid TLS connection to advertised endpoint host; no A2A request sent"},"protocol_check":{"checked_at":"2026-10-10T13:44:03.591726+00:00","state":"unconfirmed","http_status":200,"detail":"Advertised A2A task lookup method was not found"},"events":[],"relationships":[],"verification":{"agent_card_url":"https://nikoladikic.com/.well-known/agent-card.json","last_successful_card_check":"2026-10-10T16:40:13.026127+00:00","latest_card_check":{"checked_at":"2026-10-10T16:40:13.026127+00:00","success":true,"http_status":200,"detail":"Agent Card validated"},"signature_status":"unsigned","signature_checked_at":"2026-10-10T16:40:13.026127+00:00","task_endpoint_tested":true,"task_execution_tested":false,"endpoint_tls_checked_at":"2026-10-10T16:40:13.026127+00:00","endpoint_tls_reachable":true,"protocol_check_state":"unconfirmed","protocol_checked_at":"2026-10-10T13:44:03.591726+00:00","provider_identity_verified":false,"domain_claimed_at":null,"domain_proof_checked_at":null}}