diff --git a/include/dynamic_graph_bridge/ros_interpreter.hh b/include/dynamic_graph_bridge/ros_interpreter.hh
index 88da3286542f978259ed6cc16685f11a7901dbbc..b2877eeb1f188f0c0cf9d4512ff58a36e631ca2c 100644
--- a/include/dynamic_graph_bridge/ros_interpreter.hh
+++ b/include/dynamic_graph_bridge/ros_interpreter.hh
@@ -1,7 +1,7 @@
 #ifndef DYNAMIC_GRAPH_BRIDGE_INTERPRETER_HH
 # define DYNAMIC_GRAPH_BRIDGE_INTERPRETER_HH
 # include <ros/ros.h>
-# include <dynamic_graph_bridge/RunCommand.h>
+# include <dynamic_graph_bridge_msgs/RunCommand.h>
 # include <dynamic-graph/python/interpreter.hh>
 
 namespace dynamicgraph
@@ -16,8 +16,8 @@ namespace dynamicgraph
   {
   public:
     typedef boost::function<
-    bool (dynamic_graph_bridge::RunCommand::Request&,
-    	  dynamic_graph_bridge::RunCommand::Response&)>
+    bool (dynamic_graph_bridge_msgs::RunCommand::Request&,
+    	  dynamic_graph_bridge_msgs::RunCommand::Response&)>
     runCommandCallback_t;
 
     explicit Interpreter (ros::NodeHandle& nodeHandle);
@@ -34,8 +34,8 @@ namespace dynamicgraph
 
   protected:
     /// \brief Run a Python command and return result, stderr and stdout.
-    bool runCommandCallback (dynamic_graph_bridge::RunCommand::Request& req,
-			     dynamic_graph_bridge::RunCommand::Response& res);
+    bool runCommandCallback (dynamic_graph_bridge_msgs::RunCommand::Request& req,
+			     dynamic_graph_bridge_msgs::RunCommand::Response& res);
 
   private:
     python::Interpreter interpreter_;
diff --git a/manifest.xml b/manifest.xml
index a07cc40d6509690b1d4846be40a5b3b4db2343a0..cbf9c56155080d6978081488db063aca28c9be75 100644
--- a/manifest.xml
+++ b/manifest.xml
@@ -37,4 +37,6 @@
   <depend package="realtime_tools"/>
 
   <depend package="jrl_dynamics_urdf"/>
+
+  <depend package="dynamic_graph_bridge_msgs"/>
 </package>
diff --git a/msg/Matrix.msg b/msg/Matrix.msg
deleted file mode 100644
index 323f50b09c87b76903cf036fca05838088e9e978..0000000000000000000000000000000000000000
--- a/msg/Matrix.msg
+++ /dev/null
@@ -1,2 +0,0 @@
-float64[] data
-uint32 width
diff --git a/msg/Vector.msg b/msg/Vector.msg
deleted file mode 100644
index 922220faa2b2c8f511536b11f3068be40e6fb576..0000000000000000000000000000000000000000
--- a/msg/Vector.msg
+++ /dev/null
@@ -1 +0,0 @@
-float64[] data
diff --git a/src/ros_interpreter.cpp b/src/ros_interpreter.cpp
index 2720158e1cb9c539b4f78004ef0e587f85996ddb..4b5c528386c3dbdb5e07166b11bb693b6a7c923a 100644
--- a/src/ros_interpreter.cpp
+++ b/src/ros_interpreter.cpp
@@ -21,8 +21,8 @@ namespace dynamicgraph
 
   bool
   Interpreter::runCommandCallback
-  (dynamic_graph_bridge::RunCommand::Request& req,
-   dynamic_graph_bridge::RunCommand::Response& res)
+  (dynamic_graph_bridge_msgs::RunCommand::Request& req,
+   dynamic_graph_bridge_msgs::RunCommand::Response& res)
   {
     interpreter_.python(req.input, res.result, res.stdout, res.stderr);
     return true;
diff --git a/src/ros_publish.hxx b/src/ros_publish.hxx
index 9d28a31b31965f20477c85310c403242a7f2e9c9..34f45fce29f1e58695c820af30c9b4995d2ba840 100644
--- a/src/ros_publish.hxx
+++ b/src/ros_publish.hxx
@@ -3,8 +3,8 @@
 # include <vector>
 # include <std_msgs/Float64.h>
 
-# include "dynamic_graph_bridge/Matrix.h"
-# include "dynamic_graph_bridge/Vector.h"
+# include "dynamic_graph_bridge_msgs/Matrix.h"
+# include "dynamic_graph_bridge_msgs/Vector.h"
 
 # include "sot_to_ros.hh"
 
diff --git a/src/ros_subscribe.hxx b/src/ros_subscribe.hxx
index 3cdd85519fdac8ef0182ff4fb53b01de0f077445..12819e62bb1c9704ea8d024f806b9ff13d239b49 100644
--- a/src/ros_subscribe.hxx
+++ b/src/ros_subscribe.hxx
@@ -7,8 +7,8 @@
 # include <dynamic-graph/signal-cast-helper.h>
 # include <jrl/mal/boost.hh>
 # include <std_msgs/Float64.h>
-# include "dynamic_graph_bridge/Matrix.h"
-# include "dynamic_graph_bridge/Vector.h"
+# include "dynamic_graph_bridge_msgs/Matrix.h"
+# include "dynamic_graph_bridge_msgs/Vector.h"
 # include "ros_time.hh"
 
 namespace ml = ::maal::boost;
diff --git a/src/sot_to_ros.hh b/src/sot_to_ros.hh
index 88787895408da4c2363186a6f3eaf0ad4dd9ff51..d8a2cfab10a0163d3886b6c421b8d24fa3280581 100644
--- a/src/sot_to_ros.hh
+++ b/src/sot_to_ros.hh
@@ -8,8 +8,8 @@
 # include <jrl/mal/boost.hh>
 # include <std_msgs/Float64.h>
 # include <std_msgs/UInt32.h>
-# include "dynamic_graph_bridge/Matrix.h"
-# include "dynamic_graph_bridge/Vector.h"
+# include "dynamic_graph_bridge_msgs/Matrix.h"
+# include "dynamic_graph_bridge_msgs/Vector.h"
 
 # include "geometry_msgs/Transform.h"
 # include "geometry_msgs/TransformStamped.h"
@@ -91,8 +91,8 @@ namespace dynamicgraph
   struct SotToRos<ml::Matrix>
   {
     typedef ml::Matrix sot_t;
-    typedef dynamic_graph_bridge::Matrix ros_t;
-    typedef dynamic_graph_bridge::MatrixConstPtr ros_const_ptr_t;
+    typedef dynamic_graph_bridge_msgs::Matrix ros_t;
+    typedef dynamic_graph_bridge_msgs::MatrixConstPtr ros_const_ptr_t;
     typedef dynamicgraph::SignalTimeDependent<sot_t, int> signal_t;
     typedef dynamicgraph::SignalPtr<sot_t, int> signalIn_t;
     typedef boost::function<sot_t& (sot_t&, int)> callback_t;
@@ -112,8 +112,8 @@ namespace dynamicgraph
   struct SotToRos<ml::Vector>
   {
     typedef ml::Vector sot_t;
-    typedef dynamic_graph_bridge::Vector ros_t;
-    typedef dynamic_graph_bridge::VectorConstPtr ros_const_ptr_t;
+    typedef dynamic_graph_bridge_msgs::Vector ros_t;
+    typedef dynamic_graph_bridge_msgs::VectorConstPtr ros_const_ptr_t;
     typedef dynamicgraph::SignalTimeDependent<sot_t, int> signal_t;
     typedef dynamicgraph::SignalPtr<sot_t, int> signalIn_t;
     typedef boost::function<sot_t& (sot_t&, int)> callback_t;
diff --git a/srv/RunCommand.srv b/srv/RunCommand.srv
deleted file mode 100644
index 4207e9bbe405bb5415530cb6863a0245bd5b525f..0000000000000000000000000000000000000000
--- a/srv/RunCommand.srv
+++ /dev/null
@@ -1,5 +0,0 @@
-string input
----
-string result
-string stdout
-string stderr